Como reiniciar os agentes de gerenciamento em um host VMware ESXi

O VMware ESXi é um hipervisor que faz parte da plataforma de virtualização VMware vSphere. Todo software de virtualização pode ter problemas em algum momento. No vSphere, por exemplo, pode não ser possível conectar-se a um ESXi ou conectar um host ESXi ao vCenter, ou mensagens de erro são exibidas no vCenter e você não consegue criar VMs. Reiniciar o host ESXi pode ajudar em alguns casos. Mas será necessário desligar as máquinas virtuais (VMs) ou migrá-las para outro host, o que é um problema em um ambiente de produção. É melhor reiniciar os agentes de gerenciamento do ESXi primeiro. É muito provável que reiniciar os agentes de gerenciamento em um host ESXi possa resolver o problema.

Sintomas

Vou começar listando os sintomas comuns que indicam a necessidade de reiniciar os agentes de gerenciamento do ESXi em um servidor:

  • Não é possível conectar-se diretamente a um host ESXi ou gerenciar este host no vCenter.
  • Um host ESXi está desconectado do vCenter, mas as VMs continuam sendo executadas no host ESXi.
  • O vCenter exibe o seguinte erro ao tentar criar uma máquina virtual (VM):

A criação da máquina virtual pode falhar porque o agente não consegue recuperar as opções de criação da VM do host

  • A migração de VM entre hosts ESXi não é realizada e o seguinte erro é retornado:

Realocar máquina virtual

A operação não é permitida no estado de conexão atual do host

  • As informações sobre uma VM em execução não são exibidas na guia Resumo ao selecionar uma VM:

Uso da CPU – 0 MHz

Uso de memória – 0,00 MB

O Papel dos Agentes de Gerenciamento do ESXi

Os agentes de gerenciamento do ESXi são usados para sincronizar os componentes da VMware e tornar possível o acesso a um host ESXi a partir do vCenter Server. Os agentes da VMware estão incluídos na configuração padrão e são instalados durante a instalação do ESXi. Existem dois agentes principais no ESXi que podem precisar ser reiniciados se ocorrerem problemas de conectividade no host ESXi – hostd e vpxa.

hostd é um agente de host responsável por gerenciar a maioria das operações em um host ESXi e registrar VMs, LUNs visíveis e volumes VMFS. hostd é responsável por iniciar e parar VMs e tarefas importantes semelhantes. A VMware hostd é usada para comunicação entre o ESXi e o vmkernel.

vpxa é o agente VMware ativado em um host ESXi quando o host ESXi se junta ao vCenter Server. Também há a instância em que vpxd no vCenter Server se comunica com vpxa em hosts ESXi (vpxa é o agente VMware em execução no lado do ESXi e vpxd é o daemon em execução no lado do vCenter). vpxa se comunica com hostd em hosts ESXi. A VMware vpxa é usada como serviço intermediário para comunicação entre o vCenter e hostd.

Se você usar o Cliente vSphere e o vCenter para gerenciar um host ESXi, o vCenter passará comandos para o host ESXi através do processo vpxa em execução no host ESXi. Se você estiver conectando diretamente a um host ESXi para gerenciar o host, então a comunicação é estabelecida diretamente com o processo hostd no host para gerenciamento.

Como as VMs São Afetadas?

As máquinas virtuais não são reiniciadas ou desligadas quando você reinicia os agentes de gerenciamento do ESXi (você não precisa reiniciar as máquinas virtuais). Se você deseja garantir que as VMs não sejam afetadas, tente fazer ping em uma das VMs em execução no host ESXi e reinicie os agentes da VMware neste host ESXi. As tarefas em execução nos hosts ESXi podem ser afetadas ou interrompidas. Certifique-se de que não há trabalhos de backup de VMs da VMware em execução no host ESXi no momento em que você estiver reiniciando os agentes de gerenciamento do ESXi.

