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.