Skapa en hanterad disk från en ögonblicksbild med CLI (Linux)

Den här artikeln innehåller två Azure CLI skript för att skapa en hanterad disk från en ögonblicksbild. Det första skriptet skapar en hanterad disk med plattformshanterade nycklar och det andra skriptet skapar en hanterad disk med kundhanterade nycklar. När du har skapat operativsystem och datadiskar från respektive ögonblicksbild kan du använda diskarna för att skapa en virtuell dator eller återställa data på en befintlig virtuell dator.

Om du inte har något Azure-konto skapar du ett kostnadsfritt konto innan du börjar.

Förutsättningar

Skapa hanterade diskar från ögonblicksbilder

Starta Azure Cloud Shell

Azure Cloud Shell är ett interaktivt gränssnitt som du kan använda för att utföra stegen i den här artikeln. Den har vanliga Azure-verktyg förinstallerat och har konfigurerats för användning med ditt konto.

Om du vill öppna Cloud Shell väljer du bara Prova från det övre högra hörnet i ett kodblock. Du kan också starta Cloud Shell i en separat webbläsarflik genom att gå till https://shell.azure.com.

När Cloud Shell öppnas kontrollerar du att Bash har valts för din miljö. Efterföljande sessioner använder Azure CLI i en Bash-miljö, Välj Kopiera för att kopiera kodblocken, klistra in dem i Cloud Shell och tryck på Retur för att köra det.

Logga in på Azure

Cloud Shell autentiseras automatiskt under det första kontot som loggas in med. Använd följande skript för att logga in med en annan prenumeration och ersätta subscriptionId med ditt Azure-prenumerations-ID.

Om du inte har något Azure-konto skapar du ett kostnadsfritt konto innan du börjar.

subscription="subscriptionId" # Set Azure subscription ID here

az account set -s $subscription # ...or use 'az login'

För mer information, se ange aktiv prenumeration eller logga in interaktivt.

Diskar med plattformshanterade nycklar

Använd det här skriptet för att skapa en hanterad disk med plattformshanterade nycklar. Ange prenumeration, resursgrupp, källögonblicksbild, nytt disknamn, diskstorlek och lagringstyp. För Premium SSD v2 och Ultra Disk tillhandahåller du även en tillgänglighetszon. Skriptet anger prenumerationen, hämtar resurs-ID för ögonblicksbild och skapar den hanterade disken från ögonblicksbilden på samma plats.

#Provide the subscription Id of the subscription where you want to create Managed Disks
subscriptionId="<subscriptionId>"

#Provide the name of your resource group
resourceGroupName=myResourceGroupName

#Provide the name of the snapshot that will be used to create Managed Disks
snapshotName=mySnapshotName

#Provide the name of the new Managed Disks that will be create
diskName=myDiskName

#Provide the size of the disks in GB. It should be greater than the VHD file size.
diskSize=128

#Provide the storage type for Managed Disk. Acceptable values are Standard_LRS, Premium_LRS, PremiumV2_LRS, StandardSSD_LRS, UltraSSD_LRS, Premium_ZRS, and StandardSSD_ZRS.
storageType=Premium_LRS

#Required for Premium SSD v2 and Ultra Disks
#Provide the Availability Zone you'd like the disk to be created in, default is 1
zone=1

#Set the context to the subscription Id where Managed Disk will be created
az account set --subscription $subscriptionId

#Get the snapshot Id 
snapshotId=$(az snapshot show --name $snapshotName --resource-group $resourceGroupName --query [id] -o tsv)

#Create a new Managed Disks using the snapshot Id
#Note that managed disk will be created in the same location as the snapshot
#If you're creating a Premium SSD v2 or an Ultra Disk, add "--zone $zone" to the end of the command
az disk create --resource-group $resourceGroupName --name $diskName --sku $storageType --size-gb $diskSize --source $snapshotId

Diskar med kundhanterade nycklar

