miércoles, 19 de diciembre de 2018

Mover Bases Datos Servidor Exchange 2013 a otro dentro de un DAG y eliminación de un servidor miembro de un DAG y posterior desinstalación del Servidor Exchange 2013

Buenas, con el presente procedimiento voy a mostrar como se mueven las bases de datos de un servidor con Exchange 2013 que pertenecea a un DAG a otro servidor del mismo DAG y posteriormente eliminación del primero.


Lo primero es instalar un servidor de Exchange más e incluirlo en el DAG existente.

Una vez instalado, tenemos que añadir los registros de este nuevo servidor en DNS.




Bien una vez que ya tenemos nuestro servidor de Exchange instalado, veremos que no forma parte del DAG, para ello lo comprobamos con el siguiente comando.



Como vemos solo tenemos dos servidores que forma parte del DAG. Por lo que tenemos que incluir este nuevo servidor que hemos instalado. Para luego poder copiar las bases de datos y decirle que las bases de datos residen en ese otro servidor.

Agregaremos el servidor al DAG.





Con esto hemos incluido el nuevo servidor a nuestro DAG.

Pero lo vamos a volver a comprobar.

Ejecutando el mismo comando que antes.

Bien ahora si vemos que este servidor está incluido en el DAG.



Ahora vamos a ver las bases de datos que tiene cada uno de los servidores, para luego hacer una réplica de la base de datos y asignársela al nuevo servidor, con el fin de poder eliminar del DAG el servidor y posteriormente desinstalarlo.

Lo primero es ver en qué estado están las bases de datos para ello ejecutamos lo siguiente.


Vemos que la base de datos llamada DB2 está en el servidor MAILX02 está base de datos la vamos a replicar al servidor MAILX03 con el fin de poder eliminar el servidor MAILX02.




Como vemos ya tenemos la copia de la base de datos DB2 en el servidor Mailx03, pero tenemos que hacer que este activo en ese servidor, para poder quitar el servidor Mailx02.




Ahora vamos a activar la base de datos DB2 del servidor Mailx02 al servidor Mailx03
Para ello ejecutaremos el siguiente comando desde el powershell.



Una vez que acaba nos muestra esto.



Y si hacemos una comprobación vemos lo siguiente.



Como vemos ya no tenemos ninguna base de datos en el servidor Mailx02. Por lo que podremos proceder a sacarlo del DAG, como paso previo a la desinstalación del mismo.



Nos pedirá confirmación.



Y tras darle la confirmación procede a la eliminación del servidor del DAG



Una vez ejecutada esta orden. Volvemos a comprobar que servidores forman parte del DAG.



Correcto, ya el servidor Mailx02 no pertenece al DAG por lo cual podremos proceder a desinstalar este servidor Exchange.

Para ello. Abrimos una ventana CMD en modo Administrador y nos vamos a la carpeta donde tenemos los archivos de instalación del CU de Exchange correspondiente.

Y ejecutamos el siguiente comando.



Este proceso tardara.




Una vez que termine el proceso, nos tiene que aparecer lo siguiente, y entonces podremos apagar este servidor, pues ya no existe dentro de la organización de Exchange.




Y ya por último eliminaremos los registros de este servidor que ha sido desinstalado del DNS.



martes, 18 de diciembre de 2018

Procedimiento Actualizacion CU a un servidor Exchange 2013 en un DAG

Buenos días. 

En esta ocasión vamos a ver como tenemos que actuar para la actualización de un servidor con Exchange 2013 que forma parte de un DAG.


Vamos a proceder a realizar una actualización cd CU a los servidores Exchange 2013.

Lo primero es abrir una sesión de CMD como Administrador en el primer servidor que vamos a proceder a actualizar.




Nos situamos en la carpeta donde tenemos los archivos de instalación de nuestro CU



Y desde esté ruta ejecutaremos el siguiente comando, para preparar el directorio activo si fuera necesario, algunas actualizaciones lo requieren. Y ante la duda, no nos cuesta nada realizar la operación.

El comando a ejecutar es:

Setup.exe /Preparead /IacceptExchangeServerLicenseterms





Si hubiera algún error, como en este caso. Procederemos a reparar la incidencia ocasionada, y volveremos a ejecutar el proceso.



Una vez tengamos resuelto los requisitos previos que nos ha indicado el proceso anterior. Repetimos el comando y esperamos a que esta vez finalice correctamente



Ahora tenemos que quitar los registros asociados a este servidor en el DNS, para evitar que los clientes se conecten a este servidor con el que estamos haciendo la actualización. Tenemos que tener en cuenta el TTL del DNS.

Así que nos dirigimos al servidor que tiene el DNS y eliminamos los registros (tanto mail como autodiscover).

Eliminaremos los dos registros que vemos resaltados en rojo en la siguiente imagen.


Quedando nuestro DNS ahora tal y como vemos en la siguiente imagen.




Volvemos al primer servidor Exchange con el que estamos actuando y abrimos una sesión PowerShell de Exchange en modo Administrador.





Lo primero que haremos es hacer una comprobación de las bases de datos.

Para ello ejecutamos el siguiente comando.

Get-MailboxDatabaseCopyStatus

Vemos que las bases de datos en están en estado saludable.


El siguiente paso es mover las bases de datos del servidor con el que estamos actuando al otro servidor. Para lo cual ejecutamos el siguiente comando.


Move-ActiveMailboxDatabase DB1 –ActivateOnserver MAILX02


Vemos que se ha movido correctamente.


Ahora ponemos el servidor en modo mantenimiento, para ello ejecutamos lo siguiente. Y drenamos la cola de mensajes.

Ser-ServerComponentState MAILX01 –Component Hubtransport –State draining –Requester maintenance


Como vemos no nos muestra ningún mensaje.


