Hibernando máquinas virtuais Linux

Aplica-se a: ✔️ Linux VMs

A hibernação permite pausar VMs que não estão sendo usadas e economizar em custos de computação. É um recurso eficaz de gerenciamento de custos para cenários como:

  • Áreas de trabalho virtuais, servidores de desenvolvimento/teste e outros cenários em que as VMs não precisam ser executadas 24 horas por dia, 7 dias por semana.
  • Sistemas com longos tempos de arranque devido a aplicações que consomem muita memória. Esses aplicativos podem ser inicializados em VMs e hibernados. Essas VMs "pré-aquecidas" podem ser iniciadas rapidamente quando necessário, com os aplicativos já ativos e em execução no estado desejado.

Como funciona a hibernação

Para saber como funciona a hibernação, consulte a visão geral da hibernação.

Configurações suportadas

O suporte à hibernação é limitado a determinados tamanhos de VM e versões de SO. Certifique-se de que tem uma configuração suportada antes de utilizar a hibernação.

Para obter uma lista de tamanhos de VM compatíveis com hibernação, consulte a seção Tamanhos de VM suportados na visão geral de hibernação.

Distribuições Linux suportadas

Os seguintes sistemas operativos Linux suportam a hibernação:

  • Ubuntu 22.04 LTS
  • Ubuntu 20.04 LTS
  • Ubuntu 18.04 LTS
  • Debian 11
  • Debian 10 (com kernel de backports)
  • RHEL 9.0 e superior (com versão mínima do kernel 5.14.0-70)
  • RHEL 8.3 e superior (com versão mínima do kernel 4.18.0.240)

Pré-requisitos e limitações de configuração

  • A hibernação não é suportada com o Trusted Launch for Linux VMs

Para limitações gerais, limitações de recursos do Azure com suporte a tamanhos de VM e pré-requisitos de recursos, confira a seção "Configurações com suporte" na visão geral de hibernação.

Criando uma VM Linux com hibernação habilitada

Para hibernar uma VM, você deve primeiro habilitar o recurso na VM.

Para habilitar a hibernação durante a criação da VM, você pode usar o portal do Azure, a CLI, o PowerShell, os modelos ARM e a API.

Para habilitar a hibernação no portal do Azure, marque a caixa 'Habilitar hibernação' durante a criação da VM.

Captura de ecrã da caixa de verificação no portal do Azure para ativar a hibernação durante a criação de uma nova VM Linux.

Depois de criar uma VM com a hibernação habilitada, você precisa configurar o SO convidado para hibernar com êxito sua VM.

Ativando a hibernação em uma VM Linux existente

Para habilitar a hibernação em uma VM existente, você pode usar a CLI do Azure, o PowerShell ou a API REST. Antes de continuar, certifique-se de que a versão do SO convidado suporta a hibernação no Azure. Para obter mais informações, consulte as versões suportadas do sistema operacional.

Para habilitar a hibernação em uma VM existente usando a CLI do Azure, primeiro desaloque sua VM com az vm deallocate. Depois que a VM for deslocalizada, atualize o disco do sistema operacional e a VM.

  1. Atualize o disco do SO para definir supportsHibernation como true. Se supportsHibernation já estiver definido como true, você pode pular esta etapa e prosseguir para a próxima etapa.

       az disk update --resource-group myResourceGroup \
       --name MyOSDisk \   
       --set supportsHibernation=true 
    
  2. Atualize a VM para habilitar a hibernação.

       az vm update --resource-group myResourceGroup \
       --name myVM \
       --enable-hibernation true 
    
  3. Inicie a VM e, em seguida, prossiga para configurar a hibernação no SO convidado.

       az vm start --resource-group myResourceGroup \
       --name myVM \      
    

Configurando a hibernação no SO convidado

Depois de garantir que sua configuração de VM seja suportada, você pode habilitar a hibernação em sua VM Linux usando uma das duas opções:

Opção 1: LinuxHibernateExtension

Opção 2: hibernação-configuração-ferramenta

LinuxHibernateExtension

Nota

Se você já instalou a ferramenta hibernation-setup, não precisa instalar a LinuxHibernateExtension. Estes são métodos redundantes para habilitar a hibernação em uma VM Linux.

Quando você cria uma VM habilitada para Hibernação por meio do portal do Azure, o LinuxHibernationExtension é instalado automaticamente na VM.

Se a extensão estiver faltando, você pode instalar manualmente o LinuxHibernateExtension em sua VM Linux para configurar o sistema operacional convidado para hibernação.

Nota

As extensões do Azure estão atualmente desativadas por padrão para imagens Debian. Para reativar extensões, consulte o guia de solução de problemas de hibernação do Linux.

Nota

Para o RHEL LVM, você precisará expandir o volume raiz e garantir que haja espaço suficiente disponível para criar o arquivo de permuta. Para expandir o volume, consulte o guia de expansão de disco.

Para instalar LinuxHibernateExtension com a CLI do Azure, execute o seguinte comando:

az vm extension set -n LinuxHibernateExtension --publisher Microsoft.CPlat.Core --version 1.0 \    --vm-name MyVm --resource-group MyResourceGroup --enable-auto-upgrade true

