Continuando con la configuración de DAG, en esta entrada vamos a ver cómo configurar la réplica de una base de datos en otro servidor.
Escenario de punto de partida
El escenario incluye un DAG de Exchange compuesto por 2 servidores con la base de datos predeterminada sin replicar:
Escenario objetivo
El objetivo es configurar una réplica de cada base de datos y de este modo dejar una copia activa y otra pasiva en cada uno de los nodos:
Ubicación de bases de datos
En cada servidor que se vaya a alojar una réplica de base de datos es necesario verificar que cuente con las unidades necesarias, cuando se agrega una copia de base de datos no se especifica la ruta donde almacenar base y logs, sino que se utiliza la misma en cada nodo.
Si por ejemplo la DB1 se encuentra en la unidad “E:” de Mail01 (ex2013 en las imágenes) y deseo agregar una réplica en Mail02, es necesario que este cuente con una unidad “E:” antes de configurar la réplica.
Para verificar la ruta de la base y logs podemos ejecutar el comando Get-MailboxDatabase y ver las propiedades EDBFilePath y LogFolderPath:
Get-MailboxDatabase | fl edbfilepath,logfolderpath
Antes de proceder vamos a cambiar la ubicación de bases de datos y logs de transacciones, en adición vamos a modificar el nombre para facilitar la administración, esto es más sencillo si se hace antes de configurar la replicación, por lo que vamos a seguir el procedimiento detallado en los siguientes artículos:
- Cómo mover una base de datos en Exchange 2013 / 2016
- Cómo cambiar el nombre de una base de datos en Exchange 2013 / 2016
A continuación la configuración con los cambios ya realizados:
Get-MailboxDatabase | ft name, edbfilepath, logfolderpath, server
Cómo agregar una réplica de base de datos en Exchange 2013 / 2016?
Para agregar una copia de base de datos en otro servidor ir al Exchange Admin Center, clic en Servers –> Databases. Seleccionar la base de datos que queremos replicar, en este caso DB1 y hacer clic en el icono “…”. Seleccionar “Add Database copy”.
Hacer clic en Browse y seleccionar el servidor con el rol de Mailbox Server donde queremos replicar la base de datos (Mail02):
De forma predeterminada, donde creamos la base de datos tiene una preferencia de activación de 1 y esta se va incrementando en cada servidor que agregamos una réplica. Esto es configurable, pero la idea detrás de este número es indicar donde sería deseable tener la base de datos montada (servidor con menor preferencia).
Si bien tenemos opciones adicionales por ejemplo retraso en la aplicación de logs o posponer el “seed” (sembrado) inicial de la base de datos, en este caso no sería requerido por lo que podemos avanzar y guardar los cambios.
La segunda réplica la vamos a configurar mediante el shell, es decir agregar una copia de la base DB2 en el servidor Mail01 (Ex2013):
Add-MailboxDatabaseCopy –identity DB2 –MailboxServer Mail01
Por cuestiones de optimización de memoria debemos reiniciar el Information Store (esto desmonta todas las bases desconectando a los usuarios en el proceso):
Restart-Service MSExchangeIS
Una vez finalizada la replicación (lo que varía en función al tamaño de la base), podemos confirmar el estado utilizando el comando Get-MailboxDatabaseCopyStatus. En el servidor donde se encuentra la copia Activa veremos “Mounted” mientras que en donde se encuentra la réplica en estado pasivo veremos “Healthy”.
Get-MailboxDatabaseCopyStatus
Get-MailboxDatabaseCopyStatus –server Mail01
Desde el EAC, en Databases pueden ver en que servidores existe una copia de la base, en cual se encuentra montada, cola de logs por replicar y estado de indice:
En el próximo artículo vamos a ver diferencias entre failover / switchover y como activar una base de datos de Exchange 2013 / 2016 en DAG en otro servidor.
Por más información teórica y práctica sobre Alta Disponibilidad en Exchange,ver el siguiente recurso para miembros VIP del sitio (videos de entrenamiento):
JavierTI says
Hola Daniel,
Felicitaciones por el buen post.
He seguido tus procedimientos y hasta aquí todo bien. pero al ejecutar el script de replicacion me muestra el siguiente error:
***ADVERTENCIA: No se pudo comunicar con el servicio de replicación de Microsoft Exchange en el servidor «srvmail.***.local» para recoger nuevos cambios de configuración de la base de datos «DB2». Asegúrese de que el servicio se esté ejecutando y que tenga conexión a la red. Error: No se pudo realizar una operación administrativa del lado servidor. Error en la operación con el mensaje: Error 0x71a (Se ha cancelado la llamada a procedimiento remoto) from cli_RpcsNotifyChangedReplayConfiguration***
Lo raro es que la replica si se realiza, entonces que debo tener en cuenta para validar que Exchange este consistente.
Gracias.