Tutorial: Erstellen und Verwalten von Datenträgern mit VM-Skalierungsgruppe mit Azure PowerShell

Für Virtual Machine Scale Sets werden Datenträger zum Speichern des Betriebssystems, der Anwendungen und der Daten von VM-Instanzen verwendet. Beim Erstellen und Verwalten einer Skalierungsgruppe muss darauf geachtet werden, eine für den erwarteten Workload geeignete Datenträgergröße und -konfiguration auszuwählen. In diesem Tutorial wird beschrieben, wie Sie VM-Datenträger erstellen und verwalten. In diesem Tutorial lernen Sie Folgendes:

  • Betriebssystemdatenträger und temporäre Datenträger
  • Datenträger
  • Standard- und Premium-Datenträger
  • Datenträgerleistung
  • Anfügen und Vorbereiten von Datenträgern

Wenn Sie kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.

Azure Cloud Shell

Azure hostet Azure Cloud Shell, eine interaktive Shell-Umgebung, die Sie über Ihren Browser nutzen können. Sie können entweder Bash oder PowerShell mit Cloud Shell verwenden, um mit Azure-Diensten zu arbeiten. Sie können die vorinstallierten Befehle von Cloud Shell verwenden, um den Code in diesem Artikel auszuführen, ohne etwas in Ihrer lokalen Umgebung installieren zu müssen.

Starten von Azure Cloud Shell:

Option Beispiel/Link
Wählen Sie rechts oben in einem Code- oder Befehlsblock die Option Ausprobieren aus. Durch die Auswahl von Ausprobieren wird der Code oder Befehl nicht automatisch in Cloud Shell kopiert. Screenshot: Beispiel von „Jetzt testen“ für Azure Cloud Shell.
Rufen Sie https://shell.azure.com auf, oder klicken Sie auf die Schaltfläche Cloud Shell starten, um Cloud Shell im Browser zu öffnen. Schaltfläche zum Starten von Azure Cloud Shell.
Wählen Sie im Azure-Portal rechts oben im Menü die Schaltfläche Cloud Shell aus. Screenshot: Schaltfläche „Cloud Shell“ im Azure-Portal

So verwenden Sie Azure Cloud Shell:

  1. Starten Sie Cloud Shell.

  2. Wählen Sie die Schaltfläche Kopieren für einen Codeblock (oder Befehlsblock) aus, um den Code oder Befehl zu kopieren.

  3. Fügen Sie den Code oder Befehl mit STRG+UMSCHALT+V unter Windows und Linux oder CMD+UMSCHALT+V unter macOS in die Cloud Shell-Sitzung ein.

  4. Drücken Sie die EINGABETASTE, um den Code oder Befehl auszuführen.

Azure-Standarddatenträger

Wenn eine Skalierungsgruppe erstellt oder skaliert wird, werden automatisch zwei Datenträger an jede VM-Instanz angefügt.

Betriebssystem-Datenträger: Betriebssystem-Datenträger können in der Größe auf bis zu 2 TB angepasst werden und hosten das Betriebssystem der VM. Der Betriebssystem-Datenträger wird standardmäßig mit /dev/sda bezeichnet. Die Konfiguration der Datenträgerzwischenspeicherung des Betriebssystem-Datenträgers ist für die Leistung des Betriebssystems optimiert. Aufgrund dieser Konfiguration sollte der Betriebssystem-Datenträger nicht Anwendungen oder Daten hosten. Verwenden Sie für Anwendungen und Daten einen Datenträger. Dies wird weiter unten in diesem Artikel ausführlich erläutert.

Temporärer Datenträger: Für temporäre Datenträger wird ein Solid State Drive verwendet, das sich auf demselben Azure-Host wie die VM-Instanz befindet. Dies sind äußerst leistungsfähige Datenträger, die für Vorgänge wie die temporäre Datenverarbeitung verwendet werden können. Wenn die VM-Instanz aber auf einen neuen Host verschoben wird, werden alle auf einem temporären Datenträger gespeicherten Daten entfernt. Die Größe des temporären Datenträgers richtet sich nach der Größe der VM-Instanz. Temporäre Datenträger werden mit bezeichnet /dev/sdb und haben den Bereitstellungspunkt /mnt.

