Handledning - Hantera Azure-diskar med Azure CLI

Gäller för: ✔️ Flexibla skalningsuppsättningar för virtuella Linux-datorer ✔️

Azure virtuella maskiner (VM) använder diskar för att lagra operativsystemet, program och data. När du skapar en virtuell dator är det viktigt att välja en diskstorlek och konfiguration som är lämplig för den förväntade arbetsbelastningen. Denna handledning visar dig hur du distribuerar och hanterar VM-diskar. Du lär dig mer om:

  • OS-diskar och tillfälliga diskar
  • Dataskivor
  • Disktyper och prestandaalternativ
  • Diskprestanda
  • Att ansluta och förbereda datadiskar
  • Diskögonblicksbilder

Förvalda Azure-diskar

När en virtuell Azure-maskin skapas, ansluts två diskar automatiskt till den virtuella maskinen.

Operativsystemdisk – Operativsystemdisken (OS) är värd för operativsystemet för den virtuella datorn och kan vara upp till 4 095 gibibyte (GiB), även om många operativsystem partitioneras med master boot records (MBR) som standard. En MBR begränsar den användbara storleken till 2 TiB. Om du behöver mer än 2 TiB, skapa och anslut datadiskar och använd dem för datalagring. Enhetsnamn varierar beroende på typ av VM-generering och diskstyrenhet, så förlita dig inte på en fast sökväg, till exempel /dev/sda. Cachelagring av os-diskar är optimerad för os-prestanda, så lagra inte programdata på OS-disken. Använd datadiskar för program- och datalagring.

Temporary disk – Tillfällig lagring använder lokal lagring på samma Azure värd som den virtuella datorn. Beroende på den virtuella datorns storlek och generering kan den här lagringen visas som en tillfällig disk eller lokal NVMe-disk. Det är högpresterande, men icke-beständigt. Om den virtuella datorn flyttas till en ny värd tas data om tillfällig lagring bort. Den tillgängliga storleken beror på storleken på den virtuella datorn.

Dataskivor

För att installera applikationer och lagra data kan ytterligare datadiskar läggas till. Dataskivor bör användas i alla situationer där hållbar och responsiv datalagring önskas. Storleken på den virtuella maskinen avgör hur många dataskivor som kan kopplas till en VM.

Disktyper för virtuella datorer

Azure hanterade diskar erbjuder fem disktyper:

I allmänhet använder du Premium SSD v2 eller Premium SSD för produktionsarbetsbelastningar, Standard SSD för dev/test och mindre prestandakänsliga arbetsbelastningar och Ultra Disks för IO-intensiva dataarbetsbelastningar. Ultra Diskar och Premium SSD v2 är endast datadiskalternativ och kan inte användas som OS-diskar. Detaljerade begränsningar, regiontillgänglighet och storleksvägledning finns i Azure hanterade disktyper.

Aktivera Azure Cloud Shell

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

Öppna Cloud Shell genom att välja Try it i det övre högra hörnet i ett kodblock. Du kan också starta Cloud Shell på en separat webbläsarflik på https://shell.azure.com. Välj Copy för att kopiera ett kodblock, klistra in det i Cloud Shell och tryck på Retur för att köra det.

Skapa och anslut diskar

Dataskivor kan skapas och kopplas vid VM-skapandet eller till en befintlig VM.

Anslut disk vid VM-skapande

Skapa en resursgrupp med kommandot az group create.

az group create --name myResourceGroupDisk --location eastus

Skapa en virtuell dator med kommandot az vm create . I följande exempel skapas en virtuell dator med namnet myVM, ett användarkonto med namnet azureuser läggs till och SSH-nycklar genereras om de inte redan finns. Argumentet --data-disk-sizes-gb anger extra datadiskar som ska skapas och kopplas. Om du vill skapa och ansluta fler än en disk använder du en utrymmesavgränsad lista över diskstorlekar. I följande exempel skapar du en virtuell dator med två datadiskar, båda 128 GiB. Eftersom diskarna är 128 GiB konfigurerar du båda som P10-diskar, vilket ger högst 500 IOPS per disk.

az vm create \
  --resource-group myResourceGroupDisk \
  --name myVM \
  --image Ubuntu2204 \
  --size Standard_DS2_v2 \
  --admin-username azureuser \
  --generate-ssh-keys \
  --data-disk-sizes-gb 128 128

Anslut disk till befintlig virtuell maskin

För att skapa och ansluta en ny disk till en befintlig virtuell maskin, använd kommandot az vm disk attach. I följande exempel skapas en premiumdisk med 128 GiB och den kopplas till den virtuella dator som skapades i det senaste steget.

az vm disk attach \
    --resource-group myResourceGroupDisk \
    --vm-name myVM \
    --name myDataDisk \
    --size-gb 128 \
    --sku Premium_LRS \
    --new

Förbereda en datadisk i Linux

När du har kopplat en disk till den virtuella datorn konfigurerar du operativsystemet så att det använder disken. Följande exempel konfigurerar manuellt den första 128-GiB-datadisken som kopplades när du skapade den virtuella datorn. Den virtuella datorns diskkontrollant avgör hur Linux exponerar disken. Du kan också automatisera den här processen med hjälp av cloud-init, som beskrivs i en senare självstudie.

Skapa en SSH-anslutning med den virtuella maskinen. Ersätt exempel-IP-adressen med den offentliga IP:n för den virtuella maskinen.

ssh azureuser@10.101.10.10

Kontrollera att du har identifierat rätt datadisk innan du formaterar den. Om du formaterar fel disk resulterar det i dataförlust.

På en virtuell dator med en SCSI-styrenhet använder du lsblk för att identifiera datadisken. I följande exempel används /dev/sdc. Ersätt sdc med enhetsnamnet för datadisken.

