Como Automatizar Backups no Azure com PowerShell: Tutorial Prático

Como Automatizar Backups no Azure com PowerShell: Tutorial Prático

O Azure Backup pode ser automatizado usando PowerShell, permitindo maior flexibilidade e eficiência no gerenciamento dos backups. Neste tutorial, você aprenderá como criar, configurar e gerenciar backups no Azure usando scripts PowerShell.

1. Pré-requisitos para Automação de Backup com PowerShell

Antes de iniciar, certifique-se de que você possui:

  • Uma conta no Azure com permissões suficientes para criar e gerenciar backups.
  • O Azure PowerShell instalado no seu computador (Instalação do Azure PowerShell).
  • Um Recovery Services Vault criado no Azure.

2. Conectando ao Azure PowerShell

Primeiramente, você deve se conectar à sua conta do Azure pelo PowerShell.

Comando:

Connect-AzAccount

Se você tiver várias assinaturas, defina a assinatura correta:
Set-AzContext -SubscriptionId "SEU_SUBSCRIPTION_ID"

3. Criando um Recovery Services Vault com PowerShell

Se ainda não tiver um Recovery Services Vault, crie um com o seguinte comando:

$resourceGroup = "MeuResourceGroup"
$location = "East US"
$vaultName = "MeuCofreDeBackup"


New-AzRecoveryServicesVault -ResourceGroupName $resourceGroup -Name $vaultName -Location $location


Após criar, defina o tipo de armazenamento como Geo-redundante ou Locally Redundant:
Set-AzRecoveryServicesVaultProperties -ResourceGroupName $resourceGroup -Name $vaultName -BackupStorageRedundancy GeoRedundant

4. Habilitando o Backup de uma Máquina Virtual com PowerShell

Para proteger uma VM no Azure com backup automatizado, siga os passos abaixo.

Definir variáveis principais:

$vault = Get-AzRecoveryServicesVault -Name "MeuCofreDeBackup"
$vm = Get-AzVM -ResourceGroupName "MeuResourceGroup" -Name "MinhaVM"
$policy = Get-AzRecoveryServicesBackupProtectionPolicy -Name "DefaultPolicy" -VaultId $vault.ID

Habilitar o backup na VM:

Enable-AzRecoveryServicesBackupProtection -ResourceGroupName "MeuResourceGroup" -VaultId $vault.ID -Policy $policy -Name $vm.Name -ResourceType "VM"

5. Iniciando um Backup Manualmente via PowerShell

Se desejar executar um backup imediatamente sem aguardar o agendamento automático, use o seguinte comando:

Backup-AzRecoveryServicesBackupItem -Item (Get-AzRecoveryServicesBackupItem -VaultId $vault.ID -WorkloadType "AzureVM" -Name $vm.Name) -VaultId $vault.ID

6. Restaurando uma Máquina Virtual com PowerShell

Caso precise restaurar uma VM, siga este processo:

Obter os pontos de recuperação disponíveis:

$recoveryPoint = Get-AzRecoveryServicesBackupRecoveryPoint -VaultId $vault.ID -WorkloadType "AzureVM" -Item (Get-AzRecoveryServicesBackupItem -VaultId $vault.ID -WorkloadType "AzureVM" -Name $vm.Name)

Restaurar a VM:

Restore-AzRecoveryServicesBackupItem -VaultId $vault.ID -RecoveryPoint $recoveryPoint[0] -StorageAccountName "MinhaContaDeArmazenamento" -TargetResourceGroupName "MeuResourceGroup"

7. Agendando Scripts de Backup com PowerShell

Para automatizar os backups em um horário específico, você pode usar o Task Scheduler no Windows.

Criar um script de backup:

Crie um arquivo .ps1 contendo os comandos acima e salve-o em um diretório, por exemplo:

C:\Scripts\BackupAzure.ps1

Agendar o backup usando o Agendador de Tarefas:

  1. Abra o Agendador de Tarefas do Windows.
  2. Clique em Criar Tarefa.
  3. Na aba Gatilho, defina o horário de execução (diário, semanal, etc.).
  4. Na aba Ação, selecione Iniciar um Programa e aponte para o powershell.exe.
  5. No campo Argumentos, adicione: -File C:\Scripts\BackupAzure.ps1
  6. Salve a tarefa e teste a execução manualmente.

8. Monitorando e Verificando Backups no Azure com PowerShell

Para verificar o status dos backups executados:

Get-AzRecoveryServicesBackupJob -VaultId $vault.ID | Sort-Object StartTime -Descending | Select-Object StartTime, Status

Caso queira monitorar um backup em andamento:

Get-AzRecoveryServicesBackupJob -VaultId $vault.ID -Status "InProgress"

Conclusão

O uso de PowerShell para gerenciar backups no Azure permite automação, controle e eficiência, reduzindo a necessidade de intervenção manual e garantindo a proteção contínua dos seus dados.

Agora que você aprendeu a automatizar backups no Azure com PowerShell, implemente essa solução no seu ambiente e otimize sua estratégia de backup.

Se tiver dúvidas, deixe seu comentário!

Sobre Francisco Ferreira 5 Artigos
MVP em Azure por 2 anos. Formado em Tecnologia de Banco de Dados pela Estácio, pós-graduado em Arquitetura de Computação em Nuvem pela UFRN e faz parte da comunidade MTAC - Multiplatform Technical Audience Contributor. Possui as certificações Microsoft Azure Administrator, Azure Architect, Azure Security Engineer, MCSE Cloud Infrastructure, MCSA, MCITP, MCT, MCTS, MCPS, MS, MTA, MCDST, MCP, EXIN Cloud Essentials, Citrix CCA e VMWare VCA. Possui 26 anos de experiência em Tecnologia da Informação. Palestrante. Instrutor. Analista de Backup e Coordenador de Projetos na BNP Soluções de Tecnologia.

Seja o primeiro a comentar

Faça um comentário

Seu e-mail não será divulgado.


*


Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.