Ripristinare Managed Disks di Azure usando Azure PowerShell
Questo articolo illustra come ripristinare Managed Disks di Azure da un punto di ripristino creato tramite Backup di Azure.
Attualmente, l’opzione di ripristino OLR (Original-Location Recovery) tramite la sostituzione del disco di origine esistente da cui sono stati acquisiti i backup non è supportata. È possibile eseguire il ripristino da un punto di ripristino per creare un nuovo disco nello stesso gruppo di risorse del disco di origine da cui sono stati acquisiti i backup o in qualunque altro gruppo di risorse. Questa operazione, denominata ALR (Alternate-Location Recovery), consente di mantenere sia il disco di origine che il disco ripristinato (nuovo).
In questo articolo si apprenderà come:
Eseguire il ripristino per creare un nuovo disco
Tenere traccia dello stato dell'operazione di ripristino
Negli esempi si farà riferimento a un insieme di credenziali di backup esistente “TestBkpVault” nel gruppo di risorse “testBkpVaultRG”
$TestBkpVault = Get-AzDataProtectionBackupVault -VaultName TestBkpVault -ResourceGroupName "testBkpVaultRG"
Eseguire il ripristino per creare un nuovo disco
Configurazione delle autorizzazioni
L'insieme di credenziali di Backup usa un'identità gestita per accedere ad altre risorse di Azure. Per eseguire il ripristino dal backup, l'identità gestita dell'insieme di credenziali di Backup richiede un set di autorizzazioni nel gruppo di risorse in cui deve essere ripristinato il disco.
L’insieme di credenziali di Backup usa un'identità gestita assegnata dal sistema limitata a una per risorsa ed è legata al ciclo di vita di tale risorsa. È possibile concedere autorizzazioni all'identità gestita usando il controllo degli accessi in base al ruolo di Azure. Un'identità gestita è un'entità servizio di un tipo speciale che è possibile usare solo con le risorse di Azure. Vedere altre informazioni sulle identità gestite.
Assegnare le autorizzazioni pertinenti per l'identità gestita assegnata dal sistema dell'insieme di credenziali nel gruppo di risorse di destinazione in cui verranno ripristinati o creati i dischi, come indicato qui.
Recupero del punto di ripristino pertinente
Recuperare tutte le istanze usando il comando Get-AzDataProtectionBackupInstance e identificare l'istanza pertinente.
$AllInstances = Get-AzDataProtectionBackupInstance -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name
È anche possibile usare Az.Resourcegraph e il comando Search-AzDataProtectionBackupInstanceInAzGraph per cercare tra istanze in molti insiemi di credenziali e sottoscrizioni.
$AllInstances = Search-AzDataProtectionBackupInstanceInAzGraph -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -DatasourceType AzureDisk -ProtectionStatus ProtectionConfigured
Dopo aver identificato l'istanza, recuperare il punto di ripristino pertinente.
$rp = Get-AzDataProtectionRecoveryPoint -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -BackupInstanceName $AllInstances[2].BackupInstanceName
Preparazione della richiesta di ripristino
Costruire l'ID ARM del nuovo disco da creare con il gruppo di risorse di destinazione a cui sono state assegnate le autorizzazioni come descritto dettagliatamente sopra e il nome del disco richiesto. Ad esempio, un disco può essere denominato PSTestDisk2 in un gruppo di risorse targetrg con una sottoscrizione diversa.
$targetDiskId = /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourceGroups/targetrg/providers/Microsoft.Compute/disks/PSTestDisk2
Usare il comando Initialize-AzDataProtectionRestoreRequest per preparare la richiesta di ripristino con tutti i dettagli pertinenti.
$restorerequest = Initialize-AzDataProtectionRestoreRequest -DatasourceType AzureDisk -SourceDataStore OperationalStore -RestoreLocation $TestBkpVault.Location -RestoreType AlternateLocation -TargetResourceId $targetDiskId -RecoveryPoint $rp[0].Name
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
Tracciamento del processo
Tenere traccia di tutti i processi usando il comando Get-AzDataProtectionJob. È possibile elencare tutti i processi e recuperare un dettaglio particolare di un processo.
È possibile anche usare Az.ResourceGraph per tenere traccia dei processi in tutti gli insiemi di credenziali di Backup. Usare il comando Search-AzDataProtectionJobInAzGraph per ottenere il processo pertinente, che può trovarsi in qualunque insiemi di credenziali di backup.
$job = Search-AzDataProtectionJobInAzGraph -Subscription $sub -ResourceGroupName "testBkpVaultRG" -Vault $TestBkpVault.Name -DatasourceType AzureDisk -Operation OnDemandBackup