Como encerrar corretamente um host do Linux VMware Server

2

Em nosso laboratório, temos um servidor rodando Ubuntu Linux 8.04.4 x64, com o VMware Server 2.1 hospedando 4 VMs.

Eu tenho uma grande preocupação no que diz respeito a desligar o servidor host. Principalmente, como posso garantir que as VMs convidadas estão sendo desligadas com segurança?

No console da interface da web do VMware, eu ativei:

  • "Permitir que máquinas virtuais iniciem e parem automaticamente com o sistema"
  • Ativei o Atraso de inicialização padrão por 15 segundos junto com a opção "Iniciar próxima VM imediatamente se a opção Iniciar VMware Tools" estiver marcada
  • ativei o Atraso de desligamento padrão com um atraso de desligamento de 60 segundos e uma ação de desligamento de "Desligar convidado"

Todas as VMs têm o VMware Tools instalado e funcionando corretamente. Todas as VMs são movidas para a seção "Ordem especificada" de "Ordem de inicialização", portanto, ao ligar o servidor novamente, todas essas VMs devem ser iniciadas novamente nessa ordem especificada.

Quando fui desligar o servidor, usei o comando shutdown -h now . Com base nas configurações inseridas acima, esperava um desligamento de 4 minutos, pois há uma opção para atrasar o desligamento de cada VM em 60 segundos. No entanto, isso é não o que aconteceu. Em vez disso, o desligamento do servidor em menos de um minuto.

Quando liguei o servidor novamente, apenas duas VMs foram carregadas corretamente. Os outros 2 mostraram o seguinte erro:

"Power on Virtual Machine" failed to complete

If these problems problems persist, please contact your system administrator.

Details: Cannot open the disk '[location to .vmdk]' or one of the snapshot disks it depends on. Reason: Failed to lock the file.

Obviamente, se esse erro ocorreu, é claro para mim que as VMs não foram desligadas corretamente ou que o servidor foi desligado antes que as VMs fossem completamente desligadas. Corrigi o erro acima, excluindo os arquivos .lck nos respectivos diretórios de VM.

Como eu saberia se as VMs foram desligadas corretamente? Verifiquei os logs do servidor VMware, mas eles parecem apenas exibir os logs de quando o serviço vmware-mgmt está em execução na sessão atual. Estou na maior parte executando Linux VM's, então existe uma maneira fácil de saber se um servidor foi ou não corretamente encerrado no Linux?

Obrigado a todos pela ajuda!

    
por Phanto 18.04.2010 / 18:57

2 respostas

3

Se você usar o shutdown -h now, ele será encerrado imediatamente, independentemente das "configurações padrão", já que você substitui as configurações com o parâmetro.

Dito isto, da última vez que desligamos nosso ambiente, fizemos cada VM separadamente, esperamos até que todas elas estivessem desligadas e, em seguida, desligássemos o host (neste caso, ESXi). Isso permite que você verifique se há erros durante o desligamento das VMs e, no nosso caso, encerre os servidores Web e, em seguida, os servidores de banco de dados de um aplicativo específico para evitar erros.

Fazemos o mesmo quando iniciamos e, novamente, garantimos que não há erros.

Acho importante descobrir um procedimento adequado de desligamento e inicialização no caso de ambientes de produção.

Dito isso, acho que você precisará fornecer mais informações sobre quais VMs elas são. Eu acho que o VMware Server não será capaz de dizer a diferença entre um desligamento com erros e outro sem erros.

P.S. Por que não usar o ESXi para começar?

    
por 18.04.2010 / 19:09
1

SSH em cada VM e emita shutdown -h now . Essa é a maneira correta de desligar uma máquina linux, virtual ou não.

    
por 18.04.2010 / 19:10