Configurar alta disponibilidad
La alta disponibilidad intenta proteger la carga de trabajo de su máquina virtual en caso de fallo del host o del hardware.
Este artículo describe las tareas a realizar para configurar la alta disponibilidad. Para obtener información sobre los conceptos, requisitos y comportamientos esperados de la alta disponibilidad, consulte Alta disponibilidad.
1. Configure su pool para alta disponibilidad
Para que un pool sea compatible con la alta disponibilidad, debe cumplir ciertos requisitos:
-
Asegúrese de que su pool sea homogéneo, contenga tres o más hosts y que todos los hosts estén en línea. Para obtener más información, consulte Crear un pool.
-
Configure una interfaz dedicada y enlazada para la red de administración del pool y asegúrese de que esta red permita el tráfico UDP a través del puerto 694. Para obtener más información, consulte Crear enlaces de NIC en pools de recursos.
-
Configure direcciones IP estáticas para todos los hosts del pool.
-
Configure almacenamiento compartido para todos los hosts del pool. Para obtener más información, consulte Crear un SR.
-
Asegúrese de que un repositorio de almacenamiento compartido en el pool esté en una LUN iSCSI, NFS o Fibre Channel que cumpla los siguientes requisitos:
- 4 GB o más de tamaño.
- Tiene comunicación de almacenamiento resiliente: Para SRs iSCSI y Fibre Channel, configure la multiruta. Para SRs NFS, utilice una red enlazada resiliente como su red de almacenamiento.
Este SR se utiliza como SR de latido.
2. Prepare sus máquinas virtuales para alta disponibilidad
Complete estos pasos para cualquier máquina virtual de su pool que desee proteger con alta disponibilidad:
-
Asegúrese de que la VM sea ágil:
-
Asegúrese de que sus discos virtuales estén en almacenamiento compartido.
Si los discos no están en almacenamiento compartido, use el siguiente comando para moverlos:
xe vm-copy uuid=<vm_uuid> new-name-label=<name_for_copy> sr-uuid=<uuid_of_sr>Establezca
sr-uuiden el UUID del almacenamiento compartido del pool. -
Asegúrese de que la VM no esté conectada a una unidad de DVD local.
-
Identifique si la VM no tiene unidades de CD/DVD vacías escribiendo lo siguiente:
xe vbd-list type=CD empty=false vm-uuid=<vm_uuid> <!--NeedCopy-->Si hay una unidad conectada, esto devuelve su información. Tenga en cuenta
uuid, que es el primer elemento de la lista. -
Para vaciar las unidades de CD/DVD de la VM, escriba lo siguiente:
xe vbd-eject uuid=<uuid> <!--NeedCopy-->
-
-
Asegúrese de que sus interfaces de red virtuales estén en redes de todo el pool.
-
Asegúrese de que la VM cumpla los requisitos para la migración en vivo. Para obtener más información, consulte Requisitos de migración.
-
-
Especifique un conjunto de prioridades que determinen qué VM tienen la máxima prioridad de reinicio cuando un pool está sobrecargado.
Establezca el valor de
ha-restart-priorityen una de las siguientes opciones:-
restartpara que la VM se reinicie en otro host del pool, siempre que el pool no esté sobrecargado. XenServer reintenta este reinicio hasta que tiene éxito. -
best-effortpara realizar un único intento de reiniciar la VM en otro host del pool. XenServer realiza este intento solo después de que todas las VM protegidas se hayan reiniciado correctamente.
Al establecer el valor para
orderde las máquinas virtuales, configure las máquinas virtuales de mayor prioridad para que tengan el orden de inicio más bajo. El valor predeterminado para esta configuración es 0 y las máquinas virtuales con este orden de inicio se inician primero.xe vm-param-set uuid=<vm_uuid> ha-restart-priority=<priority> order=<start_order> <!--NeedCopy-->En su lugar, puede usar XenCenter para configurar estos ajustes en sus máquinas virtuales. Para obtener más información, consulte Opciones de inicio.
-
3. Habilitar la alta disponibilidad en su pool de XenServer®
Puede habilitar la alta disponibilidad en un pool utilizando XenCenter o la interfaz de línea de comandos (CLI). Para obtener información sobre cómo usar XenCenter para habilitar la alta disponibilidad, consulte Habilitar alta disponibilidad.
Para habilitar la alta disponibilidad mediante la CLI de xe:
-
Para habilitar la alta disponibilidad en el pool y, opcionalmente, especificar un tiempo de espera, ejecute el siguiente comando:
xe pool-ha-enable heartbeat-sr-uuids=<sr uuid> ha-config:timeout=<timeout_in_seconds> <!--NeedCopy-->El tiempo de espera configurado por este comando solo se aplica a esta habilitación de alta disponibilidad. Si no especifica un tiempo de espera, el valor predeterminado es de 60 segundos. Para cambiar este tiempo de espera predeterminado para su pool, consulte Configurar el tiempo de espera de alta disponibilidad.
-
Calcule el número máximo de hosts que pueden fallar antes de que haya recursos insuficientes para ejecutar todas las máquinas virtuales protegidas en el pool ejecutando el siguiente comando:
xe pool-ha-compute-max-host-failures-to-tolerate <!--NeedCopy-->El número devuelto indica cuántas fallas de host son actualmente posibles en el pool sin pérdida de la garantía de actividad para las máquinas virtuales protegidas. Este valor puede cambiar a medida que cambian las condiciones en el pool.
-
Especifique el número de fallas de host a tolerar que sea menor o igual al valor dado en el paso anterior.
xe pool-param-set ha-host-failures-to-tolerate=<failure_value> uuid=<pool uuid> <!--NeedCopy-->El número de fallas a tolerar determina cuándo se envía una alerta. El sistema vuelve a calcular un plan de conmutación por error a medida que cambia el estado del pool. Utiliza este cálculo para identificar la capacidad del pool y cuántas fallas más son posibles sin pérdida de la garantía de actividad para las máquinas virtuales protegidas. Se genera una alerta del sistema cuando este valor calculado cae por debajo del valor especificado.
Configurar el tiempo de espera de alta disponibilidad
El tiempo de espera es el período durante el cual la red o el almacenamiento no son accesibles para los hosts de su pool. Si algún host de XenServer no puede acceder a la red o al almacenamiento dentro del período de tiempo de espera, puede auto-cercarse y reiniciarse. El tiempo de espera predeterminado es de 60 segundos. Sin embargo, puede cambiar este valor estableciendo un tiempo de espera de alta disponibilidad predeterminado para su pool:
xe pool-param-set uuid=<pool uuid> other-config:default_ha_timeout=<timeout in seconds>
<!--NeedCopy-->
Si habilita la alta disponibilidad usando XenCenter® en lugar de la CLI de xe, este valor predeterminado sigue aplicándose.
Eliminar la protección de alta disponibilidad de una máquina virtual
Para deshabilitar las funciones de alta disponibilidad para una VM, utilice el siguiente comando:
xe vm-param-set uuid=<vm_uuid> ha-restart-priority=
Este comando conserva la configuración del orden de inicio. Puede volver a habilitar la alta disponibilidad para esta VM configurando el parámetro ha-restart-priority en restart o best-effort según corresponda.
Configurar el comportamiento de reinicio para las VM que se apagan internamente
Si una VM está protegida por HA, se reinicia por defecto cada vez que se apaga. Este comportamiento incluye los apagados internos debidos a un fallo de la VM o a un apagado limpio desde el sistema operativo invitado.
Puede cambiar este comportamiento para asegurarse de que las VM del grupo con HA habilitada solo se reinicien si el host en el que se ejecutan falla o es cercado, y que en los casos de apagado interno una VM permanezca apagada.
Para configurar las VM protegidas por HA para que no se reinicien automáticamente después de un apagado interno, establezca el valor ha-reboot-vm-on-internal-shutdown en false:
xe pool-param-set uuid=<pool_uuid> ha-reboot-vm-on-internal-shutdown=false
Para configurar las VM protegidas por HA para que se reinicien automáticamente después de un apagado interno, establezca el valor ha-reboot-vm-on-internal-shutdown en true:
xe pool-param-set uuid=<pool_uuid> ha-reboot-vm-on-internal-shutdown=true
Recuperar un host inalcanzable
Si por alguna razón un host no puede acceder al archivo de estado de alta disponibilidad, es posible que un host se vuelva inalcanzable. Para recuperar su instalación de XenServer, es posible que tenga que deshabilitar la alta disponibilidad utilizando el comando host-emergency-ha-disable en el host:
xe host-emergency-ha-disable --force
<!--NeedCopy-->
Si el host era el coordinador del grupo, se inicia con normalidad con la alta disponibilidad deshabilitada. Los miembros del grupo se reconectan y deshabilitan automáticamente la alta disponibilidad. Si el host era un miembro del grupo y no puede contactar al coordinador del grupo, es posible que tenga que realizar una de las siguientes acciones:
-
Forzar el reinicio del host como coordinador del grupo (
xe pool-emergency-transition-to-master)xe pool-emergency-transition-to-master uuid=<host uuid> <!--NeedCopy--> -
Indicar al host dónde está el nuevo coordinador del grupo (
xe pool-emergency-reset-master):xe pool-emergency-reset-master master-address=<new pool coordinator hostname> <!--NeedCopy-->
Cuando todos los hosts se hayan reiniciado correctamente, vuelva a habilitar la alta disponibilidad:
xe pool-ha-enable heartbeat-sr-uuid=<sr uuid>
<!--NeedCopy-->
Apagar un host cuando la alta disponibilidad está habilitada
Tenga especial cuidado al apagar o reiniciar un host para evitar que el mecanismo de alta disponibilidad asuma que el host ha fallado. Para apagar un host de forma limpia cuando la alta disponibilidad está habilitada, deshabilite el host, evacúe el host y, finalmente, apáguelo utilizando XenCenter o la CLI. Para apagar un host en un entorno donde la alta disponibilidad está habilitada, ejecute estos comandos:
xe host-disable host=<host name>
xe host-evacuate uuid=<host uuid>
xe host-shutdown host=<host name>
<!--NeedCopy-->
Apagar una VM protegida por alta disponibilidad
Cuando una VM está protegida bajo un plan de alta disponibilidad y configurada para reiniciarse automáticamente, no se puede apagar mientras esta protección esté activa. Para apagar una VM, primero deshabilite su protección de alta disponibilidad y luego ejecute el comando de la CLI.
xe vm-param-set uuid=<vm_uuid> ha-restart-priority=
xe vm-shutdown uuid=<vm_uuid>
<!--NeedCopy-->
XenCenter le ofrece un cuadro de diálogo para automatizar la desactivación de la protección cuando selecciona el botón Apagar de una VM protegida.
Nota:
Si apaga una VM desde el sistema operativo invitado y la VM está protegida, se reinicia automáticamente bajo las condiciones de fallo de alta disponibilidad. El reinicio automático ayuda a garantizar que un error del operador no resulte en que una VM protegida se apague accidentalmente. Si desea apagar esta VM, primero deshabilite su protección de alta disponibilidad.
En este artículo
- 1. Configure su pool para alta disponibilidad
- 2. Prepare sus máquinas virtuales para alta disponibilidad
- 3. Habilitar la alta disponibilidad en su pool de XenServer®
- Configurar el tiempo de espera de alta disponibilidad
- Eliminar la protección de alta disponibilidad de una máquina virtual
- Configurar el comportamiento de reinicio para las VM que se apagan internamente
- Recuperar un host inalcanzable
- Apagar un host cuando la alta disponibilidad está habilitada
- Apagar una VM protegida por alta disponibilidad