Zelfstudie: Schijven maken en gebruiken met een virtuele-machineschaalset met Azure PowerShell
Virtuele-machineschaalsets gebruiken schijven om het besturingssysteem, toepassingen en gegevens van het VM-exemplaar op te slaan. Bij het maken en beheren van een schaalset is het belangrijk dat u een schijfgrootte en configuratie kiest die geschikt zijn voor de verwachte werkbelasting. Deze zelfstudie bevat informatie over het maken en beheren van VM-schijven. In deze zelfstudie leert u over:
- Besturingssysteemschijven en tijdelijke schijven
- Gegevensschijven
- Standard- en Premium-schijven
- Schijfprestaties
- Gegevensschijven koppelen en voorbereiden
Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.
Azure Cloud Shell
Azure host Azure Cloud Shell, een interactieve shell-omgeving die u via uw browser kunt gebruiken. U kunt Bash of PowerShell gebruiken met Cloud Shell om met Azure-services te werken. U kunt de vooraf geïnstalleerde Cloud Shell-opdrachten gebruiken om de code in dit artikel uit te voeren zonder dat u iets hoeft te installeren in uw lokale omgeving.
Om Azure Cloud Shell op te starten:
Optie | Voorbeeld/koppeling |
---|---|
Selecteer Uitproberen in de rechterbovenhoek van een code- of opdrachtblok. Als u Try It selecteert, wordt de code of opdracht niet automatisch gekopieerd naar Cloud Shell. | ![]() |
Ga naar https://shell.azure.com, of selecteer de knop Cloud Shell starten om Cloud Shell in uw browser te openen. | ![]() |
Klik op de knop Cloud Shell in het menu in de balk rechtsboven in de Azure-portal. | ![]() |
Azure Cloud Shell gebruiken:
Start Cloud Shell.
Selecteer de knop Kopiëren op een codeblok (of opdrachtblok) om de code of opdracht te kopiëren.
Plak de code of opdracht in de Cloud Shell-sessie door Ctrl+Shift+V in Windows en Linux te selecteren of door Cmd+Shift+V te selecteren in macOS.
Selecteer Enter om de code of opdracht uit te voeren.
Standaard Azure-schijven
Op het moment dat u een schaalset maakt, worden er automatisch twee schijven aan elk VM-exemplaar gekoppeld.
Besturingssysteemschijf: besturingssysteemschijven kunnen tot 2 TB groot zijn, en hosten het besturingssysteem van het VM-exemplaar. De besturingssysteemschijf is standaard gelabeld met /dev/sda. De schijfcacheconfiguratie van de besturingssysteemschijf is geoptimaliseerd voor besturingssysteemprestaties. Vanwege deze configuratie kan de besturingssysteemschijf beter geen toepassingen of gegevens hosten. Gebruik voor toepassingen en gegevens gegevensschijven, die verderop in dit artikel worden beschreven.
Tijdelijke schijf: tijdelijke schijven gebruiken een SSD-schijf die zich op dezelfde Azure-host bevindt als het VM-exemplaar. Dit zijn krachtige schijven en kunnen worden gebruikt voor bewerkingen zoals tijdelijke gegevensverwerking. Als het VM-exemplaar echter wordt verplaatst naar een nieuwe host, worden gegevens die zijn opgeslagen op een tijdelijke schijf verwijderd. De grootte van de tijdelijke schijf wordt bepaald door de grootte van het VM-exemplaar. Tijdelijke schijven zijn gelabeld als /dev/sdb en hebben een koppelpunt van /mnt.
Azure-gegevensschijven
Er kunnen extra gegevensschijven worden toegevoegd voor het installeren van toepassingen en het opslaan van gegevens. Gegevensschijven moeten worden gebruikt in situaties waarin duurzame en responsieve gegevensopslag gewenst is. Elke gegevensschijf heeft een maximale capaciteit van 4 TB. De grootte van het VM-exemplaar bepaalt hoeveel gegevensschijven er kunnen worden gekoppeld. Voor elke VM-vCPU kunnen twee schijven worden gekoppeld.
Typen VM-schijven
De volgende tabel bevat een vergelijking van de vijf schijftypen, zodat u kunt bepalen welke typen u wilt gebruiken.
Ultraschijven | Premium SSD v2 | Premium SSD | Standard SSD | ||
---|---|---|---|---|---|
Schijftype | SSD | SSD | SSD | SSD | HDD |
Scenario | IO-intensieve workloads, zoals SAP HANA, databases in de bovenste laag (bijvoorbeeld SQL en Oracle) en andere workloads met veel transacties. | Productie- en prestatiegevoelige workloads die consistent lage latentie en hoge IOPS en doorvoer vereisen | Productie- en prestatiegevoelige workloads | Webservers, bedrijfstoepassingen die weinig wordt gebruikt en dev/test | Back-up, niet-kritiek, incidentele toegang |
Maximale schijfgrootte | 65,536 GiB | 65,536 GiB | 32.767 GiB | 32.767 GiB | 32.767 GiB |
Maximale doorvoer | 4,000 MB/s | 1,200 MB/s | 900 MB/s | 750 MB/s | 500 MB/s |
Max. IOPS | 160.000 | 80,000 | 20.000 | 6.000 | 2,000, 3,000* |
Bruikbaar als besturingssysteemschijf? | Nee | No | Ja | Ja | Ja |
*Alleen van toepassing op schijven waarvoor prestaties plus (preview) zijn ingeschakeld.
Zie Opties voor blokopslag met Azure Disk Storage en Elastisch SAN voor een video met een aantal verschillen op hoog niveau voor de verschillende schijftypen, evenals een aantal manieren om te bepalen wat van invloed is op uw workloadvereisten.
Schijven maken en koppelen
U kunt schijven maken en koppelen wanneer u een schaalset maakt, maar ook voor een bestaande schaalset.
Vanaf api-versie 2019-07-01
kunt u de grootte van de besturingssysteemschijf instellen in een virtuele-machineschaalset met de eigenschap storageProfile.osDisk.diskSizeGb . Na het inrichten moet u de schijf mogelijk uitbreiden of opnieuw partitioneren om gebruik te maken van de hele ruimte. Meer informatie over het uitbreiden van het volume in uw besturingssysteem in Windows of Linux.
Schijven koppelen bij het maken van een schaalset
Maak een virtuele-machineschaalset met New-AzVmss. Geef desgevraagd een gebruikersnaam en wachtwoord op voor de VM-exemplaren. Om het verkeer te distribueren naar de verschillende VM-exemplaren, wordt er ook een load balancer gemaakt. De load balancer bevat regels voor het distribueren van verkeer op TCP-poort 80, en voor het toestaan van verkeer van Extern bureaublad op TCP-poort 3389 en externe toegang via PowerShell op TCP-poort 5985.
Er worden twee schijven gemaakt met de parameter -DataDiskSizeGb
. De eerste schijf is 64 GB en de tweede schijf 128 GB. Geef desgevraagd uw eigen beheerdersreferenties op voor de VM-exemplaren in de schaalset:
New-AzResourceGroup -Name "myResourceGroup" -Location "East US"
New-AzVmss `
-ResourceGroupName "myResourceGroup" `
-Location "EastUS" `
-OrchestrationMode "Flexible" `
-VMScaleSetName "myScaleSet" `
-VirtualNetworkName "myVnet" `
-SubnetName "mySubnet" `
-PublicIpAddressName "myPublicIPAddress" `
-LoadBalancerName "myLoadBalancer" `
-DataDiskSizeInGb 64,128
Het duurt enkele minuten om alle schaalsetresources en VM-exemplaren te maken en te configureren.
Een schijf koppelen aan een bestaande schaalset
U kunt ook schijven koppelen aan een bestaande schaalset. Gebruik de schaalset die in de vorige stap is gemaakt om een andere schijf toe te voegen met Add-AzVmssDataDisk. In het volgende voorbeeld wordt een extra schijf van 128 GB gekoppeld aan een bestaande schaalset:
# Get scale set object
$vmss = Get-AzVmss `
-ResourceGroupName "myResourceGroup" `
-VMScaleSetName "myScaleSet"
# Attach a 128 GB data disk to LUN 2
Add-AzVmssDataDisk `
-VirtualMachineScaleSet $vmss `
-CreateOption Empty `
-Lun 2 `
-DiskSizeGB 128
# Update the scale set to apply the change
Update-AzVmss `
-ResourceGroupName "myResourceGroup" `
-VMScaleSetName "myScaleSet" `
-VirtualMachineScaleSet $vmss
Als u ook een gegevensschijf wilt toevoegen aan een afzonderlijk exemplaar in een schaalset, gebruikt u Add-AzVmssVMDataDisk.
$VirtualMachine = Get-AzVmssVM -ResourceGroupName "myResourceGroup" -VMScaleSetName "myScaleSet" -InstanceId 1
Add-AzVmssVMDataDisk -VirtualMachineScaleSetVM $VirtualMachine -LUN 2 -DiskSizeInGB 1 -CreateOption Empty -StorageAccountType Standard_LRS
Update-AzVmssVM -VirtualMachineScaleSetVM $VirtualMachine
Gekoppelde schijven opvragen
Gebruik Get-AzVmss als volgt om informatie op te vragen over schijven die zijn gekoppeld aan een schaalset:
Get-AzVmss -ResourceGroupName "myResourceGroup" -Name "myScaleSet"
Onder de eigenschap VirtualMachineProfile.StorageProfile wordt de lijst met DataDisks weergegeven. U ziet vervolgens gegevens van de grootte van de schijf, de opslaglaag en het LUN (Logical Unit Number). In de volgende voorbeelduitvoer ziet u gegevens van de drie gegevensschijven die aan het VM-exemplaar zijn gekoppeld:
DataDisks[0] :
Lun : 0
Caching : None
CreateOption : Empty
DiskSizeGB : 64
ManagedDisk :
StorageAccountType : PremiumLRS
DataDisks[1] :
Lun : 1
Caching : None
CreateOption : Empty
DiskSizeGB : 128
ManagedDisk :
StorageAccountType : PremiumLRS
DataDisks[2] :
Lun : 2
Caching : None
CreateOption : Empty
DiskSizeGB : 128
ManagedDisk :
StorageAccountType : PremiumLRS
Een schijf loskoppelen
Wanneer u een bepaalde schijf niet meer nodig hebt, kunt u deze loskoppelen van de schaalset. De schijf wordt dan verwijderd uit alle VM-exemplaren in de schaalset. Als u een schijf wilt loskoppelen van een schaalset, gebruikt u Remove-AzVmssDataDisk en geeft u het LUN van de schijf op. De LUN's worden weergegeven in de uitvoer van Get-AzVmss in de vorige sectie. In het volgende voorbeeld wordt het LUN 3 losgekoppeld van de schaalset:
# Get scale set object
$vmss = Get-AzVmss `
-ResourceGroupName "myResourceGroup" `
-VMScaleSetName "myScaleSet"
# Detach a disk from the scale set
Remove-AzVmssDataDisk `
-VirtualMachineScaleSet $vmss `
-Lun 2
# Update the scale set and detach the disk from the VM instances
Update-AzVmss `
-ResourceGroupName "myResourceGroup" `
-VMScaleSetName "myScaleSet" `
-VirtualMachineScaleSet $vmss
Als u een gegevensschijf wilt verwijderen uit een afzonderlijke instantie in een schaalset, gebruikt u Remove-AzVmssVMDataDisk.
$VirtualMachine = Get-AzVmssVM -ResourceGroupName "myResourceGroup" -VMScaleSetName "myScaleSet" -InstanceId "c91dfbd9"
Remove-AzVmssVMDataDisk -VirtualMachineScaleSetVM $VirtualMachine -Lun 2
Update-AzVmssVM -VirtualMachineScaleSetVM -VM $VirtualMachine
Resources opschonen
Als u de schaalset en schijven wilt verwijderen, verwijdert u de resourcegroep en alle bijbehorende resources met Remove-AzResourceGroup. De parameter -Force
bevestigt dat u de resources wilt verwijderen, zonder een extra prompt om dit te doen. De parameter -AsJob
retourneert het besturingselement naar de prompt zonder te wachten totdat de bewerking is voltooid.
Remove-AzResourceGroup -Name "myResourceGroup" -Force -AsJob
Volgende stappen
In deze zelfstudie hebt u geleerd hoe u schijven maakt en gebruikt met schaalsets met Azure PowerShell:
- Besturingssysteemschijven en tijdelijke schijven
- Gegevensschijven
- Standard- en Premium-schijven
- Schijfprestaties
- Gegevensschijven koppelen en voorbereiden
Ga naar de volgende zelfstudie voor informatie over het gebruik van een aangepaste installatiekopie voor de VM-exemplaren in uw schaalset.