Hibernação-configuração-ferramenta

Nota

Se você já instalou o LinuxHibernateExtension, não precisa instalar a ferramenta hibernation-setup. Estes são métodos redundantes para habilitar a hibernação em uma VM Linux.

Você pode instalar o pacote hibernation-setup-tool em sua VM Linux a partir do repositório de software Linux da Microsoft em packages.microsoft.com.

Para usar o repositório de software Linux, siga as instruções em Repositório de pacotes Linux para software Microsoft.

Para usar a ferramenta hibernation-setup-tool nas versões Debian e Ubuntu, abra o git bash e execute este comando:

curl -sSL https://packages.microsoft.com/keys/microsoft.asc | sudo tee etc/apt/trusted.gpg.d/microsoft.asc

sudo apt-add-repository https://packages.microsoft.com/ubuntu/20.04/prod

sudo apt-get update

Para instalar o pacote, execute este comando no git bash:

sudo apt-get install hibernation-setup-tool

Nota

Para o RHEL LVM, você precisará expandir o volume raiz e garantir que haja espaço suficiente disponível para criar o arquivo de permuta. Para expandir o volume, consulte o guia de expansão de disco.

Depois que o pacote for instalado com êxito, seu sistema operacional convidado Linux será configurado para hibernação. Você também pode criar uma nova Imagem da Galeria de Computação do Azure a partir dessa VM e usar a imagem para criar VMs. As VMs criadas com esta imagem têm o pacote de hibernação pré-instalado, simplificando a sua experiência de criação de VM.

Hibernar uma VM

Depois que uma VM com hibernação habilitada tiver sido criada e o sistema operacional convidado estiver configurado para hibernação, você poderá hibernar a VM por meio do portal do Azure, da CLI do Azure, do PowerShell ou da API REST.

Para hibernar uma VM no portal do Azure, clique no botão 'Hibernar' na página Visão Geral da VM.

Captura de ecrã do botão para hibernar uma VM no portal do Azure.

Exibir estado da VM hibernada

Para visualizar o estado de uma VM no portal, verifique o 'Status' na página de visão geral. Deve informar como "Hibernado (deslocalizado)"

Captura de ecrã do estado da VM Hibernada na listagem do portal do Azure como 'Hibernada (deslocalizada)'.

Iniciar VMs hibernadas

Você pode iniciar VMs hibernadas da mesma forma que iniciaria uma VM interrompida. Isso pode ser feito por meio do portal do Azure, da CLI do Azure, do PowerShell ou da API REST.

Para iniciar uma VM hibernada usando o portal do Azure, clique no botão 'Iniciar' na página Visão Geral da VM.

Captura de ecrã do botão do portal do Azure para iniciar uma VM hibernada com um estado sublinhado listado como

As VMs criadas a partir de imagens da Galeria de Computação também podem ser habilitadas para hibernação. Certifique-se de que a versão do SO associada à imagem da Galeria suporta a hibernação no Azure. Consulte a lista de versões de SO suportadas.

Para criar VMs com a hibernação habilitada usando imagens da Galeria, primeiro você precisará criar uma nova definição de imagem com a propriedade de hibernação habilitada. Depois que essa propriedade de recurso estiver habilitada na definição de Imagem da Galeria, você poderá criar uma versão de imagem e usar essa versão de imagem para criar VMs habilitadas para hibernação.

Nota

Para imagens especializadas do Windows, o local do arquivo de paginação deve ser definido como unidade C: para que o Azure configure com êxito seu sistema operacional convidado para hibernação. Se você estiver criando uma versão de imagem a partir de uma VM existente, primeiro mova o arquivo de paginação para o disco do sistema operacional e, em seguida, use a VM como a fonte para a versão de imagem.

Para criar uma definição de imagem com a propriedade de hibernação ativada, selecione a marca de seleção para 'Ativar hibernação'.

Captura de ecrã da opção para ativar a hibernação no portal do Azure ao criar uma definição de imagem de VM.

Implantar VMs habilitadas para hibernação a partir de um disco do sistema operacional

As VMs criadas a partir de discos do SO também podem ser ativadas para hibernação. Certifique-se de que a versão do SO associada ao disco do SO suporta a hibernação no Azure. Consulte a lista de versões de SO suportadas.

Para criar VMs com a hibernação habilitada usando discos do sistema operacional, verifique se o disco do sistema operacional tem a propriedade de hibernação habilitada. Consulte o exemplo de API para habilitar essa propriedade em discos do sistema operacional. Depois que a propriedade de hibernação estiver habilitada no disco do sistema operacional, você poderá criar VMs habilitadas para hibernação usando esse disco do sistema operacional.

PATCH https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-12-01

{
  "properties": {
    "supportsHibernation": true
  }
}

Resolução de Problemas

Consulte o guia de solução de problemas do Hibernate e o guia de solução de problemas de hibernação de VM do Linux para obter mais informações.

FAQs

Consulte as Perguntas frequentes do Hibernate para obter mais informações.

Próximos passos