Revisión: 28/11/2018
Continuando con las tareas detalladas en el checklist de mantenimiento, en esta oportunidad nos vamos a enfocar en tareas semanales.
Dentro del checklist agrupamos las siguientes tareas:
Monitoreo de rendimiento en Exchange
El monitoreo proactivo incrementa las chances de identificar y resolver problemas antes de que tengan un impacto significativo en la organización. Este monitoreo tambien habilita a entender tendencias de crecimiento y de esta forma poder planificar modificaciones al hardware en uso o incrementar la cantidad de servidores.
Dentro de los componentes básicos a monitorear encontramos procesador, memoria, uso de discos y consumo de red. En adición se puede complementar con componentes específicos a Exchange.
Un tema importante en este sentido sería contar con una línea base de rendimiento, el objetivo es conocer cómo se comporta el servidor un día «normal» y luego en base a esta información, si en algún punto se presentan problemas de rendimiento tener algo con que comparar.
Este monitoreo debe ser realizado regularmente para estar al tanto de cualquier cambio.
A nivel de herramientas de monitoreo tenemos las incorporadas en el sistema, de terceros y System Center. Lo ideal sería utilizar una que sea lo más amigable posible pero puede que este no sea siempre el caso.
El Performance Monitor viene incluido en el sistema operativo por lo que sabemos que es una opción, el tema es que no necesariamente es tan simple, amigable o práctico, en particular cuando se cuenta con múltiples servidores. Más allá de esto, veamos algunos de los contadores más comunes y dentro de que umbrales esperaríamos encontrarlos:
Procesador
Processor(_Total)
- \% Processor Time ~ < 75%
- \% User Time ~ < 75%
- \% Privileged Time ~ < 75%
System
- \Processor Queue Length (all instances) < 5 (por procesador)
Acceso a disco
PhysicalDisk
- \Avg. Disk sec/Read ~ < 20 ms
- \Avg. Disk sec/Write ~ < 20 ms
- \Current disk queue length ~ < 2
Memoria RAM
Memory
- \Available Mbytes > 5%
- \% Commited Bytes in Use ~ < 80 %
Acceso a Active Directory
MSExchange ADAccess Domain Controllers(*)
- \LDAP Read Time < 50 ms
- \LDAP Search Time < 50 ms
MSExchange ADAccess Processes(*)
- \LDAP Read Time < 50 ms
- \LDAP Search Time < 50 ms
Information store y bases de datos
MSExchange Database ==> Instances(*)
- \I/O Database Reads (Attached) Average Latency < 20 ms
- \I/O Database Writes (Attached) Average Latency < 50 ms
- \I/O Log Writes Average Latency < 10 ms
MSExchangeIS Client Type
- \RPC Requests < 70
- \RPC Average Latency < 50 ms
MSExchangeIS Store(*)
- \RPC Average Latency < 50 ms
Podemos encontrar una lista más completa de contadores en el siguiente artículo de Microsoft:
En cuanto a la utilización del performance monitor, lo ideal sería generar un nuevo Data Collector Set con los contadores definidos, dejar corriendo por un período razonable de tiempo y generar un reporte, posteriormente y de forma regular repetir el proceso e ir comparando los resultados y tendencias.
Por más información sobre configuración de Data Collector Sets y Performance Monitor ver el siguiente artículo:
A continuación algunas capturas obtenidas del módulo de operaciones del curso de administración y configuración de Exchange:
Limpieza de logs de Internet Information Services
En un servidor con Exchange 2013 (multirol) o con Exchange 2016, debajo de la carpeta C:\InetPub\Logs\LogFiles encontramos 2 carpetas; W3SVC1 donde se registra información sobre el sitio web predeterminado (al cual se conectan los clientes) y W3SVC2 donde se registra información sobre el sitio web a nivel de Backend (asociado al rol de Mailbox). En caso de versiones anteriores de Exchange de forma predeterminada encontraríamos el W3SVC1.
En estas carpetas vamos a encontrar logs de Internet Information Services (logging habilitado de forma predeterminada) y con el paso del tiempo estos pueden ocupar un buen espacio, esto depende de la actividad general, si tenemos pocos usuarios o se conectan poco, los logs generados seguramente no ocupen mucho, de cualquier modo es recomendable estar al tanto de cuánto ocupan estos archivos y depurar o archivar dependiendo de la actividad y los requerimientos:
Chequeo de actualizaciones de seguridad
En este sentido podemos utilizar Windows Update, WSUS o algún otro mecanismo.
Lo importante es estar al día con las actualizaciones, una falta a este nivel puede derivar en impacto en el servicio. Claro que sin el testing apropiado la aplicación de cualquier tipo de parche puede ser riesgosa. Si contamos con múltiples servidores podemos realizar la aplicación de forma paulatina de tal forma de controlar el eventual impacto. Si se cuenta con un ambiente de testing mejor.
Análisis de mejores prácticas
Para esto vamos a utilizar la herramienta Office 365 Best Practices Analyzer for Exchange Server 2013 (al momento no hay una para 2016).
En el siguiente artículo se encuentra el detalle del procedimiento de instalación y ejecución:
En caso de utilizar una versión anterior es posible utilizar el BPA incluido en el toolbox de la Exchange Management Console.
La idea es ejecutar la herramienta cuando el sistema funciona correctamente, analizar el resultado, validar si los errores y advertencias requieren profundizar y posteriormente volver a ejecutar la herramienta (en este caso semanalmente) y ver si aparecen nuevos eventos o situaciones que ameriten algún tipo de acción.
Chequeo de tamaño de bases
En cuanto al chequeo de tamaño de las bases de datos, el objetivo es ir tomando nota semanalmente del incremento del archivo EDB (considerando también el espacio en blanco como vimos en el artículo anterior) y mediante este seguimiento poder anticipar si es necesario algún tipo de ampliación a nivel de unidades de disco.
En complemento es recomendable hacer seguimiento de la cantidad de buzones por base de datos.
Para ver la cantidad de buzones en una base de datos una opción sería la siguiente:
Get-Mailbox –Database nombre_base | Measure
Nota: Si se recibe una advertencia de que existen más buzones agregar el parámetro -ResultSize: Get-Mailbox -ResultSize unlimited
Para ver la cantidad de buzones de todas las bases de datos:
Get-Mailbox -ResultSize unlimited | Group Database | FT name,count
En el próximo artículo vamos a entrar en las tareas mensuales asociadas al mantenimiento de Exchange.
Por más información teórica y práctica sobre mantenimiento de Exchange Server, ver el siguiente recurso para miembros VIP del sitio (videos de entrenamiento):
Fernando Selvaggio says
como estas Daniel, Tenes o explicas en algún articulo sobre los logs que se crean en la carpeta de las bases de datos…acumulan gigas los txt de 1mb… como y de que manera se pueden eliminar o que el mismo server los elimine de manera automática, recuerdo que eso se depuraba creando el backup de exchange, pero en la versión 2019 y 2016 eso mismo no lo hace muchas gracias por la data
Daniel Núñez Banega says
Buenas Fernando, la idea es que se depuren dentro del proceso de backup (o como alternativa en algunos casos con circular logging). Te dejo un artículo donde se toca el tema:
https://aprendiendoexchange.com/pr1-preguntas-respuestas-exchange