Actualización gradual nodos clúster a Windows Server 2016 (rolling upgrade)

En esta entrada veremos como hacer una actualización gradual (rolling upgrade) y sin parada del servicio del sistema operativo de dos servidores (nodos) Microsoft Windows Server 2012 R2, que forman un clúster de archivos, a dos servidores (nodos) nuevos con sistema operativo Windows Server 2016. Para los que os habéis perdido la creación del clúster, podéis echar un vistazo a la entrada de configuración del clúster de servidor de archivos.
Esta actualización gradual del clúster aplica muy bien a los clústers de archivos, scale-out y, como no, a los entornos de virtualización Hyper-V.
El vídeo de la actualización gradual de nodos de un clúster a Windows Server 2016 (rolling upgrade)
Introducción actualización gradual de nodos del clúster
Tengamos claro desde donde partimos y donde se quiere llegar para entender todo el proceso, que en un principio es sencillo de hacer, gracias a la nueva característica de Windows Server 2016 que lo permite si seguimos las cosas por orden. Tenemos una red con un controlador de Active Directory, esto es básico. En esta red, tenemos dos servidores Microsoft Windows Server 2012 R2 actualizados (srvSQL1 y srvSQL2) que forman un clúster de archivos (SQL) de dos nodos. Ya sé que los nombres del ejemplo no identifican demasiado al clúster de archivos, para entender el funcionamiento no importa, tengo estos nombres porque los aprovecho para el montaje de un clúster SQL Server.
Lo que primero haremos será añadir un nuevo nodo al clúster, con sistema operativo Microsoft Windows Server 2016, el servidor srvSQL3. Extendiendo en un primer momento el clúster a tres nodos.
Balanceamos los servicios en caliente para liberar uno de los nodos Windows Server 2012 R2. Eliminamos el servidor Windows Server 2012 R2 liberado de servicios.
Creamos un nuevo servidor Windows Server 2016 que lo agregamos al cluster existente y al que balanceamos los servicios en caliente.
Finalmente, eliminamos el otro nodo, y último, con Windows Server 2012 R2.
Quedando un clúster de dos nodos Windows Server 2016 sin pérdida de servicio durante todo el proceso. El último paso es levantar el nivel de funcionalidad del clúster de Windows Server 2012 R2 a Windows Server 2016. La idea es parecida a lo mismo que pasa con el nivel funcional del Active Directory con el bosque y el dominio, pero ojo, no se ha confundido, aquí no tocamos nada del Active Directory, sólo del clúster.
Actualización gradual del clúster (rolling upgrade) Windows Server 2012 R2 a Windows Server 2016
Para que funcione, al igual que en cualquier otro clúster, tiene que ser capaz de ver los discos duros compartidos que ya está ofreciendo el clúster. Aseguramos que tiene acceso a los discos accediendo al administrador de discos, botón derecho sobre el botón Inicio y hacer clic en Administrador de discos.
En este laboratorio podemos ver los dos discos fuera de línea correspondientes al Witness y al volumen de datos. No los ponemos en línea porque pertenecen al clúster y si lo hicieramos ¡nos caerían los servicios!
Habilitamos la característica del clúster de conmutación por error. Desde el Administrador del servidor, en el menú de la parte superior derecha, hacer clic en Administrar y en Añadir roles y características.
Seleccionar instalación basada en un rol o característica y hacer clic en el botón Siguiente.
Seleccionar servidor donde instalar el rol y/o característica y seleccionar el servidor local. Hacer clic en el botón Siguiente para continuar.
Listado de roles. Como que no es un rol lo que se quiere habilitar lo podemos pasar haciendo clic en el botón Siguiente.
Listado de características. Marcar el checkbox en Clúster de conmutación por error. Al hacerlo se nos pide añadir las herramientas de administración. Hacer clic en el botón Añadir características y ya podemos continuar a la siguiente pantalla. Hacer clic en el botón Siguiente.
Resumen de instalación de la característica. Hacer clic en el botón Instalar y esperar a que haga el trabajo.
Una vez acabado y comprobado que todo ha ido bien, hacer clic en el botón Cerrar para cerrar el asistente.
Para tenerlo claro, empezaremos el proceso desde un servidor Windows Server 2012 R2 en lugar de hacerlo desde el Windows Server 2016 que acabamos de instalar.
Vamos a añadir el nuevo nodo como miembro del clúster existente. Accedemos al administrador del clúster de Windows Server 2012 R2. Del panel de la parte izquierda, botón derecho sobre la rama Nodos y hacer clic en Agregar nodo
Indicar el servidor Microsoft Windows Server 2016 que se quiere agregar al clúster. Hacer clic en el botón Siguiente.
Se nos pide para hacer las pruebas de compatibilidad para el clúster, ¡como no!. Seleccionar que Si y hacer clic en el botón Siguiente.
Se inicia el asistente para hacer las pruebas. Hacer clic en el botón Siguiente.
Seleccionar Ejecutar todas las pruebas y hacer clic en el botón Siguiente.
Para evitar las pérdidas de servicio del clúster durante las pruebas de compatibilidad, o bien paramos los servicios o bien seleccionamos un disco que no tenga demasiada implicación en el servicio para hacer las pruebas. Por ejemplo, el de Witness. Hacer clic en Siguiente para continuar.
Resumen de las pruebas a validar. Hacer clic en Siguiente para empezar.
Finalizan las pruebas. Ha aparecido un error de sistema operativo, lo sabemos, estamos añadiendo un sistema operativo diferente al que tenemos los nodos desde la consola de Windows Server 2012 R2. Aseguráos que sólo sea el de sistema operativo y NO otro. Hacer clic en el botón Finalizar.
Volvamos al asistente de creación del clúster. Marcar la opción de NO hacer las pruebas. Hacer clic en el botón Siguiente.
Se indica que se añadirá un nodo al clúster y se deja marcado el checkbox de añadir todo el almacenaje apto en el clúster. Hacer clic en el botón Siguiente.
Se añade el nodo al clúster. Comprobar que se añade correctamente. Hacer clic en el botón Finalizar para cerrar el asistente.
En el clúster aparecen los tres nodos operativos.
Podemos jugar moviendo los recursos al tercer nodo que acabamos de instalar para ver que todo funciona bien. En la parte izquierda, en el árbol de opciones, hacer clic en Roles. Se puede ver el recurso del servidor de archivos que se está ejecutando en el nodo srvSQL1 (Windows Server 2012 R2). Botón derecho sobre el recurso, hacer clic en Mover y en Seleccionar nodo.
Seleccionar el nuevo nodo, srvSQL3 y hacer clic en Aceptar.
Se hace el típico movimiento de recurso del clúster al nuevo nodo, el srvSQL3 (Windows Server 2016), manteniendo el nivel funcional del recurso, la carpeta Empresa se puede abrir y se tiene acceso de lectura y escritura.
Enhorabuena, ya tenemos uno de los nodos del clúster en Windows Server 2016, pero y ¿ahora que?
Comprobando el nivel de funcionalidad del clúster
No porque se haya añadido un nuevo nodo con Windows Server 2016 ya tenemos un clúster Windows Server 2016. Recordemos que ahora aparece la figura del nivel de funcionalidad del clúster. El clúster que tenemos todavía tiene que funcionar con el nivel funcional de Windows Server 2012 R2. Para comprobarlo,
En el nuevo servidor Windows Server 2016 abrimos una PowerShell para comprobar el NIVEL de funcionalidad del clúster. Hacer clic en el botón Inicio del Windows y escribir PowerShell. Hacer clic en la aplicación coincidente de la búsqueda Windows PowerShell.
Se inicia la consola de PowerShell, escribimos el comando:
get-cluster | select ClusterFunctionalLevel
Aquí, la verdad, no se han matado demasiado:
- Si devuelve el número 8 quiere decir que el nivel de funcionalidad del clúster es Windows Server 2012 R2.
- Si devuelve el número 9 quiere decir que el nivel de funcionalidad del clúster es Windows Server 2016.
El valor es 8, por lo tanto, tenemos un clúster en Windows Server 2012 R2. ¿Cuál es el próximo paso para tener un clúster con nivel funcional Windows Server 2016 (valor 9)?
Expulsar uno de los nodos para sustituirlo por un Windows Server 2016. La recomendación y, teóricamente (ya hablaré algún día), el procedimiento es que se haga una instalación neta del nuevo nodo. NO que se actualice el sistema operativo.
Eliminar nodo Windows Server 2012 R2 del clúster
Vamos a sustituir el srvSQL2 (Windows Server 2012R2) por un nuevo srvSQL2 (Windows Server 2016). Desde el nuevo servidor srvSQL3, con el administrador del clúster de conmutación por error, rama roles, aseguramos que srvSQL2 no tiene ningún recurso asignado.
Accedemos a la rama nodos, botón derecho sobre el srvSQL2, opción Más acciones y hacer clic en Expulsar.
Se nos pide que confirmemos la acción porque no tiene vuelta atrás. Hacer clic en el botón Si.
Se ha expulsado el nodo srvSQL2 del clúster y, por lo tanto, volvemos a tener un clúster formado por dos nodos. Eso sí, uno con Windows Server 2012 R2 y el otro con Windows Server 2016.
En el nodo expulsado, procedemos como haríamos con cualquier otro servidor para acabarlo de eliminar de la red. Es decir, lo sacamos del dominio y lo aparcamos o eliminamos directamente.
Generamos un nuevo servidor srvSQL2 con el sistema operativo Windows Server 2016, lo añadimos al dominio (recuerdo que se ha eliminado el anterior servidor srvSQL2, por lo tanto no habrá conflicto de nombres ni cuentas de equipos) y habilitamos el rol de servidor de Archivos (o el que se necesite: Hyper-V, scale-out…) y la característica del clúster de conmutación por error instalados.
Desde el administrador del clúster de conmutación por error del servidor srvSQL3, Windows Server 2016, en la rama de nodo, añadimos el nuevo servidor srvSQL2. Botón derecho y hacer clic en Añadir nodo.
Se inicia el asistente para añadir un nuevo nodo en el clúster. Hacer clic en el botón Siguiente para continuar.
Indicar el nombre del nuevo servidor a añadir en el clúster, el srvSQL2. Hacer clic en el botón Siguiente para continuar.
Resumen informativo que se añade el nuevo nodo. Volvemos a dejar el checkbox del almacenamiento habilitado y hacer clic en el botón Siguiente para continuar.
Mira que pasa ahora, el nuevo servidor ya se ha añadido al clúster. Hacer clic en el botón Finalizar para cerrar el asistente.
En el administrador del clúster de conmutación por error se pueden ver de nuevo tres nodos.
Pasamos el recurso al nuevo nodo. En el panel de la parte izquierda, hacer clic en la rama Roles. Seleccionar el rol que tenemos de prueba (files), que en la foto aparece en el servidor srvSQL1, botón derecho sobre él, hacer clic en Mover y a continuación en Seleccionar Nodo.
Marcar el servidor srvSQL2 (el nuevo con Windows Server 2016) y hacer clic en el botón Ok.
El servicio balancea al nuevo servidor, srvSQL2, siguiendo dando servicio.
Eliminar el último servidor Windows Server 2012 R2 (srvSQL1) del clúster. Repetimos el proceso que hemos hecho con el anterior servidor srvSQL2. Lo expulsamos del clúster y lo sacamos del dominio.
Nos ha quedado el clúster con dos nodos, ahora sí, con Microsoft Windows Server 2016 y sin pérdida de servicio.
Volviendo a la PowerShell para comprobar el nivel de funcionalidad del clúster:
get-cluster | select ClusterFunctionalLevel
Continuamos teniendo el nivel de funcionalidad de 8, es decir, de Windows Server 2012 R2.
La elevación del nivel de funcionalidad NO es, en ningún caso, automático porque todos los nodos que conforman el clúster ya sean Windows Server 2016. Sinó, como en el caso del nivel de funcionalidad del dominio o bosque de Active Directory, se tiene que forzar manualmente este cambio que no tiene punto de retorno.
El comando de PowerShell para cambiar el nivel de funcionalidad del clúster de Windows Server 2016 a nativo es:
Update-ClusterFunctionalLevel
Nos pide confirmación ya que el cambio no tiene vuelta atrás, hacer clic en el botón de Si.
Si volvemos a comprobar el nivel funcional del clúster:
get-cluster | select ClusterFunctionalLevel
Ha pasado de 8 a 9, que corresponde a un nivel funcional del clúster de Windows Server 2016, dando por finalizada toda la operación de actualización gradual (rolling upgrade), sin pérdida de servicio, de un clúster Microsoft Windows Server 2012 R2 a Windows Server 2016.
¿Te ha gustado el artículo? Lo puedes compartir en las redes sociales. También puedes dejar tu opinión, comentario o sugerencia. ¡Gracias!
Similar Posts by The Author:
- Migrar el servidor de archivos a Windows Server 2019
- Migrar el servidor de fitxers a Windows Server 2019
- Puerta enlace a Azure en el Windows Admin Center
- Porta enllaç a Azure en el Windows Admin Center
- Hola mundo! WordPress 5 y Gutenberg
- Hola món! WordPress 5 i Gutenberg
- Windows Admin Center
- Windows Admin Center
- Cambiar idioma del usuario de Windows 10
- Canviar llenguatge de l’usuari de Windows 10
Quede algo confundio, cuando eliminas tu primer nodo para anhadir el nuevo con W2016, si bien tu cluster esta arriba, pero es funcional un cluster con un solo nodo? hasta donde experimente por lo menos tendrias ke tener dos nodos arriba ya que con uno solo no habria quorum…
Gracias
Hola Carlitos,
es correcto, el segundo nodo que queda levantado es el quorum (Witness) que desempata el clúster. Por esto puede estar funcionando. Piensa que desde Windows Server 2008 deberías configurar el Witness en caso de tener solo dos controladores. Si tienes tres o más ya no te hace falta. Por defecto el sistema no configura el Witness tal como pasaba con Windows Server 2003, por lo que es una acción que debes realizar manualmente.
Saludos,
Hola Josep María, excelente trabajo.
Tengo un Failover Cluster para hyper-V con dos nodos con Windows Server 2008R2 Enterprise.
¿Puedo actualizar los nodos a Windows Server 2012R2 o 2016 sin eliminar el cluster?
Gracias
Antonio
No, la característica de actualización disruptiva (rolling upgrade) aparece en Windows Server 2016, para migrar clústeres de Windows Server 2012 R2 a Windows Server 2016. Para el 2008, debes desplegar un nuevo clúster i migrar servicios.
Muchas gracias Josep María
Me temía que esa era la solución, pero quería asegurarme.
Saludos
Antonio