Azure-Datenträger

Zusätzliche Datenträger können hinzugefügt werden, wenn Sie Anwendungen installieren und Daten speichern müssen. Datenträger sollten in allen Fällen verwendet werden, in denen eine dauerhafte und dynamische Datenspeicherung erwünscht ist. Jeder Datenträger weist eine maximale Kapazität von 4 TB auf. Die Größe der VM-Instanz bestimmt, wie viele Datenträger angefügt werden können. Für jede vCPU eines virtuellen Computers können zwei Datenträger angefügt werden.

VM-Datenträgertypen

In der folgenden Tabelle finden Sie einen Vergleich der fünf Datenträgertypen, der Ihnen bei der Entscheidung helfen soll, welchen Typ Sie verwenden sollten.

Ultra-Datenträger SSD Premium v2 SSD Premium SSD Standard HDD Standard
Datenträgertyp SSD SSD SSD SSD Festplattenlaufwerk
Szenario E/A-intensive Workloads wie SAP HANA, führende Datenbanken (z. B. SQL, Oracle) und andere Workloads mit vielen Transaktionen. Für Produktionsworkloads und leistungsabhängige Workloads, die konsistent niedrige Wartezeit und hohen IOPS und Durchsatz erfordern Produktionsworkloads und leistungsabhängige Workloads Webserver, wenig genutzte Unternehmensanwendungen und Dev/Test Sicherung, nicht kritisch, sporadischer Zugriff
Maximale Datenträgergröße 65.536 GiB 65.536 GiB 32767 GiB 32767 GiB 32767 GiB
Max. Durchsatz 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*
Als Betriebssystemdatenträger nutzbar? Nein Nein Ja Ja Ja

* Gilt nur für Datenträger, bei denen Performance Plus (Vorschau) aktiviert ist.

Ein Video, das einige Unterschiede auf hoher Ebene für die verschiedenen Datenträgertypen sowie einige Möglichkeiten zum Bestimmen der Auswirkungen auf Ihre Workloadanforderungen behandelt, finden Sie unter Blockieren von Speicheroptionen mit Azure Disk Storage und Elastic SAN.

Erstellen und Anfügen von Datenträgern

Sie können Datenträger beim Erstellen einer Skalierungsgruppe oder für eine vorhandene Skalierungsgruppe erstellen und anfügen.

Ab API-Version 2019-07-01 können Sie die Größe des Betriebssystemdatenträgers in einer VM-Skalierungsgruppe mit der Eigenschaft storageProfile.osDisk.diskSizeGb festlegen. Nach der Bereitstellung müssen Sie den Datenträger möglicherweise erweitern oder neu partitionieren, damit der gesamte Speicherplatz genutzt werden kann. Erfahren Sie mehr darüber, wie Sie das Volumen in Ihrem Betriebssystem entweder in Windows oder Linux erweitern.

Anfügen von Datenträgern bei der Erstellung einer Skalierungsgruppe

Erstellen Sie mit New-AzVmss eine VM-Skalierungsgruppe. Geben Sie bei entsprechender Aufforderung einen Benutzernamen und ein Kennwort für die VM-Instanzen an. Um Datenverkehr an die einzelnen VM-Instanzen zu verteilen, wird auch ein Lastenausgleich erstellt. Der Lastenausgleich enthält Regeln zum Verteilen von Datenverkehr über TCP-Port 80 und zum Zulassen von Remotedesktop-Datenverkehr über TCP-Port 3389 und PowerShell-Remoting über TCP-Port 5985.

Mit dem Parameter -DataDiskSizeGb werden zwei Datenträger erstellt. Der erste Datenträger hat eine Größe von 64 GB, und der zweite Datenträger hat eine Größe von 128 GB. Geben Sie Ihre gewünschten Administratoranmeldeinformationen für die VM-Instanzen in der Skalierungsgruppe an, wenn Sie dazu aufgefordert werden:

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

