Mantenimiento de Exchange Server: Tareas Diarias

Revisión: 28/11/2018


Siguiendo con el checklist de tareas de mantenimiento para Microsoft Exchange, en esta oportunidad vamos a hacer foco en las actividades que usualmente incluiríamos dentro de las tareas diarias.

En este sentido en el checklist agrupamos las siguientes tareas:
Tareas de mantenimiento en Exchange


Estado de servicios de Exchange

Lo más sencillo para revisar la situación a nivel de servicios es ejecutar el siguiente comando desde el shell de Exchange:

Test-ServiceHealth

Revisión de servicios de Exchange

Para revisar el estado de un servidor específico:

Test-ServiceHealth –server nombre_servidor

Revisión servicios de Exchange

Para revisar el estado de todos los servidores:

$servidores = Get-ExchangeServer

foreach ($servidor in $servidores) {Write-Host “Estado de servicios en servidor: $servidor” –ForeGroundColor Green ; Test-ServiceHealth –server $servidor}

Revisión servicios de servidor Exchange

Como alternativa siempre podemos ir a la consola de servicios y revisar servidor por servidor pero esto puede resultar poco práctico.


Chequeo de base de datos / replicación

Revisar si las bases se encuentran montadas, para esto podemos ejecutar:

Get-MailboxDatabase –Status | FT name, mounted

Ver bases montadas en Exchange

En caso de que la base este en DAG revisar el estado de la replicación (en este caso chequea localmente):

Get-MailboxDatabaseCopyStatus

Estado de replicación de bases en Exchange

Para ver réplicas en otros servidores:

Get-MailboxDatabaseCopyStatus –Server nombre_servidor

Para ver réplicas en todos los servidores:

Get-MailboxDatabaseCopyStatus *

En complemento también se podría usar Test-ReplicationHealth, pero en principio si todo figura ok no debería ser necesario. Más info sobre este comando en el siguiente artículo:

Ver tamaño de archivo EDB, para esto debemos ir a la ruta donde se encuentra alojada la base, para obtener esta información ejecutar:

Get-MailboxDatabase | fl name,edbfilepath

Ver ubicación de archivos de base de datos

Por último, ver espacio en blanco dentro de la base, acá la idea es la siguiente, por más que se depure información de buzones, el archivo EDB de la base no va a disminuir en tamaño, sin embargo luego de actividades internas de mantenimiento se genera un espacio en blanco reutilizable. En este caso, por ejemplo si se eliminan 10GB de datos de una base cuyo archivo EDB tiene un tamaño total de 100GB, en lugar de bajar el tamaño del archivo a 90GB va a quedar a disposición este espacio en blanco y tendríamos unos 10GB de espacio utilizable antes de que este archivo crezca en tamaño:

Get-MailboxDatabase –Status | Ft Name, AvailableNewMailboxSpace

Ver espacio en blanco dentro de una base de datos de Exchange


Chequeo de unidades

En cuanto al chequeo de unidades es conveniente revisar el espacio en las unidades de sistema, bases y logs.

En adición hacer seguimiento como para tener una idea de la variación a este nivel.


Colas de correo

A nivel de colas de correo uno esperaría que estas se liberen rápidamente aunque podría ser normal encontrar colas en estado de reintento (retry), por ejemplo cuando los usuarios envían correo a dominios que no existen.

Para ver las colas de correo en un servidor con Exchange podemos ejecutar:

Get-Queue

Ver colas de correo en Exchange

Para ver las colas en todos los servidores de transporte:

Get-TransportServer | Get-Queue


Revisión de event viewer

Estar al tanto de los eventos registrados en el visor de sucesos es importante no solo con el objetivo de resolver un tema que se presente sino que para estar familiarizados con los distintos eventos que se generan a diario en el servidor. De esta manera el día que se presenten problemas que tengan algún tipo de impacto en la plataforma vamos a poner especial foco en eventos inusuales.

Especificamente filtrar eventos críticos, de error y advertencia en el log de aplicación:

Mantenimiento de Exchange - Filtrar eventos en event viewer

Hacer clic en Filter Current Log y seleccionar Critical, Error, Warning:

Mantenimiento de Exchange - Filtrar eventos de error en event viewer

Mantenimiento de Exchange - Eventos de error

En caso de que se presenten problemas reales podemos incrementar el nivel de logging de tal forma de obtener más información y comenzar con el proceso de troubleshooting.


Revisión de respaldos

Independientemente de los distintos procesos asociados a los respaldos del correo es importante revisar a diario (dependiendo de la frecuencia de los respaldos) que la base de datos muestre la fecha del último backup completo. Si el backup completo no corre exitosamente podríamos enterarnos el día que la unidad de logs se quede sin espacio y en consecuencia se desmonten las bases dejando a todos los usuarios sin correo. Tener en cuenta que el backup completo es el que depura logs (o el incremental, dependiendo de la solución y estrategia de respaldos).

Para ver la fecha del último respaldo full ejecutar:

Get-MailboxDatabase –Status | FT Name,LastFullBackup

