XenServer 7: actualización del grupo a través de la CLI y la interfaz web de XenCenter


El primer artículo de esta serie XenServer 7 cubrió cómo instalar/actualizar un solo host XenServer. Es probable que la mayoría de las instalaciones de XenServer se encuentren en un grupo de muchos hosts de XenServer.

Este artículo cubrirá el proceso de actualización completa de un grupo de XenServer. El componente final cubrirá algunas tareas domésticas con los invitados que se ejecutan en los hosts de XenServer.

  1. XenServer 7 ISO: XenServer-7.0.0-main.iso

Antes de continuar, le sugiero que consulte estas dos secciones Requisitos del sistema y Adiciones sugeridas por el autor en nuestro primer artículo de Xen Server 7 en:

  1. Instalación nueva de XenServer 7

El propósito de este artículo es recorrer una actualización del grupo de XenServer. Hay varias formas de realizar el proceso de actualización y la solución "correcta" para cualquier instalación específica dependerá en gran medida de la organización.

Citrix tiene un documento muy detallado que debe revisarse antes de que se inicie el proceso de actualización: xenserver-7-0-installation-guide.pdf

Actualización del grupo de XenServer

Sin duda, la mayoría de las instalaciones de XenServer probablemente formen parte de un grupo de XenServers. Esto complica un poco el proceso de actualización. Si bien la opción de ir manualmente a cada servidor y actualizar cada uno es una opción, Citrix tiene una manera mucho más fácil de hacerlo mediante el uso de una actualización de Rolling Pool a través de la versión más reciente de XenCenter o mediante el código xe herramienta de línea de comandos.

Según la documentación de Citrix, se puede realizar una actualización de grupo en cualquier versión de XenServer 6.xo superior a la versión 7. Si un host XenServer ejecuta una versión anterior a la 6.x, entonces el host debe seguir la ruta de actualización adecuada a XenServer. 6.2 y luego se puede actualizar a XenServer 7.0.

Para realizar la actualización de Rolling Pool, es necesario descargar la versión más reciente de XenCenter de Citrix. La descarga se puede encontrar aquí: XenServer-7.0.1-XenCenterSetup.exe

Como se menciona en la serie XenServer 6.5, XenCenter sigue siendo una utilidad exclusiva de Windows. La actualización del grupo también se puede realizar a través de la CLI para quienes no tengan acceso a una máquina con Windows para ejecutar XenCenter.

Este artículo detallará ambos métodos (XenCenter y CLI con la utilidad xe).

NOTA: antes de realizar una actualización de grupo, se deben tener en cuenta dos cosas. La actualización progresiva del grupo no debe realizarse con el inicio desde configuraciones SAN y se eliminó Integrated StorageLink de las versiones 6.5 y posteriores de XenServer.

Independientemente del método que se utilice, XenCenter o CLI, el primer paso es deshabilitar la alta disponibilidad del grupo, detener todas las máquinas virtuales invitadas no esenciales y asegurarse de que los hosts XenServer tengan suficiente memoria para admitir a los invitados que necesitan continuar ejecutándose durante la actualización ( es decir, no sobreaprovisionado), los hosts también necesitan suficiente espacio en el disco duro para XenServer 7, asegúrese de que las unidades de cd/dvd de todos los invitados estén vacías y se recomienda encarecidamente que se realice una copia de seguridad del estado actual del grupo.

Comencemos el proceso.

Actualización de grupo desde la CLI

1. ¡Asegúrese de haber leído los 5 párrafos anteriores, ya que describen información muy importante para el proceso de actualización! También se recomienda encarecidamente que los usuarios lean la guía de instalación que se encuentra aquí: xenserver-7-0-installation-guide.pdf, Las instrucciones y advertencias para la actualización comienzan en la página 24.

2. El primer paso tecnológico real es hacer una copia de seguridad del estado del grupo con la herramienta xe . Con una conexión SSH al host maestro del grupo Xen, se puede ejecutar el siguiente comando "xe".

# xe pool-dump-database file-name="Xen Pool.db"

Con la base de datos respaldada, copie el archivo del host maestro para asegurarse de que haya una copia disponible en caso de que falle la actualización. El siguiente comando copiará el archivo Xen Pool.db del XenServer remoto identificado por y colocará el archivo en la carpeta Descargas del usuario actual.

# scp '[email protected]<XenServer_ip>:~/”Xen pool.db”'  ~/Downloads/

3. Una vez que se ha realizado una copia de seguridad de la base de datos del grupo, el maestro debe tener todos los invitados migrados a otros hosts del grupo y luego el maestro debe desactivarse con los siguientes comandos "xe":

# xe host-evacuate host=<hostname of master>
# xe host-disable host=<hostname of master>

