Exchange 2013 aparece como Unhealthy!

Hola a tod@s!

Estamos casi despidiendo el año pero no queríamos cerrar el año sin hablar un poco más de las nuevas funcionalidades que tenemos en Exchange 2013. Hoy vamos a contaros un caso concreto relativo a las funciones de "Managed Availability". Esta nueva funcionalidad nos proporciona una monitorización exhaustiva de nuestros servidores. Está diseñado para detectar problemas y corregirlos tan pronto como sea posible. En el siguiente enlace tenéis más detalles sobre su funcionamiento, configuración y demás aspectos:

Managed Availability
https://technet.microsoft.com/en-us/library/dn482056(v=exchg.150).aspx

En muchas ocasiones podemos encontrarnos casos en los que un servidor tiene alguno de sus monitores en un estado "unhealthy". Para revisar el estado podéis ejecutar los siguientes comandos:

Get-ExchangeServer | Get-ServerHealth -HaImpactingOnly | where{$_.AlertValue -like "*unHealthy*"} | Ft

Get-ServerHealth -identity ServerName -HaImpactingOnly | where{$_.AlertValue -like "*unhealthy*"} | Ft –auto

Como habéis visto en el enlace anterior Managed Availability utiliza una serie de buzones para realizar las comprobaciones. Si con los comandos mencionados antes vemos algún servidor que aparece como unhealthy una de las primeras tareas que debemos hacer es comprobar que los buzones de monitorización estén en un estado correcto. Podéis obtener un listado de los buzones lanzando el siguiente cmdlet:

Get-Mailbox -Monitoring

En la salida verificar si tenemos el siguiente error para alguno de los buzones:

The object domain/Microsoft Exchange System Objects/Monitoring Mailboxes/HealthMailboxGUID has been corrupted, and it's in an inconsistent state. The following validation errors happened:
WARNING: Database is mandatory on UserMailbox

Normalmente tendremos este tipo de situaciones tras eliminar alguna base de datos sin haber movido los buzones de monitorización a otra base de datos de forma previa. Para corregir este error simplemente necesitaremos eliminar dichos buzones y posteriormente reiniciar el servicio Microsoft Exchange Health Manager. En caso de que se eliminen buzones que no presentaban problemas de forma accidental al reiniciar el servicio Exchange volverá a crear los buzones que pueda necesitar.

También comentar que es importante no aplicar ninguna política sobre dichas cuentas o sobre la OU en la que se encuentran relativa a las contraseñas. Esto puede generar que las cuentas queden bloqueadas y como consecuencia la monitorización reporte errores y los servidores Exchange 2013 aparezcan como Unhealthy. Podéis identificar este tipo de problemas a través de los logs de ActiveMonitoring y ManagedAvailability localizados dentro del visor de eventos, en "Applications and Services Logs\Microsoft\Exchange". Dentro de dichos logs podéis localizar errores del tipo "Access denied", 401, o similares. En los logs de IIS también podéis encontrar errores como el siguiente en alguna de las pruebas:

2014-10-12 08:23:41 ::1 GET /Microsoft-Server-ActiveSync/default.eas &CorrelationID=<empty>;&cafeReqId=9a36be78-628da-58ae-2596-e2594f4d5faa; <443 HealthMailboxguid0domain.com> ::1 AMProbe/Local/ClientAccess - 401 1 1909 0

Revisando el "Substatos Error Code", 1909, podemos ver que dicho error se traduce de la siguiente forma:

# for decimal 1909 / hex 0x775
  ERROR_ACCOUNT_LOCKED_OUT winerror.h
# The referenced account is currently locked out and may not
# be logged on to.

Esperamos que os sea de gran utilidad! Si os resulta útil/interesante avisarnos para ir publicando más información s moobre esta funcionalidad.

Que paséis unas felices fiestas y tengáis un gran año 2015!

Saludos,
Pablo