Anfügen eines Datenträgers an einen virtuellen Windows-Computer mithilfe von PowerShell

Gilt für: ✔️ Windows-VMs ✔️ Flexible Skalierungsgruppen

In diesem Artikel wird beschrieben, wie Sie mithilfe von PowerShell sowohl neue als auch vorhandene Datenträger an einen virtuellen Windows-Computer anfügen.

Lesen Sie zunächst diese Tipps:

In diesem Artikel wird PowerShell innerhalb von Azure Cloud Shell verwendet. Azure Cloud Shell wird kontinuierlich auf die neueste Version aktualisiert. Wählen Sie zum Öffnen von Cloud Shell oben in einem Codeblock die Option Ausprobieren aus.

Verringern der Latenz von Datenträgeranfügungen

In ausgewählten Regionen wird die Latenz beim Anhängen von Datenträgern reduziert, was zu einer Verbesserung von bis zu 15 % führt. Diese Verbesserung ist nützlich, wenn Sie geplante oder ungeplante Failovers zwischen virtuellen Maschinen haben, Ihre Workload skalieren oder eine hochskalierte zustandsbehaftete Workload wie den Azure Kubernetes-Dienst ausführen. Diese Verbesserung ist jedoch auf den expliziten Befehl zum Anfügen von Datenträgern beschränkt, Add-AzVMDataDisk. Die Leistungsverbesserung wird nicht angezeigt, wenn Sie einen Befehl aufrufen, der implizit eine Anfügung ausführt, z. B. Update-AzVM. Sie müssen keine anderen Aktionen ausführen, als den expliziten Anfügebefehl aufzurufen, um von dieser Verbesserung zu profitieren.

Geringere Wartezeit ist derzeit in jeder öffentlichen Region verfügbar, außer in den folgenden:

  • Kanada, Mitte
  • USA (Mitte)
  • East US
  • USA, Osten 2
  • USA Süd Mitte
  • USA, Westen 2
  • Deutschland, Norden
  • Indien, Westen
  • Nordeuropa
  • Europa, Westen

Hinzufügen eines leeren Datenträgers zu einem virtuellen Computer

Dieses Beispiel zeigt, wie Sie einem vorhandenen virtuellen Computer einen leeren Datenträger hinzufügen.

Erstellen und Anfügen eines verwalteten Datenträgers

Legen Sie Werte für die Ressourcengruppe, den virtuellen Computer, den Speicherort, den Speichertyp und den Datenträgernamen fest. Das Cmdlet New-AzDiskConfig erstellt eine Konfiguration für einen leeren 128-GiB-verwalteten Datenträger, und New-AzDisk erstellt den Datenträger. Anschließend ruft Get-AzVM die VM-Konfiguration ab, Add-AzVMDataDisk fügt den Datenträger hinzu und Update-AzVM wendet die aktualisierte Konfiguration auf den virtuellen Computer an.

$rgName = 'myResourceGroup'
$vmName = 'myVM'
$location = 'East US'
$storageType = 'Premium_LRS'
$dataDiskName = $vmName + '_datadisk1'

$diskConfig = New-AzDiskConfig -SkuName $storageType -Location $location -CreateOption Empty -DiskSizeGB 128
$dataDisk1 = New-AzDisk -DiskName $dataDiskName -Disk $diskConfig -ResourceGroupName $rgName

$vm = Get-AzVM -Name $vmName -ResourceGroupName $rgName
$vm = Add-AzVMDataDisk -VM $vm -Name $dataDiskName -CreateOption Attach -ManagedDiskId $dataDisk1.Id -Lun 1

Update-AzVM -VM $vm -ResourceGroupName $rgName

Erstellen und Anfügen eines verwalteten Datenträgers in einer Verfügbarkeitszone

Legen Sie Werte für die Ressourcengruppe, den virtuellen Computer, den Speicherort, den Speichertyp und den Datenträgernamen fest. Um einen verwalteten Datenträger in einer Verfügbarkeitszone zu erstellen, verwenden Sie New-AzDiskConfig mit dem Parameter -Zone. Im folgenden Beispiel wird ein leerer 128-GiB-verwalteter Datenträger in Zone 1 erstellt, der VM-Konfiguration hinzugefügt und die aktualisierte Konfiguration auf den virtuellen Computer angewendet.

$rgName = 'myResourceGroup'
$vmName = 'myVM'
$location = 'East US 2'
$storageType = 'Premium_LRS'
$dataDiskName = $vmName + '_datadisk1'