Ahora es necesario reiniciar el host desde el medio de instalación de XenServer 7 de forma local. En este punto, la actualización sigue muchas de las mismas partes que la actualización de un solo host anteriormente en este artículo.

¡Asegúrese absolutamente de elegir ACTUALIZAR cuando siga los pasos del instalador! En aras de la claridad, en este punto, los pasos 1-6 y luego 15-19 en el artículo "XenServer 7 - Instalación nueva" deben completarse en esta etapa.

El proceso de instalación tarda unos 12 minutos, así que navega a https://www.tecmint.com para leer otro artículo mientras esperas a que finalice la instalación. Una vez que se complete la instalación, reinicie el maestro y elimine los medios de instalación.

4. Mientras el maestro se reinicia, asegúrese de que no muestre ningún error y de que se inicie en la pantalla de la consola XenServer. Esta es una buena indicación de una actualización exitosa, pero las cosas aún no están hechas. Vuelva a SSH en el sistema maestro y verifique que efectivamente esté ejecutando la nueva versión de XenServer con cualquiera de los siguientes comandos:

# cat /etc/redhat-release
# uname -a

5. ¡Éxito! Este maestro de piscina ahora se ha actualizado. En este punto, mueva los invitados a este host según sea necesario y continúe con el siguiente host XenServer repitiendo el paso tres, excepto reemplazando el nombre de host del siguiente host para actualizar.

# xe host-evacute host=<hostname of pool slave>
# xe host-disable host=<hostname of pool slave>

6. Continúe con los pasos del 3 al 5 para los esclavos restantes en el grupo.

7. En este punto es CRUCIAL aplicar una actualización más. Citrix lanzó un parche para abordar los problemas en los que la pérdida de datos y la corrupción eran posibles en determinadas circunstancias.

¡APLIQUE ESTE PARCHE AHORA! Este parche también requiere que se reinicien los hosts de XenServer. Las instrucciones para lograr esto a través de XenCenter se encuentran más adelante en este artículo.

Para lograr esto a través de la CLI de un host XenServer, descargue el parche y emita los siguientes comandos "xe":

# wget -c http://support.citrix.com/supportkc/filedownload?uri=/filedownload/CTX214305/XS70E004.zip
# unzip XS70E004.zip
# xe patch-upload file-name=XS70E004.xsupdate
# xe patch-apply uuid=<UUID_from_above_command>
# xe patch-pool-apply uuid=<UUID_from_above_command> - only applies to a XenServer pool and must be run from the pool master

8. Una vez que se hayan actualizado todos los hosts del grupo, los invitados deberán tener actualizadas las herramientas para invitados de XenServer. Los pasos para lograr esto se encuentran al final de este artículo.

Actualización de grupo desde XenCenter

Para aquellos que tienen acceso a una máquina con Windows para ejecutar XenCenter, se puede realizar una actualización de Rolling Pool a través de la aplicación XenCenter.

El beneficio de usar XenCenter es que muchas de las tareas y verificaciones que debían realizarse manualmente en las instrucciones anteriores, ahora serán manejadas automáticamente por XenCenter.

El asistente de actualización de grupo continuo en XenCenter tiene dos modos; manual y automático. En el modo manual, el instalador de XenServer 7 debe colocarse en cada host de XenServer individual en el momento en que se actualiza (es decir, un USB o CD de arranque).

Al utilizar el modo automático, el asistente utilizará archivos ubicados en algún tipo de recurso compartido de archivos de red, como HTTP, NFS o servidor FTP. Para utilizar este método, los archivos de instalación de la iso de instalación de XenServer deben descomprimirse en el servidor de archivos en red apropiado y ser accesibles para los hosts de XenServer.

Esta guía no detallará el proceso de configuración de un servidor HTTP, pero le explicará el proceso de extracción del contenido ISO para permitir una actualización automática.

Esta sección asumirá que el usuario tiene un servidor HTTP en funcionamiento con una raíz web configurada en "/ var/www/html". Esta sección también asumirá que el archivo iso de XenServer 7 se ha descargado y reside en la carpeta raíz web.

El primer paso para configurar los archivos de instalación de este artículo es montar la iso, de modo que los archivos del instalador se puedan colocar en webroot. El segundo paso es crear una carpeta para los archivos del instalador y luego copiar los archivos en esa carpeta.

Todos los pasos se pueden realizar de la siguiente manera:

# mount XenServer-7.0.0-main.iso /mnt
# mkdir /var/www/html/xenserver
# cp -a /mnt/. /var/www/html/xenserver

En este punto, navegando a la dirección IP del servidor y la carpeta xenserver, los materiales de instalación deberían aparecer en el navegador.

Actualización de grupo móvil con XenCenter

