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 Azure PowerShell per eseguire il backup di Azure Files tramite una cassetta dei Servizi di ripristino di Backup di Azure.
Prerequisiti
Prima di eseguire il backup di File di Azure, assicurarsi che siano soddisfatti i prerequisiti seguenti:
Altre informazioni sull'insieme di credenziali di Servizi di ripristino.
Esaminare le informazioni di riferimento sul cmdlet Az.RecoveryServices nella libreria di Azure.
Esaminare la gerarchia di oggetti di PowerShell seguente per Servizi di ripristino:
Configurare PowerShell
Nota
È consigliabile usare il modulo Azure Az PowerShell per interagire con Azure. Per iniziare, vedere Installare Azure PowerShell. Per informazioni su come eseguire la migrazione al modulo AZ PowerShell, vedere Eseguire la migrazione di Azure PowerShell da AzureRM ad Az.
Nota
Attualmente Azure PowerShell non supporta i criteri di backup con pianificazione su base oraria. Usare il portale di Azure per applicare questa funzionalità. Ulteriori informazioni
Configurare PowerShell come segue:
Scaricare la versione più recente di Azure PowerShell.
Nota
La versione minima di PowerShell necessaria per il backup di File di Azure è Az.RecoveryServices 2.6.0. La versione più recente o almeno la versione minima consente di evitare problemi con gli script esistenti. Installare la versione minima usando il comando di PowerShell seguente:
Install-module -Name Az.RecoveryServices -RequiredVersion 2.6.0Trovare i cmdlet di PowerShell per Backup di Azure usando questo comando:
Get-Command *azrecoveryservices*Esaminare gli alias e i cmdlet per Backup di Azure, Azure Site Recovery e l'insieme di credenziali di Servizi di ripristino. Ecco un esempio delle informazioni visualizzate. Non è l'elenco completo dei cmdlet.
Accedere all'account Azure usando Connect-AzAccount.
Nella pagina Web visualizzata viene richiesto di immettere le credenziali dell'account.
In alternativa, è possibile includere le credenziali dell'account come parametro nel cmdlet Connect-AzAccount, usando il parametro -Credential.
Se si è un partner CSP (Cloud Service Provider) che lavora per conto di un tenant, specificare il cliente come tenant. Usare l'ID tenant o il nome di dominio primario del tenant. Un esempio è Connect-AzAccount -Tenant "fabrikam.com".
Associare la sottoscrizione che si vuole usare all'account, dato che un account può avere diverse sottoscrizioni.
Select-AzSubscription -SubscriptionName $SubscriptionNameSe si sta usando Backup di Azure per la prima volta, usare il cmdlet Register-AzResourceProvider per registrare il provider di Servizi di ripristino di Azure con la propria sottoscrizione.
Register-AzResourceProvider -ProviderNamespace "Microsoft.RecoveryServices"Verificare che i provider siano stati registrati correttamente:
Get-AzResourceProvider -ProviderNamespace "Microsoft.RecoveryServices"Nell'output del comando il parametro RegistrationState è impostato su Registered. In caso contrario, eseguire di nuovo il cmdlet Register-AzResourceProvider.
Creare un insieme di credenziali di Servizi di ripristino
L'insieme di credenziali di Servizi di ripristino è una risorsa di Resource Manager, quindi è necessario inserirlo all'interno di un gruppo di risorse. È possibile usare un gruppo di risorse esistente o crearne uno con il cmdlet New-AzResourceGroup. Quando si crea un gruppo di risorse, specificare il nome e il percorso.
Seguire questa procedura per creare un insieme di credenziali di Servizi di ripristino:
Creare un nuovo gruppo di risorse usando il cmdlet New-AzResourceGroup , se non ne esiste uno esistente. In questo esempio viene creato un gruppo di risorse nell'area Stati Uniti occidentali.
New-AzResourceGroup -Name "test-rg" -Location "West US"Per creare l'insieme di credenziali usare il cmdlet New-AzRecoveryServicesVault. Per l'insieme di credenziali specificare lo stesso percorso usato per il gruppo di risorse.
New-AzRecoveryServicesVault -Name "testvault" -ResourceGroupName "test-rg" -Location "West US"
Visualizzare gli insiemi di credenziali in un abbonamento
Per visualizzare tutti gli insiemi di credenziali disponibili nella sottoscrizione, usare Get-AzRecoveryServicesVault:
Get-AzRecoveryServicesVault
L'output è simile al seguente. L'output fornisce il gruppo di risorse e la posizione associati.
Name : Contoso-vault
ID : /subscriptions/1234
Type : Microsoft.RecoveryServices/vaults
Location : WestUS
ResourceGroupName : Contoso-docs-rg
SubscriptionId : 1234-567f-8910-abc
Properties : Microsoft.Azure.Commands.RecoveryServices.ARSVaultProperties
Impostare il contesto dell'insieme di credenziali
Archiviare l'oggetto insieme di credenziali in una variabile e impostare il contesto dell'insieme di credenziali.
Molti cmdlet di Backup di Azure richiedono l'oggetto insieme di credenziali di Servizi di ripristino come input. Per tale motivo, è utile archiviare l'oggetto insieme di credenziali in una variabile.
Il contesto dell'insieme di credenziali definisce il tipo di dati protetti nell'insieme di credenziali. Impostarli usando Set-AzRecoveryServicesVaultContext. Il contesto impostato viene applicato a tutti i cmdlet successivi.
L'esempio seguente imposta il contesto dell'insieme di credenziali per testvault:
Get-AzRecoveryServicesVault -Name "testvault" | Set-AzRecoveryServicesVaultContext
Recuperare l'ID dell'insieme di credenziali
È prevista la deprecazione dell’impostazione del contesto dell'insieme di credenziali in base alle linee guida di Azure PowerShell. In alternativa, è possibile archiviare o recuperare l'ID dell'insieme di credenziali e passarlo ai comandi pertinenti. Se non è stato impostato il contesto dell'insieme di credenziali o si vuole specificare il comando da eseguire per un determinato insieme di credenziali, passare l'ID dell'insieme di credenziali a -vaultID in tutti i comandi pertinenti come indicato di seguito:
$vaultID = Get-AzRecoveryServicesVault -ResourceGroupName "Contoso-docs-rg" -Name "testvault" | select -ExpandProperty ID
New-AzRecoveryServicesBackupProtectionPolicy -Name "NewAFSPolicy" -WorkloadType "AzureFiles" -RetentionPolicy $retPol -SchedulePolicy $schPol -VaultID $vaultID
Configurare un criterio di backup
Il criterio di backup specifica la pianificazione dei backup e il periodo di conservazione dei punti di ripristino dei backup:
I criteri di backup sono associati ai criteri di conservazione. Un criterio di conservazione definisce per quanto tempo viene conservato un punto di ripristino. È possibile configurare i backup con una conservazione giornaliera, settimanale, mensile o annuale. Con il criterio di backup multipli è anche possibile configurare una conservazione su base oraria dei backup.
Importante
Per i criteri di backup vengono usati i cmdlet seguenti:
- Visualizzare i criteri di conservazione dei backup predefiniti usando
Get-AzRecoveryServicesBackupRetentionPolicyObject. - Visualizzare i criteri di pianificazione del backup predefiniti usando
Get-AzRecoveryServicesBackupSchedulePolicyObject. - Creare un nuovo criterio di backup usando
New-AzRecoveryServicesBackupProtectionPolicy. Specificare gli oggetti criteri di pianificazione e conservazione come input.
Scegliere un livello di backup:
Per creare criteri di backup che configurano più esecuzioni di backup al giorno per il backup di snapshot di Azure Files, eseguire i cmdlet seguenti.
Ottieni l'oggetto criteri di pianificazione.
$schPol=Get-AzRecoveryServicesBackupSchedulePolicyObject -WorkloadType AzureFiles -BackupManagementType AzureStorage -ScheduleRunFrequency Hourly $schPolOutput di esempio:
ScheduleRunFrequency : Hourly ScheduleRunDays : ScheduleRunTimes : ScheduleInterval : 8 ScheduleWindowStartTime : 12/22/2021 8:00:00 AM ScheduleWindowDuration : 16 ScheduleRunTimeZone : India Standard TimeImpostare i diversi parametri della pianificazione come richiesto.
$schpol.ScheduleInterval=4 $schpol.ScheduleWindowDuration=12La configurazione precedente consente di pianificare 4 backup al giorno in una finestra temporale che va dalle 08:00 alle 18:00 (08:00 +12 ore). È anche possibile impostare il fuso orario come indicato nel cmdlet seguente:
$timeZone= $timeZone=Get-TimeZone -ListAvailable |Where-Object{$_.Id-match "Russia Time Zone 11"} $schPol.ScheduleRunTimeZone=$timeZone.IdPer creare un criterio con pianificazione giornaliera, eseguire il cmdlet seguente:
$UtcTime = Get-Date -Date "2019-03-20 01:30:00Z" $UtcTime = $UtcTime.ToUniversalTime() $schpol.ScheduleRunTimes[0] = $UtcTimeRecuperare l'oggetto criteri di conservazione usando il cmdlet seguente:
$retPol=Get-AzRecoveryServicesBackupRetentionPolicyObject -WorkloadType AzureFiles -BackupManagementType AzureStorage -ScheduleRunFrequency HourlyImpostare i valori di conservazione come richiesto.
$retPol.DailySchedule.DurationCountInDays=15Creare un nuovo criterio di backup usando New-AzRecoveryServicesBackupProtectionPolicy.
È possibile passare gli oggetti criteri di pianificazione e conservazione impostati in precedenza come input.
New-AzRecoveryServicesBackupProtectionPolicy -Name "FilesPolicytesting" -WorkloadType AzureFiles -RetentionPolicy $retpol -SchedulePolicy $schpolL'output visualizza la configurazione dei criteri:
Name WorkloadType BackupManagementType ScheduleFrequency BackupTime WindowStartTime Interval WindowDuration TimeZone (UTC) (Hours) ---- ------------ -------------------- ----------------- ------------ --------------- -------- -------------- -------- FilesPolicy testing AzureFiles AzureStorage Hourly 12/22/2021 8:00:00 AM 4 12 Russia Time Zone 11
Abilita backup
Dopo aver definito i criteri di backup, è possibile abilitare la protezione per File di Azure usando i criteri.
Recuperare un criterio di backup
Per recuperare l'oggetto criteri pertinente usare Get-AzRecoveryServicesBackupProtectionPolicy. Usare questo cmdlet per visualizzare i criteri associati a un tipo di carico di lavoro o per ottenere criterio specifico.
Recuperare un criterio per un tipo di carico di lavoro
L'esempio seguente recupera i criteri per il tipo di carico di lavoro AzureFiles:
Get-AzRecoveryServicesBackupProtectionPolicy -WorkloadType "AzureFiles"
Output di esempio:
Name WorkloadType BackupManagementType BackupTime DaysOfWeek
---- ------------ -------------------- ---------- ----------
dailyafs AzureFiles AzureStorage 1/10/2018 12:30:00 AM
Nota
Il fuso orario del campo BackupTime in PowerShell corrisponde all’ora UTC. L'orario di backup nel portale di Azure è allineato al fuso orario locale.
Recuperare un criterio specifico
Il criterio seguente recupera il criterio di backup denominato dailyafs
$afsPol = Get-AzRecoveryServicesBackupProtectionPolicy -Name "dailyafs"
Abilitare la protezione e applicare il criterio
Abilitare la protezione usando Enable-AzRecoveryServicesBackupProtection. Dopo che il criterio è associato all'insieme di credenziali, i backup vengono attivati in base alla pianificazione dei criteri.
L'esempio seguente abilita la protezione per i File di Azure testAzureFS nell'account di archiviazione testStorageAcct, con il criterio dailyafs:
Enable-AzRecoveryServicesBackupProtection -StorageAccountName "testStorageAcct" -Name "testAzureFS" -Policy $afsPol
Il comando attende il completamento del processo di configurazione-protezione e restituisce un output simile all'esempio seguente:
WorkloadName Operation Status StartTime EndTime JobID
------------ --------- ------ --------- ------- -----
testAzureFS ConfigureBackup Completed 11/12/2018 2:15:26 PM 11/12/2018 2:16:11 PM ec7d4f1d-40bd-46a4-9edb-3193c41f6bf6
Per altre informazioni su come ottenere un elenco di condivisioni file per un account di archiviazione, vedere questo articolo.
Avviso importante: Identificazione dell'elemento di backup
Questa sezione illustra una modifica importante nei backup di File di Azure in preparazione alla disponibilità generale.
Quando si abilita un backup per File di Azure, l'utente ottiene un nome di condivisione file come nome dell'entità e viene creato un elemento di backup. Il nome dell'elemento di backup è un identificatore univoco creato dal servizio Backup di Azure. In genere l'identificatore è un nome descrittivo. Per gestire gli scenari di eliminazione temporanea, in cui viene eliminata una condivisione file e ne viene creata una nuova con lo stesso nome, File di Azure usa ora un ID univoco.
Per conoscere l'ID univoco di ogni elemento, eseguire il comando Get-AzRecoveryServicesBackupItem con i filtri pertinenti per backupManagementType e WorkloadType per ottenere tutti gli elementi pertinenti. Osservare quindi il campo nome nell'oggetto/risposta di PowerShell restituito.
Si consiglia di elencare gli elementi e poi recuperare il nome univoco dal campo nome nella risposta. Usare questo valore per filtrare gli elementi con il parametro Name. In alternativa, usare il parametro FriendlyName per recuperare l'elemento con il relativo ID.
Importante
Assicurarsi che PowerShell venga aggiornato alla versione minima (Az.RecoveryServices 2.6.0) per i backup di File di Azure. Con questa versione, il filtro FriendlyName è disponibile per il comando Get-AzRecoveryServicesBackupItem.
Fornire il nome dei file di Azure al parametro FriendlyName. Se si passa il nome della condivisione file al parametro Name , questa versione genera un avviso per passare il nome al parametro FriendlyName .
L'impossibilità di installare la versione minima potrebbe causare un errore degli script esistenti. Installare la versione minima di PowerShell usando il comando seguente:
Install-module -Name Az.RecoveryServices -RequiredVersion 2.6.0
Attivare un backup su richiesta
Per eseguire un backup su richiesta per file di Azure protetti, usare il cmdlet Backup-AzRecoveryServicesBackupItem :
- Recuperare l'account di archiviazione dal contenitore nell'insieme di credenziali che contiene i dati di backup usando Get-AzRecoveryServicesBackupContainer.
- Avviare un processo di backup, ottenere informazioni su File di Azure usando Get-AzRecoveryServicesBackupItem.
- Eseguire un backup su richiesta usando Backup-AzRecoveryServicesBackupItem.
Eseguire il backup su richiesta come segue:
$afsContainer = Get-AzRecoveryServicesBackupContainer -FriendlyName "testStorageAcct" -ContainerType AzureStorage
$afsBkpItem = Get-AzRecoveryServicesBackupItem -Container $afsContainer -WorkloadType "AzureFiles" -FriendlyName "testAzureFS"
$job = Backup-AzRecoveryServicesBackupItem -Item $afsBkpItem
Il comando restituisce un processo con un ID di cui tenere traccia, come mostrato nell'esempio seguente.
WorkloadName Operation Status StartTime EndTime JobID
------------ --------- ------ --------- ------- -----
testAzureFS Backup Completed 11/12/2018 2:42:07 PM 11/12/2018 2:42:11 PM 8bdfe3ab-9bf7-4be6-83d6-37ff1ca13ab6
Gli snapshot di Azure Files vengono utilizzati durante l'esecuzione dei backup. In genere il processo viene completato nel momento in cui il comando restituisce questo output.
Passaggi successivi
- Ripristinare File di Azure con Azure PowerShell.
- Ripristinare i file di Azure utilizzando il portale di Azure, l'interfaccia della riga di comando di Azure, l'API REST.
- Gestire i backup di File di Azure usando il portale di Azure, Azure PowerShell, l'interfaccia a riga di comando di Azure, l'API REST.
- Script di esempio in GitHub per l'uso di un runbook di Automazione di Azure per pianificare i backup.