En este punto, redirigimos todo el tráfico de mensajes al otro servidor. Lo hacemos ejecutando el siguiente comando.

Redirect-Message –Server MAILX01 –Target MAILX02.literatura.com

Ojo el servidor Target debemos de ponerlo en formato FQDN 


Nos solicita confirmación de la operación, le decimos que si a todo.



Nos toca ahora suspender el nodo del cluster. Para lo que ejecutamos lo siguiente.

Suspend-ClusterNode –Name mailx01

Si todo va bien, obtenemos esto.

En este punto nos toca deshabilitar la activación de copias de bases de datos. Para lo que tenemos que ejecutar el siguiente comando.

Set-MailboxServer mailx01 –DatabaseCopyActivationDisableAndMoveNow $true 


Como vemos no nos da ningún mensaje.


Bloqueamos la activación de base de datos en el servidor, esto lo hacemos con el siguiente comando.

Set-MailboxServer mailx01 –DatabaseCopyAutoActivationPolicy blocked 




Igual que con el comando anterior, no nos muestra ningún mensaje.




Ahora lo ponemos en modo mantenimiento. Ejecutando lo siguiente.

Set-ServerComponentState mailx01 –Component Serverwideoffline –State inactive –Requester maintenance


Como vemos no nos muestra ningún mensaje.




Ahora comprobamos que los servicios están inactivos.



Para ello ejecutamos Get-ServerComponentState mailx01



Ahora cerramos el Powershell de Exchange y estamos en disposición de realizar la actualización del servidor.

Volvemos al CMD en modo administrador y nos ponemos en la carpeta donde tenemos los archivos de instalación del CU correspondiente de Exchange.

Y ejecutamos el siguiente comando.


Setup.exe /mode: upgrade /InstallWindowsComponents /IAcceptExchangeServerLicenseTerms 




Bueno esto comienza y tardara un rato.




Comprobamos que todos los pasos los ha pasado sin problemas.




Y Reiniciamos el servidor. Para ello ejecutamos Shutdown –r –t 0

Una vez reiniciado el servidor, tenemos que comprobar que todos los servicios de Exchange están iniciados.

Iniciamos una sesión de PowerShell de Exchange en modo Administrador.

Comprobamos las bases de datos


Get-MailboxDatabaseCopyStatus

Comprobamos los componentes

Get-ServercomponentState mailx01 | more 



Como vemos el servidor sigue en modo mantenimiento, con todos los servicios en modo inactivo.

Ejecutamos lo siguiente



Set-ServerComponenetState mailx01 –Component Serverwideoffline –State Active –Requester Maintenance



Resume-ClusterNode –Name mailx01



Activamos el servicio de Transporte.

Set-ServerComponentState mailx01 –Component Hubtransport –State Active –Requester Maintenance

Comprobamos que los servicios vuelven a estar activos.



Get-ServerComponentState mailx01



Pasamos al otro servidor

Abrimos un PowerShell de Exchange en modo administrador

Comprobamos el estado de las bases de datos


Get-MailboxDatabaseCopyStatus 


Y como vemos tenemos todas las bases de datos montadas en este servidor.

Antes de empezar con este servidor, debemos de volver al servidor DNS y tenemos que poner nuevamente los registros que habíamos eliminado al principio de la operación, que hacen referencia al servidor anterior.


Añadimos los registros DNS y eliminamos los pertenecientes al de este segundo servidor. 



Movemos las bases de datos

Move-ActiveMailboxDatabase –Server mailx02 –ActivateOnServer mailx01

Drenamos las colas de correo

Set-ServerComponentState mailx02 –Component Hubtransport –Sate draining –Requester maintenance

Redirecionamos el correo al otro servidor.

Redirect-Message –Server mailx02 –Target mailx01.literatura.com

Nos pide confirmación.

Aceptamos todo.

Suspendemos el nodo del cluster


Suspend-ClusterNode –Name mailx02

Set-MailboxServer mailx02 –DatabaseCopyActivationDisableAndMoveNow $true


Ahora bloquemos

Set-MailboxServer mailx02 –DatabaseCopyAutoActivationPolicy blocked

Ponemos el servidor en modo mantenimiento


Set-ServercomponentState mailx02 –Component ServerWideoffline –State Inactive –Requester maintenance

Salimos del PowerShell

Abrimos una sesión en CMD en modo Administrador, nos situamos en el directorio donde tenemos el instalador de nuestro CU y ejecutamos el siguiente comando.

Setup.exe /m: upgrade /InstallWindowsComponents /IAcceptExchangeServerLicenseTerms


Comienza y esto tardara un rato.


Una vez finalizado, vemos que todos los pasos los ha completado de forma correcta. Y reiniciamos el servidor.



Una vez la maquina haya reiniciado, comprobamos que todos los servicios de Exchange han sido iniciados correctamente.

Arrancamos el PoweShell de Exchange en modo Administrador

Comprobamos las bases de datos

Get-MailboxDatabaseCopyStatus


Ahora ejecutamos

Set-ServerComponentState mailx02 –Component ServerWideoffline –State active – Requester maintenance 


Ahora ponemos

Resume-ClusterNode –Name mailx02


Set-MailboxServer mailx02 –DatabaseCopyActivationDisableAndMoveNow $false


Activamos el sistema de transporte

Set-ServerComponentState mailx02 –Component Hubtransport –State active –Requester maintenance


Ahora vamos a ver las propiedades del servidor.

Get-MailboxServer mailx02 | fl | more


Set-Mailboxserver mailx02 –DatabaseCopyActivationPolicy unrestricted


Y hacemos lo mismo con el otro servidor que se nos había pasado hacerlo.


Y por último añadimos los registros en el DNS que habíamos quitado correspondientes a este servidor.