1. El primer paso es volver a leer los párrafos debajo del encabezado Actualización del grupo de XenServer que se encuentra anteriormente en este documento. Esto es extremadamente importante ya que esos párrafos detallarán los detalles de la actualización para ayudar en la transición desde versiones anteriores de XenServer.

2. El primer paso tecnológico es hacer una copia de seguridad del estado actual de la piscina mediante un comando "xe" del maestro de la piscina. Con una conexión SSH o una consola XenCenter al host maestro del grupo Xen, se puede ejecutar el siguiente comando "xe".

# xe pool-dump-database file-name="Xen Pool.db"

Con la base de datos respaldada, se recomienda encarecidamente que se haga una copia del maestro para que, en caso de una actualización fallida, el maestro/grupo pueda volver al estado original.

3. Asegúrese de que esté instalada la versión más reciente de XenCenter. El enlace de descarga es el siguiente: XenServer-7.0.1-XenCenterSetup.exe.

4. Una vez que se haya guardado la base de datos del grupo y se haya instalado la versión más reciente de XenCenter, puede comenzar la actualización del grupo. Abra XenCenter y conéctese al grupo que necesita la nueva versión de XenServer. Una vez conectado al maestro de la piscina, navegue hasta el menú "Herramientas" y seleccione "Actualización de la piscina rodante ...".

5. Asegúrese de leer las advertencias en el primer mensaje. El paso que se menciona aquí es la copia de seguridad de la base de datos del grupo que se logró en el paso uno de la sección "Actualización del grupo continuo con XenCenter" de este artículo.

6. La siguiente pantalla le pedirá al usuario que seleccione los grupos que desea actualizar. Se pueden seleccionar todos los grupos a los que está conectado XenCenter. En aras de la simplicidad, se ha utilizado un pequeño grupo de pruebas en esta documentación.

7. El siguiente paso permite al usuario seleccionar los modos "Automático" o "Manual". Nuevamente, este artículo analiza el método automático y asume que un servidor HTTP está disponible y tiene el contenido ISO de XenServer extraído en una carpeta llamada "xenserver" en ese servidor HTTP.

8. En este punto, XenCenter ejecutará una serie de comprobaciones para garantizar que todos los hosts tengan los parches/revisiones adecuadas y comprobará que es probable que la actualización se realice correctamente.

Dependiendo del entorno, es probable que este sea el paso en el que se experimentan los problemas. Se encontraron dos problemas, pero el autor en este punto. Se encontraron resoluciones y, con suerte, estas ayudarán a otros.

El primer problema que se experimentó fue la necesidad de aplicar dos parches a los hosts de XenServer. XenCenter logrará esto si el usuario decide hacerlo; sin embargo, como el autor y otros han experimentado, este paso no siempre se completa correctamente y puede impedir que el siguiente paso funcione correctamente.

Si XenCenter afirma que se han aplicado todos los parches, pero el usuario recibe "URL no válida para archivos de instalación" en la siguiente pantalla, el autor pudo lograr que el error desapareciera reiniciando el XenServer maestro.

Para leer más sobre el problema, vea la discusión de Citrix en la siguiente URL: XenServer 7 URL no válida para archivos de instalación.

El otro problema experimentado en este punto fue una advertencia de XenCenter sobre una máquina virtual local almacenada en el host XenServer maestro. Esta máquina virtual local evitaría que el instalador de XenServer vuelva a particionar los hosts con el nuevo esquema de partición GPT.

Después de mucha búsqueda, se notó que se estaba almacenando una copia de seguridad de los metadatos del grupo en el almacenamiento local del host maestro. Una vez que esto se movió a otra ubicación, el instalador dejó de ver problemas.

9. Una vez que se hayan realizado las comprobaciones previas, el instalador le solicitará la ubicación de los archivos de instalación. Este artículo utiliza un servidor HTTP para entregar los archivos de instalación a los hosts de XenServer y, como tal, el instalador debe estar informado sobre la ubicación de estos archivos.

En los cuadros, proporcione la información necesaria sobre la ruta del servidor, así como las credenciales necesarias para conectarse y luego presione el botón "Probar" para asegurarse de que XenCenter pueda acceder a los archivos. Si se muestra la marca de verificación verde, significa que el medio de instalación se ha localizado y es utilizable.

10. Una vez que todo esté listo, haga clic en el botón "Iniciar actualización". Esto iniciará el proceso comenzando con el maestro de la piscina.

NOTA: asegúrese de que la red de administración de los hosts XenServer tenga DHCP. Cuando el instalador reinicia los hosts, intentará obtener una dirección IP a través de DHCP.

