Fazer uma cópia de segurança de uma máquina virtual no Azure com a CLI do Azure

A CLI do Azure é utilizada para criar e gerir recursos do Azure a partir da linha de comandos ou em scripts. Pode criar cópias de segurança em intervalos regulares para manter os seus dados protegidos. O Azure Backup cria pontos de recuperação que podem ser armazenados em cofres de recuperação georredundantes. Este artigo mostra em detalhe como criar cópias de segurança de máquinas virtuais (VMs) no Azure com a CLI do Azure. Também pode realizar estes passos com o Azure PowerShell ou no portal do Azure.

Este início rápido ativa a cópia de segurança numa VM do Azure existente. Se tiver de criar uma nova, pode criá-la com a CLI do Azure.

Pré-requisitos

  • Este início rápido requer a versão 2.0.18 ou posterior da CLI do Azure. Se utilizar 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 contentor lógico que armazena os dados da cópia de segurança de todos os recursos protegidos, como as VMs do Azure. Quando a tarefa de cópia de segurança de um recurso protegido é executada, cria um ponto de recuperação dentro do cofre dos Serviços de Recuperação. Em seguida, pode utilizar um destes 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 a mesma localização da VM que quer proteger. Se utilizou o início rápido da VM, então criou:

  • um grupo de recursos com o nome myResourceGroup,
  • uma VM com o nome myVM,
  • recursos na localização eastus.
az backup vault create --resource-group myResourceGroup \
    --name myRecoveryServicesVault \
    --location eastus

Por predefinição, o cofre dos Serviços de Recuperação está definido para Armazenamento georredundante. Geo-Redundant armazenamento garante que os dados de cópia de segurança são replicados para uma região secundária do Azure a centenas de quilómetros da região primária. Se a definição de redundância de armazenamento precisar de ser modificada, utilize o cmdlet az backup vault backup-properties set .

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

Ativar a cópia de segurança em VMs do Azure

Crie uma política de proteção para definir: quando é executada uma tarefa de cópia de segurança e durante quanto tempo os pontos de recuperação são armazenados. A política de proteção predefinida executa uma tarefa de cópia de segurança todos os dias e mantém os pontos de recuperação durante 30 dias. Pode utilizar estes valores da política predefinida para proteger rapidamente a sua VM. Para ativar a proteção de cópias de segurança para uma VM, utilize az backup protection enable-for-vm. Especifique o grupo de recursos e a VM a proteger e, em seguida, a política a utilizar:

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

Nota

Se a VM não estiver no mesmo grupo de recursos do cofre, myResourceGroup refere-se ao grupo de recursos onde o cofre foi criado. Em vez do nome da VM, forneça o ID da VM, conforme indicado abaixo.

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 utilizar a CLI para ativar a cópia de segurança de várias VMs ao mesmo tempo, certifique-se de que uma única política não tem mais de 100 VMs associadas. Esta é uma melhor prática recomendada. Atualmente, o cliente do PowerShell não bloqueia explicitamente se existirem mais de 100 VMs, mas a verificação deverá ser adicionada no futuro.

Pré-requisitos para fazer cópias de segurança de VMs encriptadas

Para ativar a proteção em VMs encriptadas (encriptadas com BEK e KEK), tem de fornecer a permissão de serviço Azure Backup para ler chaves e segredos do cofre de chaves. Para tal, 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 uma tarefa de cópia de segurança

Para iniciar uma cópia de segurança agora em vez de aguardar até que a política predefinida execute a tarefa na hora agendada, utilize az backup protection backup-now. Esta primeira tarefa de cópia de segurança cria um ponto de recuperação completo. Todas as tarefas de cópia de segurança que se seguem a esta cópia de segurança inicial criam pontos de recuperação incrementais. Os pontos de recuperação incrementais são eficientes em termos de armazenamento e tempo, uma vez que só transferem as alterações feitas desde a última cópia de segurança.

Os parâmetros seguintes são utilizados para criar a cópia de segurança 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 data em UTC (dd-mm-aaaa), até à qual pretende que o ponto de recuperação esteja disponível.

O exemplo seguinte cria uma cópia de segurança da VM com o nome myVM e define a expiração do ponto de recuperação como 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

Monitorizar a tarefa de cópia de segurança

Para monitorizar o estado das tarefas de criação de cópias de segurança, utilize az backup job list:

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

A saída é semelhante ao exemplo seguinte, o qual mostra que a tarefa de criação da cópia de segurança está InProgress (Em curso):

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 Estado da tarefa de cópia de segurança mostrar Concluído, a VM estará protegida com os Serviços de Recuperação e tem armazenado um ponto de recuperação completo.

Limpar a implementação

Quando já não precisar, pode desativar a proteção na VM, remover os pontos de restauro e o cofre dos Serviços de Recuperação e, em seguida, eliminar o grupo de recursos e os recursos da VM associados. Se tiver utilizado uma VM já existente, pode ignorar o último comando az group delete para manter o grupo de recursos e a VM.

Se pretender experimentar um tutorial de Cópia de Segurança que explica como restaurar dados para a VM, aceda a Passos seguintes.

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

Passos seguintes

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