$diskConfig = New-AzDiskConfig -SkuName $storageType -Location $location -CreateOption Empty -DiskSizeGB 128 -Zone 1
$dataDisk1 = New-AzDisk -DiskName $dataDiskName -Disk $diskConfig -ResourceGroupName $rgName

$vm = Get-AzVM -Name $vmName -ResourceGroupName $rgName
$vm = Add-AzVMDataDisk -VM $vm -Name $dataDiskName -CreateOption Attach -ManagedDiskId $dataDisk1.Id -Lun 1

Update-AzVM -VM $vm -ResourceGroupName $rgName

Datenträger initialisieren

Nachdem Sie einen leeren Datenträger hinzugefügt haben, müssen Sie ihn initialisieren. Um den Datenträger zu initialisieren, melden Sie sich bei einem virtuellen Computer an, und verwenden Sie die Datenträgerverwaltung. Wenn Sie WinRM und ein Zertifikat auf dem virtuellen Computer beim Erstellen aktivieren, können Sie remote PowerShell verwenden, um den Datenträger zu initialisieren.

Sie können auch das Cmdlet Set-AzVMCustomScriptExtension verwenden, um der VM eine benutzerdefinierte Skripterweiterung hinzuzufügen. Im folgenden Beispiel werden die Ressourcengruppen- und VM-Namen aus der Anlageprozedur zusammen mit Werten für den Speicherort des virtuellen Computers, Erweiterungsname, Initialisierungsskriptdatei, Speicherkontoname, Speicherkontoschlüssel und Containername verwendet. Speichern Sie das Skript im angegebenen Azure Storage Container, bevor Sie den Befehl ausführen:

    $location = "location-name"
    $scriptName = "script-name"
    $fileName = "script-file-name"
    Set-AzVMCustomScriptExtension -ResourceGroupName $rgName -Location $location -VMName $vmName -Name $scriptName -TypeHandlerVersion "1.4" -StorageAccountName "mystore1" -StorageAccountKey "primary-key" -FileName $fileName -ContainerName "scripts"

Die Skriptdatei kann Code für die Initialisierung der Datenträger enthalten. Beispiel:

Hinweis

Das Beispielskript verwendet den MBR-Partitionsstil. Wenn ihr Datenträger zwei Tebibytes (TiB) oder größer ist, müssen Sie die GPT-Partitionierung verwenden. Wenn er unter zwei TiB ist, können Sie entweder MBR oder GPT verwenden.

    $disks = Get-Disk | Where partitionstyle -eq 'raw' | sort number

    $letters = 70..89 | ForEach-Object { [char]$_ }
    $count = 0
    $labels = "data1","data2"

    foreach ($disk in $disks) {
        $driveLetter = $letters[$count].ToString()
        $disk |
        Initialize-Disk -PartitionStyle MBR -PassThru |
        New-Partition -UseMaximumSize -DriveLetter $driveLetter |
        Format-Volume -FileSystem NTFS -NewFileSystemLabel $labels[$count] -Confirm:$false -Force
	$count++
    }

Hinzufügen eines vorhandenen Datenträgers zu einem virtuellen Computer

Legen Sie Werte für die Ressourcengruppe, den virtuellen Computer und den vorhandenen Namen des verwalteten Datenträgers fest. Verwenden Sie Get-AzDisk , um den verwalteten Datenträger abzurufen und Get-AzVM die VM-Konfiguration abzurufen. Verwenden Sie Add-AzVMDataDisk dann zum Hinzufügen des vorhandenen Datenträgers zur VM-Konfiguration und Update-AzVM zum Anwenden der aktualisierten Konfiguration auf den virtuellen Computer.

$rgName = "myResourceGroup"
$vmName = "myVM"
$dataDiskName = "myDisk"
$disk = Get-AzDisk -ResourceGroupName $rgName -DiskName $dataDiskName

$vm = Get-AzVM -Name $vmName -ResourceGroupName $rgName

$vm = Add-AzVMDataDisk -CreateOption Attach -Lun 0 -VM $vm -ManagedDiskId $disk.Id

Update-AzVM -VM $vm -ResourceGroupName $rgName

Nächste Schritte

Sie können verwaltete Datenträger auch über Vorlagen bereitstellen. Weitere Informationen finden Sie unter Verwenden von verwalteten Datenträgern in Azure Resource Manager-Vorlagen oder der Schnellstartvorlage für die Bereitstellung mehrerer Datenträger.