Esportare/copiare snapshot in un account di archiviazione di un'area diversa con l'interfaccia della riga di comando
Questo script consente di esportare uno snapshot gestito in un account di archiviazione di un'area diversa. Per prima cosa viene generato l'URI di firma di accesso condiviso dello snapshot, che viene poi usato per copiare lo snapshot in un account di archiviazione di un'area diversa. Usare questo script per gestire il backup dei dischi gestiti in un'area diversa per il ripristino di emergenza.
Per eseguire questo esempio, installare l'ultima versione dell'interfaccia della riga di comando di Azure. Per iniziare, eseguire az login
per creare una connessione con Azure.
Gli esempi per l'interfaccia della riga di comando di Azure sono scritti per la shell bash
. Per eseguire questo esempio in Windows PowerShell o dal prompt dei comandi, può essere necessario cambiare elementi dello script.
Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.
Script di esempio
# Verified per Raman Kumar as of 2/23/2022
# <FullScript>
#Provide the subscription Id where snapshot is created
subscriptionId="<subscriptionId>"
#Provide the name of your resource group where snapshot is created
resourceGroupName=myResourceGroupName
#Provide the snapshot name
snapshotName=mySnapshotName
#Provide Shared Access Signature (SAS) expiry duration in seconds e.g. 3600.
#Know more about SAS here: https://docs.microsoft.com/en-us/azure/storage/storage-dotnet-shared-access-signature-part-1
sasExpiryDuration=3600
#Provide storage account name where you want to copy the snapshot.
storageAccountName=mystorageaccountname
#Name of the storage container where the downloaded snapshot will be stored
storageContainerName=mystoragecontainername
#Provide the key of the storage account where you want to copy snapshot.
storageAccountKey=mystorageaccountkey
#Provide the name of the VHD file to which snapshot will be copied.
destinationVHDFileName=myvhdfilename
az account set --subscription $subscriptionId
sas=$(az snapshot grant-access --resource-group $resourceGroupName --name $snapshotName --duration-in-seconds $sasExpiryDuration --query [accessSas] -o tsv)
az storage blob copy start --destination-blob $destinationVHDFileName --destination-container $storageContainerName --account-name $storageAccountName --account-key $storageAccountKey --source-uri $sas
# </FullScript>
Spiegazione dello script
Questo script usa i comandi seguenti per generare l'URI di firma di accesso condiviso per uno snapshot gestito e copia lo snapshot in un account di archiviazione usando tale URI. Ogni comando della tabella include collegamenti alla documentazione specifica del comando.
Comando | Note |
---|---|
az snapshot grant-access | Genera SAS di sola lettura usati per copiare il file VHD sottostante in un account di archiviazione o scaricarlo in locale |
az storage blob copy start | Copia un BLOB in modo asincrono da un account di archiviazione a un altro |
Passaggi successivi
Creare un disco gestito da un disco rigido virtuale
Creare una macchina virtuale da un disco gestito
Per altre informazioni sull'interfaccia della riga di comando di Azure, vedere la documentazione sull'interfaccia della riga di comando di Azure.
Altri esempi di script dell'interfaccia della riga di comando di dischi gestiti e della macchina virtuale aggiuntiva sono reperibili nella documentazione della macchina virtuale Linux di Azure.