Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo descreve como usar o PowerShell para executar restaurações para o Blob do Azure a partir de backups operacionais ou em cofre. Com os backups operacionais, é possível restaurar todos os blobs de blocos em contas de armazenamento com o backup operacional configurado ou um subconjunto de conteúdos de blob para qualquer ponto no tempo dentro do intervalo de retenção. Com os backups protegidos, é possível realizar restaurações usando um ponto de recuperação criado com base no agendamento do backup.
Você também pode restaurar blobs do Azure pelo Backup do Azure usando o portal do Azure, a CLI do Azure, a API REST.
Importante
O suporte para os blobs do Azure está disponível na versão Az 5.9.0.
Importante
Antes de prosseguir com a restauração de blobs do Azure usando o Backup do Azure, confira os pontos importantes.
Neste artigo, você aprenderá a:
Restaurar Blobs do Azure
Acompanhar o status da operação de restauração
Nos exemplos, usaremos o cofre de backup existente TestBkpVault no grupo de recursos testBkpVaultRG.
$TestBkpVault = Get-AzDataProtectionBackupVault -VaultName TestBkpVault -ResourceGroupName "testBkpVaultRG"
Restaurar blobs do Azure em uma conta de armazenamento
Escolher um nível de backup:
Buscar o intervalo de tempo válido para restauração
Como o backup operacional de blobs é contínuo, não há momentos distintos a serem usados para a restauração. Em vez disso, precisamos buscar o intervalo de tempo válido sob o qual os blobs podem ser restaurados a qualquer ponto no tempo. Neste exemplo, vamos verificar se há intervalos de tempo válidos a serem restaurados nos últimos 30 dias.
$startDate = (Get-Date).AddDays(-30)
$endDate = Get-Date
Primeiro, busque todas as instâncias usando o comando Get-AzDataProtectionBackupInstance e identifique a instância relevante.
$AllInstances = Get-AzDataProtectionBackupInstance -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name
Você também pode usar Az.Resourcegraph e o comando Search-AzDataProtectionBackupInstanceInAzGraph para pesquisar entre instâncias em vários cofres e assinaturas.
$AllInstances = Search-AzDataProtectionBackupInstanceInAzGraph -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -DatasourceType AzureBlob -ProtectionStatus ProtectionConfigured
Depois que a instância for identificada, busque o intervalo de recuperação relevante usando o comando Find-AzDataProtectionRestorableTimeRange.
Find-AzDataProtectionRestorableTimeRange -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -BackupInstanceName $AllInstances[2].BackupInstanceName -StartTime $startDate -endTime $endDate
EndTime : 2021-04-24T08:57:36.4149422Z
ObjectType : RestorableTimeRange
StartTime : 2021-03-25T14:27:31.0000000Z
$DesiredPIT = (Get-Date -Date "2021-04-23T02:47:02.9500000Z")
Preparar a solicitação de restauração
Depois que o momento específico a ser restaurado for corrigido, haverá várias opções de restauração disponíveis. Use o comando Initialize-AzDataProtectionRestoreRequest para preparar a solicitação de restauração com todos os detalhes relevantes.
Restaurar todos os blobs para um ponto no tempo
Você pode restaurar todos os blobs de blocos na conta de armazenamento retrocedendo-os até o momento específico selecionado. Contas de armazenamento que contêm grandes quantidades de dados ou uma alta rotatividade podem precisar de mais tempo para serem restauradas.
$restorerequest = Initialize-AzDataProtectionRestoreRequest -DatasourceType AzureBlob -SourceDataStore OperationalStore -RestoreLocation $TestBkpVault.Location -RestoreType OriginalLocation -PointInTime (Get-Date -Date "2021-04-23T02:47:02.9500000Z") -BackupInstance $AllInstances[2]
Restaurar os contêineres selecionados
Você pode procurar e selecionar até dez contêineres para restaurar.
$restorerequest = Initialize-AzDataProtectionRestoreRequest -DatasourceType AzureBlob -SourceDataStore OperationalStore -RestoreLocation $TestBkpVault.Location -RestoreType OriginalLocation -PointInTime (Get-Date -Date "2021-04-23T02:47:02.9500000Z") -BackupInstance $AllInstances[2] -ItemLevelRecovery -ContainersList "abc","xyz"
Restaurar contêineres usando uma correspondência de prefixo
Você pode restaurar um subconjunto de blobs usando uma correspondência de prefixo. Você pode especificar até dez intervalos lexicográficos de blobs em um só contêiner ou em vários contêineres para retornar esses blobs ao estado anterior em um momento específico. Há algumas coisas que você deve considerar:
- Você pode usar uma barra "/" para separar o nome do contêiner do prefixo do blob
- O início do intervalo especificado é inclusivo, mas o intervalo especificado é exclusivo.
Saiba mais sobre como usar prefixos para restaurar intervalos de blobs.
$restorerequest = Initialize-AzDataProtectionRestoreRequest -DatasourceType AzureBlob -SourceDataStore OperationalStore -RestoreLocation $TestBkpVault.Location -RestoreType OriginalLocation -PointInTime (Get-Date -Date "2021-04-23T02:47:02.9500000Z") -BackupInstance $AllInstances[2] -ItemLevelRecovery -FromPrefixPattern "containerabc/aaa","containerabc/ccc" -ToPrefixPattern "containerabc/bbb","containerabc/ddd"
Iniciar a restauração
Use o comando Start-AzDataProtectionBackupInstanceRestore para disparar a restauração com a solicitação preparada acima.
Start-AzDataProtectionBackupInstanceRestore -BackupInstanceName $AllInstances[2].BackupInstanceName -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -Parameter $restorerequest
Acompanhar um trabalho
Acompanhe todos os trabalhos usando o comando Get-AzDataProtectionJob. Você pode listar todos os trabalhos e buscar um detalhe de trabalho específico.
Você também pode usar Az.ResourceGraph para acompanhar todos os trabalhos em todos os cofres de backup. Use o comando Search-AzDataProtectionJobInAzGraph para obter o trabalho relevante que pode estar em qualquer cofre de backup.
$job = Search-AzDataProtectionJobInAzGraph -Subscription $sub -ResourceGroupName "testBkpVaultRG" -Vault $TestBkpVault.Name -DatasourceType AzureBlob -Operation Restore