Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo descrive come usare PowerShell per eseguire ripristini per Azure Blob da backup operativi o archiviati. Con i backup operativi, è possibile ripristinare tutti i BLOB in blocchi in account di archiviazione che abbiano il backup operativo configurato oppure in un subset di contenuti BLOB a un momento qualsiasi all'interno dell'intervallo di conservazione. Con i backup archiviati, è possibile eseguire ripristini usando un punto di ripristino creato in base alla pianificazione del backup.
È anche possibile ripristinare i BLOB di Azure tramite Backup di Azure usando il portale di Azure, l'interfaccia della riga di comando di Azure, l'API REST.
Importante
Il supporto per i BLOB di Azure è disponibile dalla versione Az 5.9.0.
Importante
Prima di ripristinare BLOB di Azure usando Backup di Azure, vedere i punti importanti.
In questo articolo si apprenderà come:
Ripristinare i BLOB di Azure
Tenere traccia dello stato dell'operazione di ripristino
Usare un insieme di credenziali di backup esistente TestBkpVault nel gruppo di risorse testBkpVaultRG negli esempi.
$TestBkpVault = Get-AzDataProtectionBackupVault -VaultName TestBkpVault -ResourceGroupName "testBkpVaultRG"
Ripristinare i BLOB di Azure in un account di archiviazione
Scegliere un livello di backup:
Ottieni l'intervallo di tempo valido per il ripristino
Poiché il backup operativo per i BLOB è continuo, non esistono punti distinti da cui eseguire il ripristino. È invece necessario recuperare l'intervallo temporale valido in cui i blob possono essere ripristinati ad un punto temporale qualsiasi. In questo esempio, verifichiamo la presenza di fasce orarie valide da ripristinare negli ultimi 30 giorni.
$startDate = (Get-Date).AddDays(-30)
$endDate = Get-Date
Recuperare innanzitutto tutte le istanze usando il comando Get-AzDataProtectionBackupInstance e identificare l'istanza pertinente.
$AllInstances = Get-AzDataProtectionBackupInstance -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name
È inoltre possibile usare Az.Resourcegraph e il comando Search-AzDataProtectionBackupInstanceInAzGraph per eseguire la ricerca tra le istanze in molti insiemi di credenziali e sottoscrizioni.
$AllInstances = Search-AzDataProtectionBackupInstanceInAzGraph -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -DatasourceType AzureBlob -ProtectionStatus ProtectionConfigured
Dopo aver identificato l'istanza, recuperare l'intervallo di recupero pertinente usando il 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")
Preparare la richiesta di ripristino
Una volta stabilito il momento a cui eseguire il ripristino, sono disponibili più opzioni per il ripristino. Usare il comando Initialize-AzDataProtectionRestoreRequest per preparare la richiesta di ripristino con tutti i dettagli pertinenti.
Ripristinare tutti i BLOB a un momento specifico
È possibile ripristinare tutti i BLOB in blocchi nell'account di archiviazione eseguendone il rollback al momento specifico selezionato. Gli account di archiviazione contenenti grandi quantità di dati o con una varianza elevata possono richiedere più tempo per il ripristino.
$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]
Ripristina i contenitori selezionati
È possibile esplorare e selezionare fino a 10 contenitori da ripristinare.
$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"
Ripristinare i contenitori usando una corrispondenza del prefisso
È possibile ripristinare un sottoinsieme di BLOB usando una corrispondenza del prefisso. È possibile specificare fino a 10 intervalli lessicografici di BLOB all'interno di un singolo contenitore o in più contenitori per riportare tali BLOB allo stato che avevano in precedenza in un determinato momento. Ecco alcuni aspetti da tenere presenti:
- È possibile usare una barra (/) per separare il nome del contenitore dal prefisso del BLOB.
- L'inizio dell'intervallo specificato è inclusivo, ma l'intervallo specificato è esclusivo.
Ulteriori informazioni sull'uso dei prefissi per il ripristino degli intervalli di blob.
$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"
Attivare il processo di ripristino
Usare il comando Start-AzDataProtectionBackupInstanceRestore per attivare il ripristino con la richiesta preparata in precedenza.
Start-AzDataProtectionBackupInstanceRestore -BackupInstanceName $AllInstances[2].BackupInstanceName -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -Parameter $restorerequest
Monitorare un lavoro
È possibile tenere traccia di tutti i processi usando il comando Get-AzDataProtectionJob. È possibile elencare tutti i lavori e ottenere un dettaglio specifico del lavoro.
È possibile anche utilizzare Az.ResourceGraph per tenere traccia di tutti i processi in tutti gli archivi di backup. Usare il comando Search-AzDataProtectionJobInAzGraph per recuperare il processo pertinente, che può trovarsi in qualunque insieme di credenziali di backup.
$job = Search-AzDataProtectionJobInAzGraph -Subscription $sub -ResourceGroupName "testBkpVaultRG" -Vault $TestBkpVault.Name -DatasourceType AzureBlob -Operation Restore