Fazer backup de uma máquina virtual no Azure com a CLI do Azure

A CLI do Azure é usada para criar e gerenciar recursos do Azure da linha de comando ou em scripts. Você pode proteger seus dados fazendo backups em intervalos regulares. O Backup do Azure cria pontos de recuperação que são armazenados em cofres de recuperação com redundância geográfica. Este artigo fornece detalhes sobre como fazer backup de uma máquina virtual (VM) no Azure com a CLI do Azure. Você também pode executar essas etapas usando o Azure PowerShell ou o portal do Azure.

Este início rápido habilita o backup em uma VM do Azure existente. Se você precisar criar uma máquina virtual, poderá criar uma máquina virtual com a CLI do Azure.

Pré-requisitos

  • Este guia de início rápido exige a versão 2.0.18 ou posterior da CLI do Azure. Se você está usando o Azure Cloud Shell, a versão mais recente já está instalada.

Criar um cofre dos Serviços de Recuperação

Um cofre dos Serviços de Recuperação é um contêiner lógico que armazena os dados de backup para cada recurso protegido, como VMs do Azure. Quando o trabalho de backup para um recurso protegido é executado, ele cria um ponto de recuperação no cofre dos Serviços de Recuperação. Você pode usar um desses pontos de recuperação para restaurar dados para um determinado ponto no tempo.

Crie um cofre dos Serviços de Recuperação com az backup vault create. Especifique o mesmo grupo de recursos e o local da VM que você deseja proteger. Se você tiver usado o início rápido de VM, então criou:

  • um grupo de recursos denominado myResourceGroup,
  • uma VM denominada myVM,
  • recursos no local eastus.
az backup vault create --resource-group myResourceGroup \
    --name myRecoveryServicesVault \
    --location eastus

Por padrão, o cofre dos Serviços de Recuperação é definido para o armazenamento com redundância geográfica. O armazenamento com redundância geográfica verifica se os dados de backup são replicados para uma região secundária do Azure a centenas de quilômetros de distância da região primária. Se a configuração de redundância de armazenamento precisar ser modificada, use o cmdlet az backup vault backup-properties set.

az backup vault backup-properties set \
    --name myRecoveryServicesVault  \
    --resource-group myResourceGroup \
    --backup-storage-redundancy "LocallyRedundant/GeoRedundant"

Habilitar o backup para uma VM do Azure

Crie uma política de proteção para definir: quando um trabalho de backup é executado e por quanto tempo os pontos de recuperação serão armazenados. A política de proteção padrão executa um trabalho de backup a cada dia e retém pontos de recuperação por 30 dias. Você pode usar esses valores de política padrão para proteger rapidamente sua VM. Para habilitar a proteção de backup para uma VM, use az backup protection enable-for-vm. Especifique o grupo de recursos e a VM a serem protegidos e então a política a ser usada:

az backup protection enable-for-vm \
    --resource-group myResourceGroup \
    --vault-name myRecoveryServicesVault \
    --vm myVM \
    --policy-name DefaultPolicy

Observação

Se a VM não está no mesmo grupo de recursos do cofre, o myResourceGroup se refere ao grupo de recursos em que o cofre foi criado. Em vez do nome da VM, forneça a ID da VM conforme indicado a seguir.

az backup protection enable-for-vm \
    --resource-group myResourceGroup \
    --vault-name myRecoveryServicesVault \
    --vm $(az vm show -g VMResourceGroup -n MyVm --query id | tr -d '"') \
    --policy-name DefaultPolicy

Importante

Ao usar a CLI para habilitar o backup para várias VMs de uma só vez, verifique se não há nenhuma única política com mais de 100 VMs associadas a ela. Essa é uma melhor prática recomendada. Atualmente, o cliente PowerShell não bloqueia explicitamente se há mais de 100 VMs, mas há planos de adicionar essa verificação no futuro.

Pré-requisitos para fazer backup de VMs criptografadas

