Exchange Server Active Manager
Microsoft Exchange Server incluye un componente denominado Active Manager que administra la plataforma de alta disponibilidad que incluye el grupo de disponibilidad de base de datos (DAG) y las copias de base de datos de buzones. Active Manager se ejecuta dentro del servicio de replicación de Microsoft Exchange (MSExchangeRepl.exe) en todos los servidores de buzones. En los servidores de buzones que no son miembros de un DAG existe un único rol de Active Manager: Active Manager independiente.
En los servidores que pertenecen a un DAG, hay dos roles de Active Manager: Active Manager principal (PAM) y Active Manager en espera (SAM). PAM es el rol de Active Manager de un DAG que decide qué copias serán activas y pasivas. PAM es el responsable de obtener las notificaciones de cambio de topología y de reaccionar ante los errores de servidor. El miembro de DAG que tenga el rol de PAM siempre será el propietario actual del recurso de cuórum de clúster (el grupo de clúster predeterminado). Si el servidor propietario del recurso de cuórum de clúster produce errores, el rol de PAM se moverá automáticamente a un servidor válido que tomará la propiedad del recurso de cuórum de clúster. Además, si necesita dejar sin conexión el servidor que hospeda el recurso de cuórum de clúster para realizar operaciones de mantenimiento o una actualización, primero tiene que mover el PAM a otro servidor del DAG. El PAM controla todos los movimientos de las designaciones activas entre las copias de una base de datos. (Solo una copia puede estar activa en cualquier momento especificado y esa copia puede montarse o desmontarse). Pam también realiza las funciones del rol SAM en el sistema local (detectando errores de la base de datos local y del almacén de información local).
SAM proporciona información acerca del servidor que hospeda la copia activa de una base de datos de buzones de correo para otros componentes de Exchange que ejecutan un componente de cliente de Active Manager (por ejemplo, servicios de acceso de cliente o de transporte). El SAM detecta los errores de bases de datos locales y el almacén de información local. Reacciona a los errores solicitando al PAM que inicie un proceso de conmutación por error (si se ha replicado la base de datos). Un SAM no determina el destino de una conmutación por error ni actualiza el estado de ubicación de una base de datos en el PAM. Obtendrá acceso al estado de ubicación de la copia de base de datos activa para responder a las consultas que recibe sobre la copia activa de la base de datos.
Nota:
Exchange Server no es una aplicación en clúster. En lugar de ello, utiliza las funciones de la biblioteca de clústeres implementadas en clusapi.dll para clústeres, grupos, redes de clústeres (latentes), administración de nodos, registro de clústeres y varias funciones de códigos de control. Además, Active Manager almacena la información actual de la base de datos de buzones de correo (por ejemplo, datos activos y pasivos, y datos montados) en la base de datos de clúster (también conocida como registro de clústeres). Aunque la información se almacena directamente en la base de datos de clúster, ningún otro componente tiene acceso directo a ésta.
En Exchange Server, el servicio replicación de Microsoft Exchange supervisa periódicamente el estado de todas las bases de datos montadas. También supervisa el Motor de almacenamiento extensible (ESE) para detectar errores o problemas de E/S. Cuando el servicio encuentra un error, lo notifica a Active Manager. Después, Active Manager determina qué copia de base de datos tiene que montar y lo que necesita para hacerlo. Además, realiza un seguimiento de la copia activa de una base de datos de buzones de correo (basada en la última copia montada de la base de datos) y ofrece información sobre los resultados de seguimiento a los servicios de acceso de cliente en el servidor de buzones donde está conectado el cliente.
Mejor selección de copia
Cuando se produce un error que impide el acceso a la copia activa de una base de datos de buzones de correo replicada, Active Manager selecciona la mejor copia pasiva posible de la base de datos afectada para activarla. Este proceso se conoce como la mejor selección de copia (BCS) en versiones anteriores de Exchange, y en Exchange 2016 y Exchange 2019 se conoce como mejor selección de copia y servidor (BCSS). El proceso general se produce en el orden siguiente:
La función de disponibilidad administrada o Active Manager detecta un error, o bien un administrador inicia un cambio sin destino.
PAM ejecuta el algoritmo interno BCSS.
Se lleva a cabo un proceso llamado intentar copia de los últimos registros (ACLL), que intenta copiar los archivos de registro faltantes del servidor que hospedaba la copia de la base de datos activa antes de que se produjera el error o el cambio.
Una vez que se completa el proceso ACLL, el valor de AutoDatabaseMountDial para los servidores de buzones de correo que hospedan las copias de la base de datos se compara con la longitud de cola de copia de la base de datos que se activa. Llegados a este punto, existen dos posibilidades:
El número de archivos de registro que faltan es menor o igual que el valor de AutoDatabaseMountDial, en cuyo caso se realiza el paso 5.
El número de archivos de registro que faltan es mayor que el valor de AutoDatabaseMountDial, en cuyo caso Active Manager tratará de activar la mejor copia siguiente disponible, si existe.
PAM emite una solicitud de montaje para el Almacén de información de Microsoft Exchange mediante una llamada de procedimiento remoto (RPC). Llegados a este punto, existen dos posibilidades:
Se monta la base de datos y pasa a estar disponible para los clientes.
No se monta la base de datos y el PAM realiza los pasos 3 y 4 en la siguiente mejor copia (si hay alguna disponible).
En versiones anteriores de Exchange, el proceso BCS evaluó varios aspectos de cada copia de base de datos para determinar la mejor copia que se va a activar. Estos incluían:
Copiar longitud de cola
Repetir longitud de cola
Estado de la base de datos
Estado del índice de contenido
En Exchange Server, Active Manager se ejecuta a través de todas las mismas comprobaciones y fases de BCS, pero ahora también incluye el uso de una restricción del orden decreciente de los estados de mantenimiento. En concreto, BCSS incluye varias comprobaciones de estado nuevas que forman parte de los componentes integrados de supervisión de disponibilidad administrada en Exchange Server. Existen cuatro nuevas comprobaciones adicionales que realiza Active Manager (se indican por orden de ejecución):
Todo correcto: busca un servidor que hospede una copia de la base de datos afectada que tenga todos los componentes de supervisión en un estado correcto.
Hasta normal correcto: comprueba si un servidor hospeda una copia de la base de datos afectada que tiene todos los componentes de supervisión con prioridad normal en un estado correcto.
Todo mejor que origen: busca un servidor que hospeda una copia de la base de datos afectada que tiene componentes de supervisión en un estado mejor que el servidor actual que hospeda la copia afectada.
Igual que origen: busca un servidor que hospeda una copia de la base de datos afectada que tiene componentes de supervisión en un estado que es el mismo que el servidor actual que hospeda la copia afectada.
Si se invoca a BCSS como resultado de una conmutación por error desencadenada por un componente de supervisión (por ejemplo, por un respondedor de conmutación por error), se aplica una restricción obligatoria adicional donde el estado del componente del servidor de destino tenga que ser mejor que el servidor donde se produjo la conmutación por error. Por ejemplo, si un error de Microsoft Office Outlook Web App desencadena una conmutación por error por un respondedor de conmutación por error, BCSS tendrá que seleccionar un servidor que hospede una copia de la base de datos afectada donde Outlook en la web tenga un estado correcto.
Proceso de mejor selección de copia
En relación con los errores de base de datos (no errores de protocolo), Active Manager inicia el proceso de selección de la mejor copia creando una lista de copias de bases de datos que son posibles candidatas para la activación. Las copias de bases de datos que sean inaccesibles o que estén bloqueadas de forma administrativa para la activación se omitirán y no se usarán durante el proceso de selección. El orden de la lista depende del valor de AutoDatabaseMountDial:
Si AutoDatabaseMountDial está configurado con cualquier valor distinto
Lossless
de en todos los servidores que hospedan una copia de la base de datos, Active Manager ordena la lista resultante con la longitud de la cola de copia como clave principal. El cálculo se basa en LastLogInspected (desde el punto de vista de la copia), por lo que la lista de posibles copias se ordenará por el valor más alto para LastLogInspected (que será la copia con la longitud de copia de cola más baja). Si es necesario, Active Manager ordena la lista una segunda vez y usa el valor de preferencias de activación como clave secundaria para romper cualquier condición de unión en la que dos o más copias pasivas tengan la misma longitud de cola de copia. La copia con el valor de preferencia de activación más bajo tiene la máxima prioridad en la lista.Si AutoDatabaseMountDial está configurado con un valor de
Lossless
en cualquier servidor que hospeda una copia de la base de datos, Active Manager ordena la lista resultante en orden ascendente utilizando el valor de la preferencia de activación como clave principal. Además, cuando un administrador ejecuta un servidor sin pérdida o un cambio de base de datos sin especificar un destino, Active Manager también ordena la lista resultante en orden ascendente tomando el valor de referencia de activación como clave principal.
A continuación, Active Manager intenta localizar una copia de la base de datos de buzones en la lista cuyo estado sea Healthy, DisconnectedAndHealthy, DisconnectedAndResynchronizing o SeedingSource y evalúa el potencial de activación de cada una de las copias de la lista mediante un conjunto ordenado de diez criterios. Active Manager determina si alguno de las copias candidatas para la activación cumple el primer conjunto de criterios:
Tiene un índice de contenido con un estado Correcto.
Tiene una longitud de la cola de copia inferior a 10 archivos de registro.
Tiene una longitud de la cola de reproducción inferior a 50 archivos de registro.
Si ninguna de las copias de bases de datos cumple el primer conjunto de criterios, Active Manager intentará buscar una copia de base de datos que cumpla el segundo conjunto de criterios:
Tiene un índice de contenido con un estado de rastreo.
Tiene una longitud de la cola de copia inferior a 10 archivos de registro.
Tiene una longitud de la cola de reproducción inferior a 50 archivos de registro.
Si ninguna de las copias de bases de datos cumple el segundo conjunto de criterios, Active Manager intentará buscar una copia de base de datos que cumpla el tercer conjunto de criterios:
Tiene un índice de contenido con un estado Correcto.
Tiene una longitud de la cola de reproducción inferior a 50 archivos de registro.
Si ninguna de las copias de bases de datos cumple el tercer conjunto de criterios, Active Manager intentará buscar una copia de base de datos que cumpla el cuarto conjunto de criterios:
Tiene un índice de contenido con un estado de rastreo.
Tiene una longitud de la cola de reproducción inferior a 50 archivos de registro.
Si ninguna de las copias de bases de datos cumple el cuarto conjunto de criterios, Active Manager intentará buscar una copia de base de datos que cumpla el quinto conjunto de criterios:
- Tiene una longitud de la cola de reproducción inferior a 50 archivos de registro.
Si ninguna de las copias de bases de datos cumple el quinto conjunto de criterios, Active Manager intentará buscar una copia de base de datos que cumpla el sexto conjunto de criterios:
Tiene un índice de contenido con un estado Correcto.
Tiene una longitud de la cola de copia inferior a 10 archivos de registro.
Si ninguna de las copias de bases de datos cumple el sexto conjunto de criterios, Active Manager intentará buscar una copia de base de datos que cumpla el séptimo conjunto de criterios:
Tiene un índice de contenido con un estado de rastreo.
Tiene una longitud de la cola de copia inferior a 10 archivos de registro.
Si ninguna de las copias de bases de datos cumple el séptimo conjunto de criterios, Active Manager intentará buscar una copia de base de datos que cumpla el octavo conjunto de criterios:
- Tiene un índice de contenido con un estado Correcto.
Si ninguna de las copias de bases de datos cumple el octavo conjunto de criterios, Active Manager intentará buscar una copia de base de datos que cumpla el noveno conjunto de criterios:
- Tiene un índice de contenido con un estado de rastreo.
Si ninguna de las copias de bases de datos cumple el noveno conjunto de criterios, Active Manager intentará activar cualquier copia de base de datos que tenga el estado Healthy, DisconnectedAndHealthy, DisconnectedAndResynchronizing o SeedingSource (el décimo conjunto de criterios). Si no encuentra ninguna copia de base de datos que cumpla el décimo conjunto de criterios, no podrá activar automáticamente ninguna copia de base de datos.
Después de encontrar una o más copias que cumplan uno o más conjuntos de criterios, el proceso ACLL copia los archivos de registro del origen original a la nueva posible copia activa. Después de completar el proceso ACLL, el PAM emite una solicitud de montaje y se monta la base de datos (que pasa a estar disponible para los clientes), o bien no se monta la base de datos y el PAM busca la siguiente mejor copia (si hay alguna disponible).