Solucionar problemas de hibernação em VMs do Linux
A hibernação de uma máquina virtual permite que você persista o estado da VM para o disco do SO. Este artigo descreve como solucionar problemas com o recurso de hibernação no Linux, problemas ao criar VMs do Linux habilitadas para hibernação e problemas com a hibernação de uma VM do Linux.
Para exibir o guia geral de solução de problemas para hibernação, confira Solucionar problemas de hibernação no Azure.
Não é possível hibernar uma VM do Linux
Se não for possível hibernar uma VM, primeiro verifique se a hibernação está habilitada na VM.
Se a hibernação estiver habilitada na VM, verifique se a hibernação está habilitada com êxito no sistema operacional convidado. Você pode verificar o status da extensão se usou a extensão para habilitar a hibernação no sistema operacional convidado.
VMs do Linux convidadas não podem hibernar
Você pode verificar o status da extensão se usou a extensão para habilitar a hibernação no sistema operacional convidado.
Se você usou a hibernation-setup-tool para configurar o convidado para hibernação, verifique se a ferramenta foi executada com êxito por meio deste comando:
systemctl status hibernation-setup-tool
Um status bem-sucedido deve retornar "Inativo (morto)", e as mensagens de log devem dizer "Trocar arquivo para hibernação de VM configurada com êxito"
Exemplo:
azureuser@:~$ systemctl status hibernation-setup-tool
● hibernation-setup-tool.service - Hibernation Setup Tool
Loaded: loaded (/lib/systemd/system/hibernation-setup-tool.service; enabled; vendor preset: enabled)
Active: inactive (dead) since Wed 2021-08-25 22:44:29 UTC; 17min ago
Process: 1131 ExecStart=/usr/sbin/hibernation-setup-tool (code=exited, status=0/SUCCESS)
Main PID: 1131 (code=exited, status=0/SUCCESS)
linuxhib2 hibernation-setup-tool[1131]: INFO: update-grub2 finished successfully.
linuxhib2 hibernation-setup-tool[1131]: INFO: udev rule to hibernate with systemd set up in /etc/udev/rules.d/99-vm-hibernation.rules. Telling udev about it.
...
...
linuxhib2 hibernation-setup-tool[1131]: INFO: systemctl finished successfully.
linuxhib2 hibernation-setup-tool[1131]: INFO: Swap file for VM hibernation set up successfully
Se o sistema operacional convidado não estiver configurado para hibernação, execute a ação apropriada para resolver o problema. Por exemplo, se o convidado não tiver configurado a hibernação devido a espaço insuficiente, redimensione o disco do sistema operacional para resolver o problema.
Extensões do Azure desabilitadas em imagens do Debian
No momento, as extensões do Azure estão desabilitadas por padrão para imagens do Debian (mais detalhes aqui: https://lists.debian.org/debian-cloud/2023/07/msg00037.html). Se você quiser habilitar a hibernação para VMs baseadas em Debian por meio da LinuxHibernationExtension, poderá reabilitar o suporte para extensões de VM por meio de dados personalizados do cloud-init:
#!/bin/sh
sed -i -e 's/^Extensions\.Enabled =.* $/Extensions.Enabled=y/" /etc/waagent.conf
Como alternativa, você pode habilitar a hibernação no convidado instalando a ferramenta de instalação de hibernação em sua VM do Linux.