Where Are You Coming From Today?
Follow us on:
por Daniel Seveso
Continuando mi artículo anterior Implementando DAG en Exchange 2010 (Parte I), tenemos dos servidores de Exchange 2010 instalados, cada uno con los roles de HUB, CAS y Mailbox Server.
En este punto es conveniente crear un usuario en cada base de datos y comprobar que los mensajes fluyen correctamente entre los servidores.
También confirmar que los servidores se comuniquen por ambas tarjetas de red LAN y REPL.
Como ven no hay DAG definidos aún:
Las bases de datos están en su ubicación y nombres por default:
C:\Program Files\Microsoft\Exchange Server\V14\Mailbox\Mailbox Database nnnnnnnnnn
Comenzaré moviendo la base de datos de cada servidor a una de las unidades creadas a tales efectos. Moveré la base de datos del servidor 1 a E:\DB1 y los logs a F:\DB1, lo que puedo hace vía línea de comandos (PS) ó desde Exchange Management Console:
[PS] C:\>move-DatabasePath -Identity 'Mailbox Database 1296140075' -EdbFilePath 'E:\DB1\DB1.edb' -LogFolderPath 'F:\DB1'
De igual forma muevo la base de datos y logs del servidor 2. Por claridad, también voy a renombrar las bases de datos a DB1 y DB2 respectivamente, con lo que la configuración queda de esta forma:
Como estamos instalando sólo dos nodos en el Cluster sin tener un disco compartido, necesitamos un “File Share Witness” (FSW) para tener el segundo voto en caso que un nodo del cluster falle. Puedes leer sobre Clusters y FSW aquí. Un requerimiento para el FSW es que Exchange pueda accederlo y para ello, debemos otorgar permisos de administrador via el grupo “Exchange Trusted Subsystem” haciendo este grupo miembro del grupo “Administrators”del servidor donde vamos a ubicar el FSW.
Nota: Este paso solo es necesario cuando el FSW está ubicado en un servidor NO-Exchange, dado que este permiso ya está otorgado en los servidores de Exchange desde el momento de su instalación. Lo recomendado es que el FSW se ubique en un Hub Transport server que no forme parte del cluster.
Estamos listos para crear el DAG, y vamos a hacerlo desde Exchange Management Console:
Especificamos el nombre del DAG, el servidor que va a oficiar de FSW (en nuestro caso será el controlador de dominio) y el directorio donde se configurará localmente el FSW en LABDC1
Al finalizar el asistente nos aparece una alerta avisandonos que LABDC1 no es un servidor de Exchange y por lo tanto necesita el permiso anteriormente mencionado.
Esta acción crea el objeto del DAG de clase msExchMDBAvailabilityGroup en el directorio activo. Nota que el contenedor de Database Availability Groups está al mismo nivel que los Servers en la configuración de Exchange 2010.
En el Exchange Management Console ya vemos el DAG:
Una vez que el objeto está creado, definimos los servidores miembros del DAG mediante la opción Manage Database Availability Group Membership:
Agregamos ambos servidores con la opción “Add” y continuamos con “Manage”.
Los comandos PS correspondientes para esta operación serían:
[PS] C:\>Add-DatabaseAvailabilityGroupServer –Identity “DAG1” –MailboxServer “LABE2K10-1”
Este paso procederá a la instalación de los servicios de Cluster en cada uno de los nodos en forma automática
En el proceso, se creará automáticamente el FSW y su correspontiente carpeta compartida en LABDC1 como fue indicado en el asistente:
Como parte de la configuración, se creará un recurso de cluster “IP Address” para ser utilizado por el DAG. Si estás utilizando DHCP en tu red, este recurso de cluster será configurado con una IP dinámica del DHCP y no necesitará mayor intervención. En caso contrario tendremos un aviso notificando que el DAG no tiene dirección IP válida y tendremos que configurarla manualmente. Voy a seguir el segundo caso:
El Failover Cluster Manager indica el problema con la IP:
Ejecutamos entonces el siguiente comando para agregar la dirección IP fija a la configuración del DAG:
[PS] C:\>Set-DatabaseAvailabilityGroup DAG1 –DatabaseAvailabilityGroupIpAddresses 192.168.31.175
Consultamos como quedan las principales propiedades del DAG…
[PS] C:\Windows\system32>Get-DatabaseAvailabilityGroup | fl
RunspaceId : 2c63732a-5bd2-478b-94ad-b8dc8b9f3422 Name : DAG1 Servers : {LABE2K10-2, LABE2K10-1} WitnessServer : LABDC1.LAB10.NET WitnessDirectory : C:\FSWDAG1 AlternateWitnessServer : AlternateWitnessDirectory : NetworkCompression : InterSubnetOnly NetworkEncryption : InterSubnetOnly DatacenterActivationMode : Off StoppedMailboxServers : {} StartedMailboxServers : {} DatabaseAvailabilityGroupIpv4Addresses : {192.168.131.175} OperationalServers : PrimaryActiveManager : ThirdPartyReplication : Disabled ReplicationPort : 0 NetworkNames : {} AdminDisplayName : ExchangeVersion : 0.10 (14.0.100.0) DistinguishedName : CN=DAG1,CN=Database Availability Groups,CN=Exchange Administrative Group (FYDI BOHF23SPDLT),CN=Administrative Groups,CN=Lab10,CN=Microsoft Exchange,CN=Servic es,CN=Configuration,DC=lab10,DC=net Identity : DAG1 Guid : 04d033ab-fc82-4124-91da-d714f661c166 ObjectCategory : lab10.net/Configuration/Schema/ms-Exch-MDB-Availability-Group ObjectClass : {top, msExchMDBAvailabilityGroup} WhenChanged : 3/26/2010 9:08:49 PM WhenCreated : 3/26/2010 8:24:45 PM WhenChangedUTC : 3/27/2010 2:08:49 AM WhenCreatedUTC : 3/27/2010 1:24:45 AM OrganizationId : OriginatingServer : LabDC1.lab10.net IsValid : True
Luego de asignar la dirección IP al DAG veremos recurso “Cluster Name” en el Failover Cluster Manager: online.
En este punto ya podemos considerar que nuestro DAG está formado. Usando el commando Add-DatabaseAvailabilityGroupServer, o la opción equivalente “Manage Database Availability Group Membership” en el Exchange Management Console, pudes agregar más servidores al DAG. Si el Windows Failover Cluster no está instalado en el servidor que agregamos, el asistente de instalación lo instalará automáticamente.
De la misma forma puedes usar el comando “Remove-DatabaseAvailabilityGroupServer” para quitár servidores del DAG. Para quitar servidores del DAG debes primero remover las copias de base de datos que existan en el servidor.
Las redes NET y REPL se han configurado automáticamente de la siguiente forma:
Si listamos las redes en PS, tendremos mayor detalle de su configuración. Nota que la red REPL (DAGNetwork02) se usará para replicación pero no para tráfico de clientes MAPI, mientras que NET (DAGNetwork01) se sará para ambos tipos de tráfico. Esto obviamente se puede cambiar via el comando Set-DatabaseAvailabilityGroupNetwork
[PS] C:\Windows\system32>Get-DatabaseAvailabilityGroupNetwork
Identity ReplicationEnabled Subnets -------- ------------------ ------- DAG1\DAGNetwork01 True {{192.168.131.0/24,Up}} DAG1\DAGNetwork02 True {{10.0.0.0/8,Up}}
[PS] C:\Windows\system32>Get-DatabaseAvailabilityGroupNetwork |fl
RunspaceId : 2c63732a-5bd2-478b-94ad-b8dc8b9f3422 Name : DAGNetwork01 Description : Subnets : {{192.168.131.0/24,Up}} Interfaces : {{LabE2K10-1,Up,192.168.131.71}, {LabE2K10-2,Up,192.168.131.72}} MapiAccessEnabled : True ReplicationEnabled : True IgnoreNetwork : False Identity : DAG1\DAGNetwork01 IsValid : True
RunspaceId : 2c63732a-5bd2-478b-94ad-b8dc8b9f3422 Name : DAGNetwork02 Description : Subnets : {{10.0.0.0/8,Up}} Interfaces : {{LabE2K10-1,Up,10.10.10.1}, {LabE2K10-2,Up,10.10.10.2}} MapiAccessEnabled : False ReplicationEnabled : True IgnoreNetwork : False Identity : DAG1\DAGNetwork02 IsValid : True
Otro detalle que quería mostrarles es el “Cluster Network Object” que se crea automáticamente con la configuración del DAG. Es la cuenta de máquina que se crea representando al nombre de red del cluster y está habiliatada para uso de Kerberos como forma de autenticación.
En la Parte III y última parte de esta serie, mostraré como agregar réplicas para que todo este tema del DAG tenga sentido práctico :)
Que bien!! me alegro ver este tipo de post en el blog..!!!