Självstudie: Skapa och hantera virtuella Linux-datorer med Azure CLI
Gäller för: ✔️ Flexibla skalningsuppsättningar för virtuella Linux-datorer ✔️
Med virtuella Azure-datorer får du en fullständigt konfigurerbar och flexibel datormiljö. I den här självstudien beskrivs den grundläggande distributionen av virtuella Azure-datorer, till exempel att välja en VM-storlek, välja en VM-avbildning och distribuera en virtuell dator. Du lär dig att:
- Skapa och ansluta till en virtuell dator
- Välja och använda VM-avbildningar
- Visa och använda specifika VM-storlekar
- Ändra storlek på en virtuell dator
- Visa och förstå tillstånd för virtuella datorer
I den här självstudien används CLI i Azure Cloud Shell, som ständigt uppdateras till den senaste versionen.
Om du väljer att installera och använda CLI:t lokalt för den här självstudien måste du köra Azure CLI version 2.0.30 eller senare. Kör az --version
för att hitta versionen. Om du behöver installera eller uppgradera kan du läsa Installera Azure CLI.
Skapa resursgrupp
Skapa en resursgrupp med kommandot az group create.
En Azure-resursgrupp är en logisk container där Azure-resurser distribueras och hanteras. En resursgrupp måste skapas före den virtuella datorn. I det här exemplet skapas en resursgrupp med namnet myResourceGroupVM i regionen eastus2 .
az group create --name myResourceGroupVM --location eastus2
Resursgruppen som anges när du skapar eller ändrar en VM visas i hela den här självstudien.
Skapa en virtuell dator
Skapa en virtuell dator med kommandot az vm create.
När du skapar en virtuell dator finns flera tillgängliga alternativ, som t.ex. avbildning av operativsystemet, bestämning av diskstorlek och administrativa autentiseringsuppgifter. I följande exempel skapas en virtuell dator med namnet myVM som kör SUSE Linux Enterprise Server (SLES). Ett användarkonto med namnet azureuser skapas på den virtuella datorn och om inte SSH-nycklar finns genereras de på standardplatsen för nyckeln (~/.ssh):
az vm create \
--resource-group myResourceGroupVM \
--name myVM \
--image SuseSles15SP3 \
--public-ip-sku Standard \
--admin-username azureuser \
--generate-ssh-keys
Det kan ta några minuter att skapa den virtuella datorn. När den virtuella datorn skapats visar Azure CLI information om den virtuella datorn. Anteckna , den publicIpAddress
här adressen kan användas för att komma åt den virtuella datorn.
{
"fqdns": "",
"id": "/subscriptions/d5b9d4b7-6fc1-0000-0000-000000000000/resourceGroups/myResourceGroupVM/providers/Microsoft.Compute/virtualMachines/myVM",
"location": "eastus2",
"macAddress": "00-0D-3A-23-9A-49",
"powerState": "VM running",
"privateIpAddress": "10.0.0.4",
"publicIpAddress": "52.174.34.95",
"resourceGroup": "myResourceGroupVM"
}
Ansluta till virtuella datorer
Du kan nu ansluta till den virtuella datorn via SSH i Azure Cloud Shell eller från den lokala datorn. Byt ut IP-adressen i exemplet mot den publicIpAddress
du skrev upp i föregående steg.
ssh azureuser@52.174.34.95
När du loggat in i den virtuella datorn kan du installera och konfigurera program. När du är klar stänger du SSH-sessionen på vanligt sätt:
exit
Förstå VM-avbildningar
Azure Marketplace innehåller många avbildningar som kan användas för att skapa virtuella datorer. I de föregående stegen skapades en virtuell dator med en Ubuntu-avbildning. I det här steget används Azure CLI för att söka på marknadsplatsen efter en Ubuntu-avbildning, som sedan används för att distribuera en andra virtuell dator.
Du kan lista de vanligaste avbildningarna med kommandot az vm image list.
az vm image list --output table
Kommandot returnerar de populäraste avbildningarna av virtuella datorer på Azure.
Architecture Offer Publisher Sku Urn UrnAlias Version
-------------- ---------------------------- ---------------------- ---------------------------------- ------------------------------------------------------------------------------ ----------------------- ---------
x64 debian-10 Debian 10 Debian:debian-10:10:latest Debian latest
x64 flatcar-container-linux-free kinvolk stable kinvolk:flatcar-container-linux-free:stable:latest Flatcar latest
x64 opensuse-leap-15-3 SUSE gen2 SUSE:opensuse-leap-15-3:gen2:latest openSUSE-Leap latest
x64 RHEL RedHat 7-LVM RedHat:RHEL:7-LVM:latest RHEL latest
x64 sles-15-sp3 SUSE gen2 SUSE:sles-15-sp3:gen2:latest SLES latest
x64 0001-com-ubuntu-server-jammy Canonical 18.04-LTS Canonical:UbuntuServer:18.04-LTS:latest UbuntuLTS latest
x64 WindowsServer MicrosoftWindowsServer 2022-Datacenter MicrosoftWindowsServer:WindowsServer:2022-Datacenter:latest Win2022Datacenter latest
x64 WindowsServer MicrosoftWindowsServer 2022-datacenter-azure-edition-core MicrosoftWindowsServer:WindowsServer:2022-datacenter-azure-edition-core:latest Win2022AzureEditionCore latest
x64 WindowsServer MicrosoftWindowsServer 2019-Datacenter MicrosoftWindowsServer:WindowsServer:2019-Datacenter:latest Win2019Datacenter latest
x64 WindowsServer MicrosoftWindowsServer 2016-Datacenter MicrosoftWindowsServer:WindowsServer:2016-Datacenter:latest Win2016Datacenter latest
x64 WindowsServer MicrosoftWindowsServer 2012-R2-Datacenter MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:latest Win2012R2Datacenter latest
x64 WindowsServer MicrosoftWindowsServer 2012-Datacenter MicrosoftWindowsServer:WindowsServer:2012-Datacenter:latest Win2012Datacenter latest
x64 WindowsServer MicrosoftWindowsServer 2008-R2-SP1 MicrosoftWindowsServer:WindowsServer:2008-R2-SP1:latest Win2008R2SP1 latest
Du kan se en fullständig lista genom att lägga till parametern --all
. Listan med avbildningar kan även filtreras efter --publisher
eller –-offer
. I det här exemplet filtreras listan för alla bilder, publicerade av OpenLogic, med ett erbjudande som matchar 0001-com-ubuntu-server-jammy.
az vm image list --offer 0001-com-ubuntu-server-jammy --publisher Canonical --all --output table
Exempel på partiella utdata:
Architecture Offer Publisher Sku Urn Version
-------------- --------------------------------- ----------- --------------- ------------------------------------------------------------------------ ---------------
x64 0001-com-ubuntu-server-jammy Canonical 22_04-lts Canonical:0001-com-ubuntu-server-jammy:22_04-lts:22.04.202204200 22.04.202204200
x64 0001-com-ubuntu-server-jammy Canonical 22_04-lts Canonical:0001-com-ubuntu-server-jammy:22_04-lts:22.04.202205060 22.04.202205060
x64 0001-com-ubuntu-server-jammy Canonical 22_04-lts Canonical:0001-com-ubuntu-server-jammy:22_04-lts:22.04.202205280 22.04.202205280
x64 0001-com-ubuntu-server-jammy Canonical 22_04-lts Canonical:0001-com-ubuntu-server-jammy:22_04-lts:22.04.202206040 22.04.202206040
x64 0001-com-ubuntu-server-jammy Canonical 22_04-lts Canonical:0001-com-ubuntu-server-jammy:22_04-lts:22.04.202206090 22.04.202206090
x64 0001-com-ubuntu-server-jammy Canonical 22_04-lts Canonical:0001-com-ubuntu-server-jammy:22_04-lts:22.04.202206160 22.04.202206160
x64 0001-com-ubuntu-server-jammy Canonical 22_04-lts Canonical:0001-com-ubuntu-server-jammy:22_04-lts:22.04.202206220 22.04.202206220
x64 0001-com-ubuntu-server-jammy Canonical 22_04-lts Canonical:0001-com-ubuntu-server-jammy:22_04-lts:22.04.202207060 22.04.202207060
Kommentar
Canonical har ändrat de erbjudandenamn som de använder för de senaste versionerna. Före Ubuntu 20.04 är erbjudandenamnet UbuntuServer. För Ubuntu 20.04 är 0001-com-ubuntu-server-focal
erbjudandenamnet och för Ubuntu 22.04 är 0001-com-ubuntu-server-jammy
det .
Om du vill distribuera en virtuell dator med en specifik avbildning, antecknar du värdet i Urn-kolumnen vilken består av utgivare, erbjudande, SKU och eventuellt ett versionsnummer för att identifiera avbildningen. När du anger avbildningen kan avbildningsversionsnumret ersättas med latest
, som väljer den senaste versionen av distributionen. I det här exemplet används parametern --image
för att ange den senaste versionen av en Ubuntu 22.04.
az vm create --resource-group myResourceGroupVM --name myVM2 --image Canonical:0001-com-ubnutu-server-jammy:22_04-lts:latest --generate-ssh-keys
Förstå VM-storlekar
Storleken på den virtuella datorn avgör hur mycket av beräkningsresurser som CPU, GPU och minne som är tillgängliga för den virtuella datorn. Virtuella datorer måste ha lämplig storlek för förväntad arbetsbelastning. Om arbetsbelastningen ökar kan man ändra storlek på den befintliga virtuella datorn.
VM-storlekar
I följande tabell kategoriseras storlekarna i användningsfall.
Typ | Beskrivning |
---|---|
Generell användning | Balanserat förhållande mellan processor och minne. Perfekt för utveckling eller test samt små till medelstora lösningar för program och data. |
Beräkningsoptimerad | Högt förhållande mellan processor och minne. Bra för program med medelhög trafik, nätverkstillämpningar och batchprocesser. |
Minnesoptimerad | Högt förhållande mellan minne och kärna. Utmärkt för relationsdatabaser, mellanstora till stora cacheminnen och minnesinterna analyser. |
Lagringsoptimerad | Högt diskgenomflöde och I/O. Perfekt för stordata, SQL- och NoSQL-databaser. |
GPU | Virtuella specialdatorer som är avsedda för tung grafisk rendering och videoredigering. |
Höga prestanda | Virtuella datorer med de kraftfullaste processorerna och nätverksgränssnitt för stora dataflöden (RDMA). |
Hitta tillgängliga VM-storlekar
Om du vill se en lista med VM-storlekar som är tillgängliga i en viss region kan du använda kommandot az vm list-sizes.
az vm list-sizes --location eastus2 --output table
Exempel på partiella utdata:
MaxDataDiskCount MemoryInMb Name NumberOfCores OsDiskSizeInMb ResourceDiskSizeInMb
------------------ ------------ ---------------------- --------------- ---------------- ----------------------
4 8192 Standard_D2ds_v4 2 1047552 76800
8 16384 Standard_D4ds_v4 4 1047552 153600
16 32768 Standard_D8ds_v4 8 1047552 307200
32 65536 Standard_D16ds_v4 16 1047552 614400
32 131072 Standard_D32ds_v4 32 1047552 1228800
32 196608 Standard_D48ds_v4 48 1047552 1843200
32 262144 Standard_D64ds_v4 64 1047552 2457600
4 8192 Standard_D2ds_v5 2 1047552 76800
8 16384 Standard_D4ds_v5 4 1047552 153600
16 32768 Standard_D8ds_v5 8 1047552 307200
32 65536 Standard_D16ds_v5 16 1047552 614400
32 131072 Standard_D32ds_v5 32 1047552 1228800
32 196608 Standard_D48ds_v5 48 1047552 1843200
32 262144 Standard_D64ds_v5 64 1047552 2457600
32 393216 Standard_D96ds_v5 96 1047552 3686400
Skapa en virtuell dator med en specifik storlek
I föregående exempel angavs inte en storlek vilket ger en standardstorlek på den virtuella datorn. En VM-storlek kan väljas när den skapas med hjälp av az vm create och parametern --size
.
az vm create \
--resource-group myResourceGroupVM \
--name myVM3 \
--image SuseSles15SP3 \
--size Standard_D2ds_v4 \
--generate-ssh-keys
Ändra storlek på en virtuell dator
När en virtuell dator har distribuerats kan storleken ändras för att öka eller minska resurstilldelningen. Kommandot az vm show visar den virtuella datorns aktuella storlek:
az vm show --resource-group myResourceGroupVM --name myVM --query hardwareProfile.vmSize
Kontrollera om önskad storlek är tillgänglig i det aktuella Azure-klustret innan du ändrar storleken på en virtuell dator. Kommandot az vm list-vm-resize-options returnerar en lista med storlekar.
az vm list-vm-resize-options --resource-group myResourceGroupVM --name myVM --query [].name
Om önskad storlek är tillgänglig kan storleken på den virtuella datorn ändras medan den är igång, men den startas om under åtgärden. Använd kommandot az vm resize för att ändra storleken.
az vm resize --resource-group myResourceGroupVM --name myVM --size Standard_D4s_v3
Om önskad storlek inte finns i det aktuella klustret måste den virtuella datorn frigöras innan åtgärden för att ändra storlek kan utföras. Använd kommandot az vm deallocate för att stoppa och frigöra den virtuella datorn. När den virtuella datorn startas igen kan alla data på den temporära disken tas bort. Den offentliga IP-adressen ändras också om inte en statisk IP-adress används.
az vm deallocate --resource-group myResourceGroupVM --name myVM
När datorn är frigjord kan storleksändringen utföras.
az vm resize --resource-group myResourceGroupVM --name myVM --size Standard_GS1
När storleksändringen utförts kan den virtuella datorn startas.
az vm start --resource-group myResourceGroupVM --name myVM
Energinivåer för VM
En virtuell Azure-dator kan ha en av många energinivåer. Det här tillståndet motsvarar aktuellt tillstånd för den virtuella datorn i hypervisor-programmet.
Energinivåer
Energinivå | beskrivning |
---|---|
Startar | Anger att den virtuella datorn startas. |
Körs | Anger att den virtuella datorn körs. |
Stoppas | Anger att den virtuella datorn stoppas. |
Stoppat | Anger att den virtuella datorn har stoppats. Virtuella datorer i ett stoppat tillstånd kan fortfarande medföra debitering. |
Frigör | Anger att den virtuella datorn frigörs. |
Frigjord | Anger att den virtuella datorn är frånkopplad från hypervisor-programmet, men att den fortfarande är tillgänglig i kontrollplanet. Virtuella datorer med tillståndet Frigjord medför inte några debiteringar. |
- | Anger att energinivån för den virtuella datorn är okänd. |
Hitta energinivån
Om du vill hämta tillståndet för en viss virtuell dator, använder du kommandot az vm get instance-view. Du måste ange ett giltigt namn för en virtuell dator och resursgrupp.
az vm get-instance-view \
--name myVM \
--resource-group myResourceGroupVM \
--query instanceView.statuses[1] --output table
Utdata:
Code Level DisplayStatus
------------------ ------- ---------------
PowerState/running Info VM running
Om du vill hämta energitillståndet för alla virtuella datorer i din prenumeration använder du Virtual Machines – List All API med parameterstatusEnligt inställd på true.
Administrativa uppgifter
Under livscykeln för en virtuell dator kan du vilja utföra administrativa uppgifter som att starta, stoppa eller ta bort en virtuell dator. Dessutom kanske du vill skapa skript för att automatisera repetitiva och komplicerade uppgifter. Med Azure CLI kan många vanliga administrativa uppgifter köras från kommandoraden eller i skript.
Hämta IP-adress
Det här kommandot returnerar de privata och offentliga IP-adresserna för en virtuell dator.
az vm list-ip-addresses --resource-group myResourceGroupVM --name myVM --output table
Stoppa virtuell dator
az vm stop --resource-group myResourceGroupVM --name myVM
Starta virtuell dator
az vm start --resource-group myResourceGroupVM --name myVM
Ta bort vm-resurser
Beroende på hur du tar bort en virtuell dator kan den bara ta bort den virtuella datorresursen, inte nätverks- och diskresurserna. Du kan ändra standardbeteendet för att ta bort andra resurser när du tar bort den virtuella datorn. Mer information finns i Ta bort en virtuell dator och anslutna resurser.
Om du tar bort en resursgrupp tas även alla resurser i resursgruppen bort, till exempel den virtuella datorn, det virtuella nätverket och disken. Parametern --no-wait
återför kontrollen till kommandotolken utan att vänta på att uppgiften slutförs. Parametern --yes
bekräftar att du vill ta bort resurserna utan att tillfrågas ytterligare en gång.
az group delete --name myResourceGroupVM --no-wait --yes
Nästa steg
I den här självstudien har du lärt dig om grundläggande VM-skapande och hantering, till exempel att:
- Skapa och ansluta till en virtuell dator
- Välja och använda VM-avbildningar
- Visa och använda specifika VM-storlekar
- Ändra storlek på en virtuell dator
- Visa och förstå tillstånd för virtuella datorer
Gå vidare till nästa självstudie om du vill lära dig mer om diskar i virtuella dator.