Die Erstellung und Konfiguration aller Ressourcen und VM-Instanzen der Skalierungsgruppe dauert einige Minuten.

Anfügen eines Datenträgers an eine vorhandene Skalierungsgruppe

Sie können Datenträger auch an eine vorhandene Skalierungsgruppe anfügen. Verwenden Sie die im vorherigen Schritt erstellte Skalierungsgruppe, um mit Add-AzVmssDataDisk einen weiteren Datenträger hinzuzufügen. Im folgenden Beispiel wird an eine Skalierungsgruppe ein weiterer Datenträger mit 128 GB angefügt:

# 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

Wenn Sie einer einzelnen Instanz in einer Skalierungsgruppe einen Datenträger hinzufügen möchten, verwenden Sie alternativ 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

Auflisten von angefügten Datenträgern

Verwenden Sie Get-AzVmss wie folgt, um Informationen zu den Datenträgern anzuzeigen, die an eine Skalierungsgruppe angefügt sind:

Get-AzVmss -ResourceGroupName "myResourceGroup" -Name "myScaleSet"

Unter der VirtualMachineProfile.StorageProfile-Eigenschaft wird die Liste mit DataDisks angezeigt. Es werden Informationen zur Datenträgergröße, Speicherebene und logischen Gerätenummer (Logical Unit Number, LUN) angezeigt. Die folgende Beispielausgabe enthält ausführliche Informationen zu den drei Datenträgern, die an die Skalierungsgruppe angefügt sind:

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

Trennen eines Datenträgers

Wenn Sie einen bestimmten Datenträger nicht mehr benötigen, können Sie ihn von der Skalierungsgruppe trennen. Der Datenträger wird aus allen VM-Instanzen in der Skalierungsgruppe entfernt. Verwenden Sie Remove-AzVmssDataDisk, und geben Sie die LUN des Datenträgers an, um einen Datenträger von einer Skalierungsgruppe zu trennen. Die LUNs sind in der Ausgabe von Get-AzVmss im vorherigen Abschnitt enthalten. Im folgenden Beispiel wird LUN 3 von der Skalierungsgruppe getrennt:

# 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

Wenn Sie einen Datenträger für eine einzelne Instanz einer Skalierungsgruppe entfernen möchten, verwenden Sie alternativ Remove-AzVmssVMDataDisk.

$VirtualMachine = Get-AzVmssVM -ResourceGroupName "myResourceGroup" -VMScaleSetName "myScaleSet" -InstanceId "c91dfbd9"
Remove-AzVmssVMDataDisk -VirtualMachineScaleSetVM $VirtualMachine -Lun 2
Update-AzVmssVM -VirtualMachineScaleSetVM -VM $VirtualMachine

Bereinigen von Ressourcen

Löschen Sie mit Remove-AzResourceGroup die Ressourcengruppe und alle dazugehörigen Ressourcen, um Ihre Skalierungsgruppe und die Datenträger zu entfernen. Der Parameter -Force bestätigt ohne eine zusätzliche Aufforderung, dass Sie die Ressourcen löschen möchten. Der Parameter -AsJob gibt die Steuerung an die Eingabeaufforderung zurück, ohne zu warten, bis der Vorgang abgeschlossen ist.

Remove-AzResourceGroup -Name "myResourceGroup" -Force -AsJob

Nächste Schritte

In diesem Tutorial wurde beschrieben, wie Sie Datenträger mit Skalierungsgruppen mithilfe von Azure PowerShell erstellen und verwenden:

  • Betriebssystemdatenträger und temporäre Datenträger
  • Datenträger
  • Standard- und Premium-Datenträger
  • Datenträgerleistung
  • Anfügen und Vorbereiten von Datenträgern

Fahren Sie mit dem nächsten Tutorial fort, um zu erfahren, wie Sie ein benutzerdefiniertes Image für Ihre in Skalierungsgruppen enthaltenen VM-Instanzen verwenden.