Para habilitar a proteção em VMs criptografadas (com BEK e KEK), você precisa conceder a permissão para ler as chaves e segredos do cofre de chaves ao serviço de Backup do Azure. Para fazer isso, defina uma política de acesso keyvault com as permissões necessárias, conforme demonstrado abaixo:

# Enter the name of the resource group where the key vault is located on this variable
AZ_KEYVAULT_RGROUP=TestKeyVaultRG

# Enter the name of the key vault on this variable
AZ_KEYVAULT_NAME=TestKeyVault

# Get the object id for the Backup Management Service on your subscription
AZ_ABM_OBJECT_ID=$( az ad sp list --display-name "Backup Management Service" --query '[].objectId' -o tsv --only-show-errors )

# This command will grant the permissions required by the Backup Management Service to access the key vault
az keyvault set-policy --key-permissions get list backup --secret-permissions get list backup \
  --resource-group $AZ_KEYVAULT_RGROUP --name $AZ_KEYVAULT_NAME --object-id $AZ_ABM_OBJECT_ID

Iniciar um trabalho de backup

Para iniciar um backup agora em vez de aguardar a política padrão executar o trabalho no horário agendado, use az backup protection backup-now. O primeiro trabalho de backup cria um ponto de recuperação completa. Cada trabalho de backup depois que o backup inicial cria pontos de recuperação incremental. Os pontos de recuperação incrementais são eficientes em termos de armazenamento e de tempo, já que eles transferem somente as alterações feitas desde o último backup.

Os seguintes parâmetros são usados para fazer backup da VM:

  • --container-nameé o nome da VM
  • --item-nameé o nome da VM
  • O valor --retain-until deve ser definido como a última data disponível, no formato de hora UTC (dd-mm-aaaa), em que você deseja que o ponto de recuperação esteja disponível

O exemplo a seguir faz backup da VM denominada myVM e define a expiração do ponto de recuperação para 18 de outubro de 2017:

az backup protection backup-now \
    --resource-group myResourceGroup \
    --vault-name myRecoveryServicesVault \
    --container-name myVM \
    --item-name myVM \
    --backup-management-type AzureIaaSVM
    --retain-until 18-10-2017

Monitorar o trabalho de backup

Para monitorar o status de trabalhos de backup, use az backup job list:

az backup job list \
    --resource-group myResourceGroup \
    --vault-name myRecoveryServicesVault \
    --output table

O resultado é semelhante ao exemplo a seguir, que mostra que o trabalho de backup está InProgress:

Name      Operation        Status      Item Name    Start Time UTC       Duration
--------  ---------------  ----------  -----------  -------------------  --------------
a0a8e5e6  Backup           InProgress  myvm         2017-09-19T03:09:21  0:00:48.718366
fe5d0414  ConfigureBackup  Completed   myvm         2017-09-19T03:03:57  0:00:31.191807

Quando o Status do trabalho de backup relatar Concluído, sua VM será protegida com os Serviços de Recuperação e terá um ponto de recuperação completo armazenado.

Limpar a implantação

Quando não for mais necessária, você poderá desabilitar a proteção na máquina virtual, remover os pontos de restauração e o cofre dos Serviços de Recuperação, então excluir o grupo de recursos e recursos associados de VM. Se você tiver usado uma VM existente, poderá ignorar o último comando az group delete para deixar o grupo de recursos e a VM no local.

Se você quiser experimentar um tutorial de Backup que explique como restaurar dados para sua VM, vá para Próximas etapas.

az backup protection disable \
    --resource-group myResourceGroup \
    --vault-name myRecoveryServicesVault \
    --container-name myVM \
    --item-name myVM \
    --backup-management-type AzureIaaSVM
    --delete-backup-data true
az backup vault delete \
    --resource-group myResourceGroup \
    --name myRecoveryServicesVault \
az group delete --name myResourceGroup

Próximas etapas

Neste início rápido, você criou um cofre dos Serviços de Recuperação, habilitou a proteção em uma VM e criou o ponto de recuperação inicial. Para saber mais sobre os Serviços de Recuperação e o Backup do Azure, prossiga para os tutoriais.