O host ESXi e as VMs nesse host são exibidos como desconectados por um momento enquanto os agentes de gerenciamento do ESXi estão sendo reiniciados no host ESXi. Atualize a página no Cliente VMware vSphere após alguns segundos e o status do host ESXi e das VMs deve estar saudável.

Para evitar problemas, leia as precauções no final do post do blog antes de usar o ESXi para reiniciar os agentes da VMware se você usar vSAN, NSX ou gráficos compartilhados em seu ambiente virtual VMware.

Reiniciando Agentes na Interface de Usuário do Console DiretoO método mais confiável para reiniciar os agentes de gerenciamento do ESXi é usar a Interface de Usuário do Console Direto (DCUI) do ESXi. Você deve ter acesso físico ao servidor ESXi com um teclado e monitor conectados ao servidor. Os serviços usados para gerenciamento de rede do ESXi podem não ser responsivos e você pode não conseguir gerenciar um host remotamente, por exemplo, via SSH.

O método mais confiável para reiniciar os agentes de gerenciamento do ESXi é usar a Interface de Usuário Direta do Console do ESXi (DCUI). Você deve ter acesso físico ao servidor ESXi com um teclado e monitor conectados ao servidor. Os serviços usados para o gerenciamento de rede do ESXi podem não estar respondendo e você pode não conseguir gerenciar um host remotamente, por exemplo, via SSH.

  1. Pressione F2 para personalizar as configurações do sistema no DCUI.
  2. Insira um nome de usuário e senha para uma conta administrativa (root é a conta padrão com permissões administrativas no ESXi).
    Nota: Por favor, seja paciente. Às vezes, você pode encontrar um atraso significativo. A demora entre a inserção das credenciais e a reação do servidor a essa ação pode levar alguns minutos. O tempo limite pode ser causado pela espera de uma resposta dos serviços de gerenciamento que estão travados e precisam ser reiniciados.

  1. Após aceitar as credenciais, você deverá ver o menu Customização do Sistema.
  2. Selecione Opções de Solução de Problemas e pressione Enter. No painel direito do DCUI, você pode ver dicas úteis após selecionar uma opção no menu.

  1. Selecione Reiniciar Agentes de Gerenciamento em Opções de Modo de Solução de Problemas e pressione Enter.

  1. A mensagem de configuração aparece sobre a reinicialização dos agentes de gerenciamento. Você pode pressionar Espaço para coletar informações extras de solução de problemas (opcional). Pressione F11 para confirmar e reiniciar os agentes de gerenciamento agora.

  1. Espere até que os agentes de gerenciamento do ESXi reiniciem e depois verifique se os problemas foram resolvidos.
    • Se reiniciar os agentes de gerenciamento no DCUI não ajudar, você pode precisar visualizar os logs do sistema e executar comandos na linha de comando do ESXi acessando o shell do ESXi diretamente ou via SSH. Você pode habilitar o shell do ESXi e o SSH no DCUI. O acesso SSH e o shell do ESXi estão desativados por padrão.
    • Para habilitar o shell do ESXi, vá para Opções de Solução de Problemas, selecione Habilitar Shell do ESXi e pressione Enter.
    • Para habilitar o acesso SSH remoto, vá para Opções de Solução de Problemas, selecione Habilitar SSH e pressione Enter.

Usando o Cliente de Hospedeiro VMware

O uso do Cliente de Hospedeiro VMware é conveniente para reiniciar o Agente do VMware vCenter, vpxa, que é usado para conectividade entre um host ESXi e o vCenter.

  1. Insira o endereço IP do seu host ESXi na barra de endereços de um navegador da web. Em seguida, insira as credenciais de uma conta administrativa no ESXi para fazer logon no VMware Host Client.
  2. No painel de Navegação, acesse Host > Gerenciar e selecione a guia Serviços.
  3. Clique com o botão direito do mouse no serviço vpxa e, no menu de contexto, pressione Reiniciar.

Se você não conseguir abrir o VMware Host Client, use outros métodos para reiniciar os agentes de gerenciamento do ESXi. Você pode iniciar o serviço TSM-SSH para habilitar o acesso remoto SSH ao host do ESXi.