11. En este punto, sería aconsejable comenzar a almorzar o hacer un seguimiento de otras tareas. Este proceso llevará un tiempo. Si el acceso a un monitor local o sistema KVM está disponible en los hosts de XenServer, el administrador puede observar el proceso de instalación y ver si todo avanza como debería.

12. El proceso de instalación en este clúster de prueba de cuatro hosts tardó aproximadamente dos horas en completarse. Una vez que se complete la instalación, asegúrese de actualizar las herramientas de invitado en todos los invitados del grupo.

También asegúrese de verificar que el grupo se haya actualizado por completo mirando la pestaña "General" del grupo en XenCenter o conectándose manualmente a cada host XenServer.

Algunas tareas de seguimiento también pueden ser necesarias en este punto. El autor experimentó algunos problemas con las interfaces virtuales en algunos de los invitados al intentar iniciar a los invitados después de la actualización del grupo.

Resultó que algunas de las configuraciones de red para el grupo no se tradujeron en el proceso de instalación. Todos los servidores tenían 4 interfaces físicas (PIF) y en dos de los servidores un par de PIF dejó de activarse durante el arranque.

Esto causó una gran cantidad de dolor, pero afortunadamente otros habían experimentado problemas similares y fue fácil encontrar una solución. Los servidores en cuestión eran Dell Power Edge 2950 con NIC Broadcom BCM5708 integradas.

Todo lo que se necesitaba era revertir los sistemas a XenServer 6.5 y luego aplicar la actualización desde el sitio web de Dell. El autor sugiere encarecidamente asegurarse de que todas las actualizaciones de firmware se hayan aplicado a los sistemas que se actualizarán a la versión más reciente de XenServer para ayudar a prevenir problemas.

Para leer más sobre este tema, revise el tema en la página de discusión de Citrix: XenServer 7 Upgrade No Onboard Network.

Tenga en cuenta la versión de firmware y la asignación de PIF fuera de servicio.

# interface-rename -l

Tenga en cuenta que el firmware se ha actualizado y el orden de PIF también es correcto.

# interface-rename -l

13. En este punto, todos los hosts de XenServer deberían estar disponibles y volver a tener la configuración de grupo adecuada. En este punto es CRUCIAL aplicar una actualización más. Citrix lanzó un parche para abordar los problemas en los que la pérdida de datos y la corrupción eran posibles en determinadas circunstancias. ¡APLIQUE ESTE PARCHE AHORA!

Aplicación del parche crítico de XenServer 7 XS70E004

Tal como se requiere en el artículo de instalación reciente, una actualización de grupo también requerirá que este parche crítico de XenServer 7 se aplique al grupo para garantizar la integridad de los datos.

Para aplicar el parche, siga del paso 20 al paso 26 en XenServer 7 nuevo, esta guía aquí: Aplicación del parche crítico de XenServer 7.

Esto concluye el proceso de actualización/instalación de XenServer en los hosts. En este punto, los repositorios de almacenamiento y las máquinas virtuales deben volver a importarse, configurarse y probarse.

La siguiente sección cubrirá la tarea final de actualizar las herramientas de invitado de XenServer en los invitados virtuales.

Actualización de las herramientas de invitado de XenServer

1. La última tarea de seguimiento es garantizar que los invitados puedan reiniciarse, así como asegurarse de que tengan instaladas las utilidades para invitados más recientes. Esto se puede lograr fácilmente siguiendo los siguientes pasos.

2. El primer paso es adjuntar la ISO de herramientas para invitados a la unidad de DVD de uno de los invitados virtuales.

3. Una vez que XenServer adjunte guest-tools.iso al invitado, asegúrese de que el invitado reconozca el nuevo disco. Este ejemplo lo guiará a través de un invitado de Debian y la instalación de las herramientas.

En el resultado a continuación, el disco de utilidades invitado se asignó como "xvdd".

4. Este dispositivo se puede montar rápidamente utilizando la utilidad de montaje de la siguiente manera:

# mount /dev/xvdd /mnt

5. Una vez que se ha montado el dispositivo, se puede usar dpkg para instalar las nuevas herramientas para invitados de la siguiente manera:

# dpkg -i /mnt/Linux/xe-guest-utilities_7.0.0-24_all.deb

6. Durante la instalación, se instalarán los archivos adecuados y el demonio xe se reiniciará en nombre del sistema.

Para confirmar a través de XenCenter que la actualización se realizó correctamente, vaya a la pestaña "General" de la máquina invitada y busque la propiedad etiquetada "Estado de virtualización:".

¡Vaya ... Si ha sobrevivido tanto tiempo, es de esperar que XenServer 7 esté instalado, parcheado y los invitados también estén actualizados! Si tiene alguna pregunta o problema, publíquelo en los comentarios a continuación y le brindaremos ayuda lo antes posible.