Ver información de respaldos en Exchange

Por info sobre como respaldar las bases en Exchange 2013 / 2016 con Windows Server Backup ver el siguiente artículo:


Actualización de antivirus

En este caso tenemos 2 tipos de antivirus que podrían estar instalados en Exchange; el del sistema de archivos, genérico el cual debería contar con excepciones específicas para Exchange y por otro lado antivirus específico a nivel de correo. En ambos casos debemos asegurarnos de que se encuentren actualizados a todo nivel.


En el próximo artículo entramos en el detalle de las tareas semanales.


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): 


About Daniel Núñez Banega

Consultor IT especializado en Microsoft Exchange, Active Directory y Microsoft 365.
Principales Certificaciones: Microsoft Certified Trainer | Microsoft Certified Solutions Expert | Microsoft Certified Systems Engineer | Microsoft Certified Systems Administrator | Microsoft Certified IT Professional | Microsoft Certified Technology Specialist | Microsoft 365 Certified: Enterprise Administrator Expert | Microsoft 365 Certified: Security Administrator Associate | Microsoft Certified: Cybersecurity Architect Expert | Comptia Pentest+ | EC-Council Certified Ethical Hacker Master

Reader Interactions

Comments

    • Daniel Núñez Banega says

      Hola Luis, no tengo ninguna recomendación en particular mientras sea para la versión específica de Exchange. En cuanto al AV de sistema archivos lo más importante es que tenga correctamente configurada las excepciones para Exchange.

      saludos

  1. Kant says

    Increíble ! Un gusto leerte y aprender de tus conocimientos!
    A parte del blog tiene algún sitio más donde publiques cosas? Cada cosa que leo es breve, concisa e interesante

    • Daniel Núñez Banega says

      Gracias por tus comentarios Kant.
      Por el momento solo en el blog y el armado de cursos en la plataforma de capacitación.

      saludos

  2. Daniel Castro says

    Hablando de monitoreo de bases de datos y en especifico de los comandos Get-MailboxDatabase | fl name,edbfilepath y Get-MailboxDatabase –Status | Ft Name, AvailableNewMailboxSpace
    existe alguno para saber la ruta de los logs de las bases de datos y el especio que tenemos en cada una de ellas?

    • Daniel Núñez Banega says

      Hola Daniel, por ejemplo para ver la ruta de los logs y del EDB ejecutas:
      Get-MailboxDatabase | FL Name,EDBFilePath,LogFolderPath

      Respecto a conocer el espacio libre en una unidad, no tenemos un comando específico de Exchange pero podes usar el cmdlet GET-WMIObject:
      $servidor = «servidor1»
      $unidades = get-wmiobject -computer $servidor -query «Select * from win32_logicaldisk where DriveType=3»
      foreach($unidad in $unidades) {$dLetter = $unidad.DeviceID ; $fSpace = [math]::round(($unidad.FreeSpace/1GB),2); write-host «$dletter $fspace GB»}

  3. Mario Simijaca says

    Buenas Tardes Daniel.

    Cada Articulo que publica es excelente, facil de enetnder y muy conciso.

    Me gustaria saber que tan buena practica es mantener balanceadas las BD en un DAG de 2 nodos, yo lo hacia habitualmente pero recibi una nueva plataforma y el administrador me dijo que debia dejar las BD activas en un solo nodo, considero que es mejor balancearlas, pero a ciencia cierta no se si es una buena practica?

    Gracias por sus comentarios y continuo leyendo todas sus publicaciones.

    • Daniel Núñez Banega says

      Hola Mario, gracias por el comentario.

      Esto depende de varios factores. He visto en clientes que por limitantes con la solución de respaldos siempre tengan que respaldar el nodo con las bases activas y por este motivo siempre dejen las bases en un mismo servidor.

      Si uno sigue las mejores prácticas lo ideal sería distribuir las bases de datos de la manera más simétrica posible y que bajo un escenario normal las bases esten activas en distintos nodos pero dimensionados para soportar la carga frente a una eventualidad.

      En definitiva, lo ideal sería tener las bases balanceadas o al menos no estar limitado en este sentido.

      saludos

  4. Richard Molina says

    Excelente temas gracias por compartir.
    Tengo una pregunta, tengo exchange 2016 std y en las siguiente ruta (C:\Program Files\Microsoft\Exchange Server\V15\Mailbox\Mailbox Database 0254219350) tengo una gran cantidad de archivos txt que me quita espacio en disco. yo movi la base de datos a otro disco con mayor capacidad pero los archivos txt se siguen generando en el disco C:\
    Me gustaria mucho que me guiaras de que hacer con estos archivos.
    Muchas Gracias

  5. gustavo garcia says

    Buena tarde gracias por compartir tu experiencia en estos articulos, podrias decirme si hay alguna herramienta que nos de, ya sea en graficas o numeros un reporte del uso del buzon de cada usuario. Por ejemplo, cuantos correos recibio o envio en 1 dia, 1 semana, 1 mes etc.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *