Como detectar máquinas virtuais congeladas

5

Em plataformas em nuvem, você geralmente ouve que, devido à alta carga em VMs vizinhas, discos em excesso de Ethernet, backups ou migração ao vivo para outro hardware, a máquina virtual pode "congelar" por um momento.

Tenho a suspeita de que isso está acontecendo com uma das nossas máquinas virtuais do Ubuntu em um provedor de nuvem que não estou querendo ver publicamente.

Toda noite não está disponível para serviços de monitoramento externos. A máquina em si parece saudável em termos de carga, tráfego, etc. O provedor sugere que a rede está bem.

Gostaria de poder (des) provar que congelamentos de VM estão causando esses pagers.

Uma ideia que tive foi escrever a data em um registro a cada segundo, e depois de um curto momento de indisponibilidade, ver se pulamos uma 'batida'. No entanto, isso parece falho porque o que acontece se a VM mantém seu próprio relógio e permite um desvio do hardware do host. Se o nosso relógio interno congela junto com a VM, ainda teremos uma boa sequência de segundos nesse arquivo de log e um relógio que está atrasado no tempo real.

Existe uma maneira / ferramenta melhor que eu possa usar para determinar o congelamento de máquinas?

Eu diria que em tempo real e nosso tempo seria um recado, então, novamente, há outras causas para relógios à deriva.

    
por kvz 27.11.2014 / 15:20

3 respostas

1

Eu acho que você está no caminho certo ao escrever o tempo em um arquivo de log a cada segundo, mas pelas razões que você apontou que podem não ser confiáveis. Além de gravar a hora em um disco local, por que o seu processo do cron não alcança um sistema estável conhecido na rede e esse sistema registra a solicitação no disco? Algo tão simples quanto o wget poderia funcionar presumindo que você está fazendo uma solicitação http para um sistema e esse sistema está registrando as solicitações. É claro que você gostaria de ter o sistema de destino relativamente "próximo" do sistema que você suspeita ser problemático em termos de rede, mas isso pode ajudá-lo a obter pelo menos alguns dados de depuração.

    
por 28.11.2014 / 03:13
0

Você pode usar o Nagios, uma solução de TI para monitoramento. Com isso, você pode verificar a carga da CPU (e muitas outras coisas) e receber um alerta para o seu correio ou pelo console da web. Você precisa instalar o servidor em seu PC e o executor de plug-in remoto na Máquina Virtual.

Aqui está um tutorial bem legal: link

    
por 27.11.2014 / 15:52
0

Eu faria ping em uma VM de um host externo. Se a VM congelar, sua pilha de rede também deve aparecer e deve aparecer em uma sequência de pings registrados.

    
por 28.11.2014 / 03:28