Cómo Reiniciar los Agentes de Gestión en un Host VMware ESXi
VMware ESXi es un hipervisor que forma parte de la plataforma de virtualización VMware vSphere. Todo software de virtualización puede tener problemas en algún momento. En vSphere, por ejemplo, es posible que no pueda conectarse a un ESXi o conectar un host ESXi a vCenter, o que aparezcan mensajes de error en vCenter y no pueda crear máquinas virtuales. Reiniciar el host ESXi puede ayudarle en algunos casos. Pero tendrá que apagar máquinas virtuales (VM) o migrarlas a otro host, lo que supone un problema en un entorno de producción. Es mejor reiniciar primero los agentes de gestión de ESXi. Es muy probable que el reinicio de los agentes de gestión en un host ESXi pueda resolver el problema.
Síntomas
Permítanme comenzar enumerando los síntomas comunes de la necesidad de reiniciar los agentes de gestión de ESXi en un servidor:
- No es posible conectarse a un host ESXi directamente o gestionar este host bajo vCenter.
- Un host ESXi se desconecta de vCenter, pero las máquinas virtuales siguen ejecutándose en el host ESXi.
- vCenter muestra el siguiente error cuando se intenta crear una máquina virtual (VM):
La creación de máquinas virtuales puede fallar porque el agente no puede recuperar las opciones de creación de máquinas virtuales del host.
- No se realiza la migración de máquinas virtuales entre hosts ESXi y se devuelve el siguiente error:
Reubicar la máquina virtual
La operación no está permitida en el estado de conexión actual del host
- La información sobre una máquina virtual en ejecución no se muestra en la pestaña Resumen cuando se selecciona una máquina virtual:
Uso de la CPU – 0 MHz
Uso de memoria – 0,00 MB
El papel de los agentes de gestión de ESXi
Los agentes de gestión de ESXi se utilizan para sincronizar los componentes de VMware y permiten acceder a un host ESXi desde vCenter Server. Los agentes de VMware se incluyen en la configuración por defecto y se instalan al instalar ESXi. Hay dos agentes principales en ESXi que pueden necesitar ser reiniciados si ocurren problemas de conectividad en el host ESXi – hostd y vpxa.
hostd es un agente de host responsable de gestionar la mayoría de las operaciones en un host ESXi y registrar VMs, LUNs visibles y volúmenes VMFS. hostd es responsable de arrancar y parar las máquinas virtuales y otras tareas importantes similares. VMware hostd se utiliza para la comunicación entre ESXi y vmkernel.
vpxa es el agente de VMware que se activa en un host ESXi cuando éste se une a vCenter Server. También existe la instancia en la que vpxd en vCenter Server se comunica con vpxa en los hosts ESXi(vpxa es el agente de VMware que se ejecuta en el lado ESXi y vpxd es el demonio que se ejecuta en el lado vCenter). vpxa se comunica con hostd en los hosts ESXi. VMware vpxa se utiliza como servicio intermedio para la comunicación entre vCenter y hostd.
Si utiliza vSphere Client y vCenter para gestionar un host ESXi, vCenter pasa comandos al host ESXi a través del proceso vpxa que se ejecuta en el host ESXi. Si se conecta directamente a un host ESXi para gestionarlo, la comunicación se establece directamente con el proceso hostd del host para su gestión.
¿Cómo se ven afectadas las máquinas virtuales?
Las máquinas virtuales no se reinician ni se apagan al reiniciar los agentes de gestión de ESXi (no es necesario reiniciar las máquinas virtuales). Si desea asegurarse de que las máquinas virtuales no se ven afectadas, intente hacer ping a una de las máquinas virtuales que se ejecutan en el host ESXi y reinicie los agentes VMware en este host ESXi. Las tareas que se ejecutan en los hosts ESXi pueden verse afectadas o interrumpidas. Asegúrese de que no hay ningún job de backups de VMware VM ejecutándose en el host ESXi en el momento en que está reiniciando los agentes de gestión de ESXi.
El host ESXi y las máquinas virtuales en ese host se muestran como desconectadas por un momento mientras se reinician los agentes de administración ESXi en el host ESXi. Actualice la página en VMware vSphere Client después de unos segundos y el estado del host ESXi y de las máquinas virtuales debería ser correcto.
Para evitar problemas, lea las precauciones al final de la entrada del blog antes de utilizar ESXi para reiniciar los agentes VMware si utiliza vSAN, NSX o gráficos compartidos en su entorno virtual VMware.
Reinicio de agentes en la interfaz de usuario de la consola directa
El método más fiable para reiniciar los agentes de gestión de ESXi es utilizar la interfaz de usuario de consola directa de ESXi (DCUI). Debe tener acceso físico al servidor ESXi con un teclado y un monitor conectados al servidor. Los servicios utilizados para la gestión de la red ESXi podrían no ser responsables y es posible que no pueda gestionar un host de forma remota, por ejemplo, a través de SSH.
- Pulsa F2 para personalizar los ajustes del sistema en la DCUI.
- Introduzca un nombre de usuario y una contraseña para una cuenta administrativa (root es la cuenta por defecto con permisos administrativos en ESXi).
Nota: Tenga paciencia. A veces puedes encontrarte con un retraso importante. El tiempo que transcurre entre la introducción de las credenciales y la reacción del servidor a esta acción puede ser de algunos minutos. El tiempo de espera puede deberse a la espera de una respuesta de los servicios de gestión colgados que deben reiniciarse.
- Tras aceptar las credenciales, debería ver el menú Personalización del sistema.
- Seleccione Opciones de solución de problemas y pulse Intro. En el panel derecho de la DCUI, puedes ver consejos útiles después de seleccionar una opción en el menú.
- Seleccione Reiniciar Agentes de Gestión en Opciones del Modo de Solución de Problemas y pulse Intro.
- Aparece el mensaje de configuración relativo al reinicio de los agentes de gestión. Puede pulsar la barra espaciadora para obtener información adicional sobre la solución de problemas (opcional). Pulsa F11 para confirmar y reinicia ahora los agentes de gestión.
- Espere a que se reinicien los agentes de gestión de ESXi y compruebe si se han resuelto los problemas.
- Si reiniciar los agentes de gestión en la DCUI no ayuda, es posible que tenga que ver los registros del sistema y ejecutar comandos en la línea de comandos de ESXi accediendo al shell de ESXi directamente o a través de SSH. Puede habilitar el shell ESXi y SSH en la DCUI. El acceso SSH y el shell ESXi están desactivados por defecto.
- Para activar ESXi Shell, vaya a Opciones de solución de problemas, seleccione Activar ESXi Shell y pulse Intro.
- Para habilitar el acceso remoto SSH, vaya a Opciones de solución de problemas, seleccione Habilitar SSH y pulse Intro.
Uso de VMware Host Client
El uso de VMware Host Client es conveniente para reiniciar VMware vCenter Agent, vpxa, que se utiliza para la conectividad entre un host ESXi y vCenter.
- Introduzca la dirección IP de su host ESXi en la barra de direcciones de un navegador web. A continuación, introduzca las credenciales de una cuenta administrativa en ESXi para iniciar sesión en VMware Host Client.
- En el panel de navegación, vaya a Host > Gestionar, y seleccione la pestaña Servicios.
- Haga clic con el botón derecho en el servicio vpxa y, en el menú contextual, pulse Reiniciar.
Si no puede abrir VMware Host Client, utilice otros métodos para reiniciar los agentes de gestión de ESXi. Puede iniciar el servicio TSM-SSH para habilitar el acceso SSH remoto al host ESXi.
Reinicio de Agentes VMware en ESXi Shell (SSH)
La interfaz de línea de comandos (CLI) de ESXi es una potente herramienta para gestionar un host ESXi y solucionar problemas. El acceso SSH al host ESXi debe estar habilitado para la gestión remota. Utilice un cliente SSH para conectarse a un host ESXi de forma remota y utilizar la interfaz de línea de comandos. Puede utilizar PuTTY en una máquina Windows como cliente SSH. Defina la dirección IP o un nombre de host del servidor ESXi, seleccione el puerto (22 por defecto) y, a continuación, introduzca las credenciales administrativas en el cliente SSH. A continuación, debería ver la sesión de consola (terminal) a través de SSH.
Si desea utilizar ESXi shell directamente (sin acceso remoto), debe habilitar ESXi shell y utilizar un teclado y un monitor conectados físicamente al servidor ESXi. Lea la entrada del blog sobre ESXCLI para obtener más información sobre las opciones de línea de comandos de ESXi.
Nota: Los comandos utilizados en esta entrada del blog son compatibles con ESXi 6.x y ESXi 7.x.
- Enumere todos los servicios disponibles en el host ESXi (opcional) con el comando:
chkconfig --list
- Busque los servicios hostd y vpxa en la salida de la consola y compruebe su estado.
- Reinicie los servicios hostd y vpxa (agentes de gestión) con los comandos:
/etc/init.d/hostd restart
/etc/init.d/vpxa restart
- Utilice este comando como alternativa para reiniciar todos los agentes de gestión en el host ESXi.
services.sh restart &tail -f /var/log/jumpstart-stdout.log
El progreso del reinicio de los agentes VMware se muestra en la salida de la consola.
- También puede intentar restablecer la red de gestión en una interfaz VMkernel:
esxcli network ip interface set -e false -i vmk0; esxcli network ip interface set -e true -i vmk0
La interfaz vmk0 se utiliza por defecto en ESXi. Si tiene un nombre diferente para la interfaz de red de gestión, utilice el nombre de interfaz apropiado en el comando.
Este comando complejo consta de dos comandos básicos separados por ; (punto y coma). La interfaz de red de gestión vmk0 se desactiva con la primera parte del comando. Cuando esta parte se ejecuta correctamente y vmk0 está caído, entonces se ejecuta la segunda parte del comando para habilitar la interfaz vmk0. Como resultado, la interfaz de red de gestión ESXi se reinicia.
Uso de DCUI a través de SSH
Si tiene acceso SSH a un host ESXi, puede abrir la DCUI en la sesión SSH. Este método le permite utilizar una interfaz de usuario pseudo-gráfica de la DCUI en la consola para mayor comodidad.
- Ejecuta el comando para abrir la DCUI en la consola/terminal:
dcui
- Pulse F2 para personalizar el sistema.
- Seleccione las opciones necesarias para reiniciar los agentes de gestión de VMware como se explica en la sección anterior donde se explicó la DCUI.
Uso de PowerCLI para reiniciar los agentes de gestión de VMware
VMware PowerCLI es otra herramienta basada en Windows PowerShell para gestionar vCenter y hosts ESXi en la interfaz de línea de comandos.
- Obtener la lista de servicios disponibles en el host ESXi:
Get-VMHostService -VMHost 192.168.101.208 -Refresh
- El parámetro -Refresh se utiliza para refrescar los datos antes de imprimirlos en la consola.
- 192.168.101.208 es la dirección IP del host ESXi utilizado en este ejemplo.
- Defina el nombre o la dirección IP de su host ESXi según su configuración. La lista de servicios mostrada en la salida es similar a la lista de servicios mostrada en VMware Host Client en lugar de la lista de servicios mostrada en la línea de comandos de ESXi.
- Especifique el host y el servicio para añadir el valor a la $VMHostService variable
$VMHostService = Get-VMHostService -VMHost 192.168.101.208 -Refresh | Donde {$_.Key -eq 'vpxa'}
donde vpxa es el nombre del servicio ESXi Management necesario. También puede definir otro servicio que desee iniciar, detener o reiniciar, por ejemplo, TSM-SSH (el servicio de servidor SSH en un host ESXi). - Reinicie el servicio vpxa utilizando la variable $VMHostService en el comando:
Restart-VMHostService -HostService $VMHostService -Verbose
- También puede detener e iniciar manualmente un servicio:
Stop-VMHostService -HostService $VMHostService
Start-VMHostService -HostService $VMHostService
- Puedes intentar usar el comando alternativo para reiniciar vpxa:
Get-VMHostService -VMHost 192.168.101.208 | where {$_.Key -eq "vpxa"} | Restart-VMHostService -Confirm:$false -ErrorAction SilentlyContinue
Precauciones
- Si se utiliza Link Aggregation Control Protocol (LACP) en un host ESXi miembro de un cluster vSAN, no reinicie los agentes de gestión ESXi con el comando
services.sh
comando.
Utilice/etc/init.d/module restart
para reiniciar los servicios independientes. - Si NSX está configurado en su entorno virtual VMware, no utilice el comando
/sbin/services.sh
restart. Este comando reinicia todos los servicios en un host ESXi y las conexiones de red se interrumpen temporalmente. En este caso, debe reiniciar individualmente vpxa, hostd y fdm para reiniciar los agentes de gestión de ESXi en el host. Si reiniciar los agentes individualmente no ayuda y necesita ejecutar un reinicio/sbin/services.sh
, entonces migre las máquinas virtuales del host ESXi actual y ponga el host en modo de mantenimiento. - Si no sabe si NSX está instalado en un host ESXi, puede utilizar este comando para averiguarlo:
/sbin/services.sh restartesxcli software vib list --rebooting-image | grep esx-*
- Si vsip-esx y esx-vxlan VIBs se muestran en la salida, entonces NSX para vSphere está instalado en el host ESXi.
- Si se utilizan gráficos compartidos en un entorno VMware View (VGPU, vSGA, vDGA), no utilice
services.sh
para reiniciar los agentes ESXi. Si reinicia los agentes de gestión con el comando services.sh se detendrá el servicio xorg, responsable de los gráficos de los sistemas operativos invitados. Deshabilitar los gráficos en los sistemas operativos invitados hace que la infraestructura de escritorio virtual(VDI) se bloquee cuando se utilizan gráficos compartidos. Puede reiniciar hostd y vpxa manualmente si está utilizando gráficos compartidos y un host ESXi no ha entrado en modo de mantenimiento.
Conclusión
El reinicio de los agentes de gestión de ESXi puede ayudarle a resolver problemas relacionados con el estado desconectado de un host ESXi en vCenter, errores que se producen al conectarse directamente a un host ESXi, problemas con las acciones de las máquinas virtuales, etc. Esta entrada del blog ha cubierto los métodos comunes para reiniciar los agentes de gestión de ESXi mediante el uso de la DCUI, la línea de comandos de ESXi, VMware Host Client, y VMware PowerCLI. En general, las máquinas virtuales no se ven afectadas por el reinicio de los agentes, pero es necesario prestar más atención si se utilizan vSAN, NSX o gráficos compartidos para VDI en el entorno virtual de vSphere.
Haga backup de sus máquinas virtuales VMware en vSphere con regularidad para proteger los datos y tener la capacidad de recuperar rápidamente los datos y restaurar las cargas de trabajo. NAKIVO Backup & Replication es la solución de protección de datos todo en uno que permite hacer backups de máquinas virtuales en VMware vSphere. El producto puede instalarse en Windows, Linux, dispositivos NAS y como appliance virtual de VMware.