Reiniciando os Agentes do VMware no Shell do ESXi (SSH)

A interface de linha de comando (CLI) do ESXi é uma ferramenta poderosa para gerenciar um host do ESXi e para solução de problemas. O acesso SSH ao host do ESXi deve ser habilitado para a gerência remota. Use um cliente SSH para se conectar a um host do ESXi remotamente e usar a interface de linha de comando. Você pode usar o PuTTY em uma máquina do Windows como o cliente SSH. Defina o endereço IP ou um hostname do servidor ESXi, selecione a porta (22 por padrão) e, em seguida, insira as credenciais administrativas no cliente SSH. Você deve então ver a sessão do console (terminal) via SSH.

Se você quiser usar o shell do ESXi diretamente (sem acesso remoto), você deve habilitar o shell do ESXi e usar um teclado e monitor fisicamente conectados ao servidor do ESXi. Leia o post de blog sobre ESXCLI para saber mais sobre as opções de linha de comando do ESXi.

Nota: Os comandos usados neste post do blog são compatíveis com o ESXi 6.x e ESXi 7.x.

  1. Liste todos os serviços disponíveis no host ESXi (opcional) com o comando:
    chkconfig –list
  2. Encontre os serviços hostd e vpxa na saída do console e verifique o status deles.

  1. Reinicie os serviços hostd e vpxa (agentes de gerenciamento) com os comandos:
    /etc/init.d/hostd restart
    /etc/init.d/vpxa restart

  1. Use este comando como alternativa para reiniciar todos os agentes de gerenciamento no host ESXi.
    services.sh restart &tail -f /var/log/jumpstart-stdout.log
    O progresso da reinicialização dos agentes VMware é exibido na saída do console.

  1. Você também pode tentar redefinir a rede de gerenciamento em uma interface VMkernel:
    esxcli network ip interface set -e false -i vmk0; esxcli network ip interface set -e true -i vmk0

A interface vmk0 é usada por padrão no ESXi. Se você tiver um nome diferente para a interface de rede de gerenciamento, use o nome da interface apropriado no comando.

Este comando complexo consiste em dois comandos básicos separados por ; (ponto e vírgula). A interface de rede de gerenciamento vmk0 é desativada pela primeira parte do comando. Quando esta parte é executada com sucesso e vmk0 está inativo, então a segunda parte do comando é executada para habilitar a interface vmk0. Como resultado, a interface de rede de gerenciamento do ESXi é reiniciada.

Usando DCUI via SSH

Se tiver acesso SSH a um host ESXi, pode abrir o DCUI na sessão SSH. Este método permite utilizar uma interface gráfica pseudo-gráfica do DCUI na consola para maior comodidade.

  1. Execute o comando para abrir o DCUI na consola/terminal:
    dcui
  2. Pressione F2 para personalizar o sistema.
  3. Selecione as opções necessárias para reiniciar os agentes de gestão VMware, conforme explicado na secção acima onde foi explicado o DCUI.

Utilizar PowerCLI para Reiniciar Agentes de Gestão VMware

O VMware PowerCLI é outra ferramenta baseada no Windows PowerShell para gerir vCenter e hosts ESXi na interface de linha de comandos.

  1. Obtenha a lista de serviços disponíveis no host ESXi:
    Get-VMHostService -VMHost 192.168.101.208 -Refresh

    • O parâmetro -Refresh é utilizado para atualizar os dados antes de imprimir esses dados na consola.
    • 192.168.101.208 é o endereço IP do host ESXi utilizado neste exemplo.
  2. Defina o nome ou endereço IP do seu host ESXi de acordo com a sua configuração. A lista de serviços exibida na saída é semelhante à lista de serviços exibida no Cliente de Host VMware em vez da lista de serviços exibida na linha de comandos do ESXi.

  1. Especifique o host e o serviço para adicionar o valor à variável $VMHostService
    $VMHostService = Get-VMHostService -VMHost 192.168.101.208 -Refresh | Where {$_.Key -eq ‘vpxa’}
    onde vpxa é o nome do serviço de Gerenciamento ESXi necessário. Você também pode definir outro serviço que deseja iniciar, parar ou reiniciar, por exemplo, TSM-SSH (o serviço do servidor SSH em um host ESXi).
  2. Reinicie o serviço vpxa usando a variável $VMHostService no comando:
    Restart-VMHostService -HostService $VMHostService -Verbose

  • Você também pode parar e iniciar manualmente um serviço:

Stop-VMHostService -HostService $VMHostService

Start-VMHostService -HostService $VMHostService

  • Você pode tentar usar o comando alternativo para reiniciar o vpxa:

Get-VMHostService -VMHost 192.168.101.208 | where {$_.Key -eq “vpxa”} | Restart-VMHostService -Confirm:$false -ErrorAction SilentlyContinue

Precauções

  • Se o Protocolo de Controle de Agregação de Links (LACP) for usado em um host ESXi que é membro de um cluster vSAN, não reinicie os agentes de gerenciamento ESXi com o comando services.sh.
    Use /etc/init.d/module restart para reiniciar os serviços independentes.
  • Se o NSX estiver configurado no seu ambiente virtual VMware, não use o comando de reinicialização /sbin/services.sh. Esse comando reinicia todos os serviços em um host ESXi e as conexões de rede são temporariamente interrompidas. Nesse caso, você deve reiniciar individualmente o vpxa, o hostd e o fdm para reiniciar os agentes de gerenciamento do ESXi no host. Se reiniciar os agentes individualmente não ajudar e você precisar executar um /sbin/services.sh reinício, então migre VMs do host ESXi atual e coloque o host no modo de manutenção.
  • Se você não sabe se o NSX está instalado em um host ESXi, você pode usar este comando para descobrir:
    /sbin/services.sh restartesxcli software vib list –rebooting-image | grep esx-*
  • Se os VIBs vsip-esx e esx-vxlan forem exibidos na saída, então o NSX para vSphere está instalado no host ESXi.
  • Se os gráficos compartilhados forem usados em um ambiente VMware View (VGPU, vSGA, vDGA), não use services.sh para reiniciar agentes ESXi. Se reiniciar agentes de gerenciamento com o comando services.sh, então o serviço xorg responsável pelos gráficos dos sistemas operacionais convidados é interrompido. Desabilitar gráficos nos sistemas operacionais convidados faz com que a infraestrutura de desktop virtual (VDI) trave onde gráficos compartilhados são usados. Você pode reiniciar manualmente o hostd e o vpxa se estiver usando gráficos compartilhados e um host ESXi não estiver entrando no modo de manutenção.

Conclusão

Reiniciar os agentes de gerenciamento do ESXi pode ajudar a resolver problemas relacionados ao status desconectado de um host ESXi no vCenter, erros que ocorrem ao se conectar diretamente a um host ESXi, problemas com ações de VM, etc. Este post do blog abordou métodos comuns para reiniciar os agentes de gerenciamento do ESXi usando o DCUI, linha de comando do ESXi, Cliente do Host VMware e VMware PowerCLI. Em geral, as máquinas virtuais não são afetadas pelo reinício dos agentes, mas mais atenção é necessária se vSAN, NSX ou gráficos compartilhados para VDI forem usados no ambiente virtual do vSphere.

Faça backup regularmente de suas VMs VMware no vSphere para proteger dados e ter a capacidade de recuperar dados e restaurar cargas de trabalho rapidamente. O NAKIVO Backup & Replication é a solução de proteção de dados tudo-em-um que suporta o backup de VMs no VMware vSphere. O produto pode ser instalado no Windows, Linux, dispositivos NAS e como um appliance virtual VMware.

Source:
https://www.nakivo.com/blog/how-to-restart-management-agents-on-a-vmware-esxi-host/