Använd det här skriptet för att skapa en hanterad disk med kundhanterade nycklar. Utöver prenumerationen, resursgruppen, ögonblicksbilden och de nya diskvärdena anger du måldiskkrypteringsuppsättningen och dess resursgrupp. Skriptet hämtar information om ögonblicksbilden och diskkrypteringsuppsättningen och skapar sedan den hanterade disken från ögonblicksbilden med den angivna diskkrypteringsuppsättningen.

#Provide the subscription Id of the subscription where you want to create managed disks
subscriptionId="<subscriptionId>"

#Provide the name of your resource group
resourceGroupName=myResourceGroupName

#Provide the name of the snapshot that will be used to create managed disks
snapshotName=mySnapshotName

#Provide the name of the new managed disks that will be create
diskName=myDiskName

#Provide the name of the target disk encryption set
diskEncryptionSetName=myName

#Provide the target disk encryption set resource group
diskEncryptionResourceGroup=myGroup

#Required for Premium SSD v2 and Ultra Disks
#Provide the Availability Zone you'd like the disk to be created in, default is 1
zone=1

#Set the context to the subscription Id where managed disk will be created
az account set --subscription $subscriptionId

#Get the snapshot ID
snapshotId=$(az snapshot show --name $snapshotName --resource-group $resourceGroupName --query [id] -o tsv)

#Get the disk encryption set ID
diskEncryptionSetId=$(az disk-encryption-set show --name $diskEncryptionSetName --resource-group $diskEncryptionResourceGroup --query [id] -o tsv)

#Create a new managed disk using the snapshot ID
#The managed disk is created in the same location as the snapshot
#If you're creating a Premium SSD v2 or an Ultra Disk, add "--zone $zone" to the end of the command
az disk create -g $resourceGroupName -n $diskName --source $snapshotId --disk-encryption-set $diskEncryptionSetId

Prestandapåverkan – bakgrundskopieringsprocess

När du skapar en hanterad disk från en ögonblicksbild startar den en bakgrundskopieringsprocess. Du kan ansluta en disk till en VM medan den här processen körs, men du kommer att märka en prestandapåverkan (4k-diskar påverkar läsprestandan, 512e-diskar påverkar både läs- och skrivprestandan) med högre latens, lägre IOPS och lägre genomströmning tills bakgrundskopieringen har slutförts. För Ultra Disks och Premium SSD v2 använder du följande kommando för att kontrollera egenskapen completionPercent . Bakgrundskopian är klar när värdet når 100.

Viktigt!

Du kan inte använda följande avsnitt för att hämta status för bakgrundskopieringsprocessen för andra disktyper än Ultra Disk eller Premium SSD v2. Andra disktyper rapporterar alltid 100 %.

subscriptionId=yourSubscriptionID
resourceGroupName=yourResourceGroupName
diskName=yourDiskName
az account set --subscription $subscriptionId
az disk show -n $diskName -g $resourceGroupName --query [completionPercent] -o tsv

Rensa resurser

Kör följande kommando för att ta bort resursgruppen och alla resurser som den innehåller.

az group delete --name myResourceGroupName

Azure CLI kommandoreferens

Skripten använder följande Azure CLI kommandon för att skapa hanterade diskar, övervaka bakgrundskopieringsprocessen och rensa resurser.

Kommando Anteckningar
az account set Anger prenumerationen där den hanterade disken skapas.
az snapshot show (visar en ögonblicksbild) Hämtar resurs-ID:t för källögonblicksbilden.
visa az disk-encryption-set Hämtar information om måldiskkrypteringsuppsättningen för en disk med kundhanterade nycklar.
az disk create Skapar en hanterad disk från källögonblicksbilden.
az disk show Hämtar procentsatsen för slutförande av bakgrundskopior för Premium SSD v2 och Ultra Disk.
az group delete - kommando för att ta bort en grupp Tar bort resursgruppen och dess resurser.

Nästa steg

Skapa en virtuell dator genom att koppla en hanterad disk som OS-disk

Mer information om Azure CLI finns i Azure CLI-dokumentationen.

Fler cli-skriptexempel för virtuella datorer och hanterade diskar finns i dokumentationen om virtuella Azure Linux-datorer.