lsblk -o NAME,HCTL,SIZE,MOUNTPOINT | grep -i "sd"

Partitioneras disken med partedoch använd partprobe sedan för att göra operativsystemet medvetet om den nya partitionstabellen.

sudo parted /dev/sdc --script mklabel gpt mkpart xfspart xfs 0% 100%
sudo partprobe /dev/sdc

Skriv ett filsystem till partitionen med hjälp av kommandot mkfs.

sudo mkfs.xfs /dev/sdc1

Montera den nya disken så att den är åtkomlig i operativsystemet.

sudo mkdir /datadrive && sudo mount /dev/sdc1 /datadrive

Disken kan nu nås via monteringspunkten /datadrive, vilket kan verifieras genom att köra kommandot df -h.

df -h | grep -i "sd"

Utdata visar att den nya enheten är monterad på /datadrive.

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        29G  2.0G   27G   7% /
/dev/sda15      105M  3.6M  101M   4% /boot/efi
/dev/sdb1        14G   41M   13G   1% /mnt
/dev/sdc1       128G   52M  128G   1% /datadrive

För att säkerställa att enheten återmonteras efter en omstart måste den läggas till i /etc/fstab-filen. För att göra detta, hämta diskens UUID med blkid-verktyget.

sudo -i blkid

Utdata visar enhetens UUID. På en virtuell dator med en SCSI-styrenhet kan partitionen visas som /dev/sdc1. På en virtuell dator med en NVMe-styrenhet kan den visas som /dev/nvme0n2p1.

/dev/sdc1: UUID="33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e" TYPE="xfs"

Anmärkning

Otillbörlig redigering av /etc/fstab-filen kan resultera i ett system som inte kan starta. Om du är osäker läser du distributionens dokumentation för att få information om hur du redigerar filen på rätt sätt. Vi rekommenderar också att du skapar en säkerhetskopia av /etc/fstab-filen innan du redigerar den.

Öppna /etc/fstab-filen i en textredigerare på följande sätt:

sudo nano /etc/fstab

Lägg till en rad liknande följande i /etc/fstab-filen och ersätt UUID-värdet med ditt eget.

UUID=33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e   /datadrive  xfs    defaults,nofail   1  2

När du har redigerat klart filen använder du Ctrl+O för att spara filen och Ctrl+X för att lämna redigeraren.

Nu när disken har konfigurerats, stäng SSH-sessionen.

exit

Skapa en skivavbild

När du tar en ögonblicksbild av en disk skapar Azure en skrivskyddad ögonblicksbildskopia av disken. Azure VM-snapshots är användbara för att snabbt spara statusen på en VM innan du gör konfigurationsändringar. I händelse av ett problem eller fel kan du återställa en virtuell dator med hjälp av en ögonblicksbild. När en virtuell dator har mer än en disk tas en ögonblicksbild av varje disk oberoende av varandra. Om du vill göra programkonsekventa säkerhetskopieringar bör du överväga att stoppa den virtuella datorn innan du tar diskögonblicksbilder. Du kan också använda Azure Backup, som stöder automatiserade säkerhetskopieringar medan den virtuella datorn körs.

Skapa ögonblicksbild

Innan du skapar en ögonblicksbild behöver du diskens ID eller namn. Använd az vm show för att visa diskens ID. I det här exemplet lagras disk-ID:t i en variabel så att det kan användas i ett senare steg.

osdiskid=$(az vm show \
   -g myResourceGroupDisk \
   -n myVM \
   --query "storageProfile.osDisk.managedDisk.id" \
   -o tsv)

Nu när du har ID:t, använd az snapshot create för att skapa en ögonblicksbild av disken.

az snapshot create \
    --resource-group myResourceGroupDisk \
    --source "$osdiskid" \
    --name osDisk-backup

Skapa disk från ögonblicksbild

Denna ögonblicksbild kan sedan konverteras till en disk med hjälp av az disk create, som kan användas för att återskapa den virtuella maskinen.

az disk create \
   --resource-group myResourceGroupDisk \
   --name mySnapshotDisk \
   --source osDisk-backup

Återställ virtuell maskin från ögonblicksbild

Innan du tar bort den virtuella datorn använder du az vm show för att lagra resurs-ID:n för alla dess datadiskar i variabeln dataDiskIds .

dataDiskIds=$(az vm show \
   --resource-group myResourceGroupDisk \
   --name myVM \
   --query "storageProfile.dataDisks[].managedDisk.id" \
   --output tsv)

För att demonstrera återställning av en virtuell maskin, radera den befintliga virtuella maskinen med hjälp av az vm delete.

az vm delete \
--resource-group myResourceGroupDisk \
--name myVM

Skapa en ny virtuell maskin från snapshot-skivan.

az vm create \
    --resource-group myResourceGroupDisk \
    --name myVM \
    --attach-os-disk mySnapshotDisk \
    --os-type linux

Koppla om datadiskar

Alla datadiskar måste återanslutas till den virtuella maskinen.

Använd az vm disk attach med varje resurs-ID för att koppla om alla datadiskar.

for dataDiskId in $dataDiskIds; do
   az vm disk attach \
      --resource-group myResourceGroupDisk \
      --vm-name myVM \
      --name "$dataDiskId"
done

Nästa steg

I denna handledning lärde du dig om ämnen kring VM-diskar såsom:

  • OS-diskar och tillfälliga diskar
  • Dataskivor
  • Disktyper och prestandaalternativ
  • Diskprestanda
  • Att ansluta och förbereda datadiskar
  • Diskögonblicksbilder

Gå vidare till nästa handledning för att lära dig om att automatisera VM-konfiguration.