New-AzDisk
Erstellt einen verwalteten Datenträger.
Syntax
Default (Standard)
New-AzDisk
[-ResourceGroupName] <String>
[-DiskName] <String>
[-Disk] <PSDisk>
[-AsJob]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Beschreibung
Das Cmdlet New-AzDisk erstellt einen verwalteten Datenträger.
Beispiele
Beispiel 1
$diskconfig = New-AzDiskConfig -Location 'Central US' -DiskSizeGB 5 -SkuName Standard_LRS -OsType Windows -CreateOption Empty -EncryptionSettingsEnabled $true;
$secretUrl = 'https://myvault.vault-int.azure-int.net/secrets/123/';
$secretId = '/subscriptions/0000000-0000-0000-0000-000000000000/resourceGroups/ResourceGroup01/providers/Microsoft.KeyVault/vaults/TestVault123';
$keyUrl = 'https://myvault.vault-int.azure-int.net/keys/456';
$keyId = '/subscriptions/0000000-0000-0000-0000-000000000000/resourceGroups/ResourceGroup01/providers/Microsoft.KeyVault/vaults/TestVault456';
$diskconfig = Set-AzDiskDiskEncryptionKey -Disk $diskconfig -SecretUrl $secretUrl -SourceVaultId $secretId;
$diskconfig = Set-AzDiskKeyEncryptionKey -Disk $diskconfig -KeyUrl $keyUrl -SourceVaultId $keyId;
New-AzDisk -ResourceGroupName 'ResourceGroup01' -DiskName 'Disk01' -Disk $diskconfig;
Der erste Befehl erstellt ein lokales leeres Datenträgerobjekt mit einer Größe von 5 GB in Standard_LRS Speicherkontotyp. Außerdem wird der Windows-Betriebssystemtyp festgelegt und Verschlüsselungseinstellungen aktiviert.
Mit den zweiten und dritten Befehlen werden der Datenträgerverschlüsselungsschlüssel und die Schlüsselverschlüsselungsschlüsseleinstellungen für das Datenträgerobjekt festgelegt.
Der letzte Befehl verwendet das Datenträgerobjekt und erstellt einen Datenträger mit dem Namen "Disk01" in der Ressourcengruppe "ResourceGroup01".
Beispiel 2
$diskconfig = New-AzDiskConfig -Location 'Central US' -DiskSizeGB 5 -SkuName Standard_LRS -OsType Windows -CreateOption Empty -EncryptionSettingsEnabled $true;
$diskConfig.EncryptionSettingsCollection = New-Object Microsoft.Azure.Management.Compute.Models.EncryptionSettingsCollection
$encryptionSettingsElement1 = New-Object Microsoft.Azure.Management.Compute.Models.EncryptionSettingsElement
$encryptionSettingsElement1.DiskEncryptionKey = New-Object Microsoft.Azure.Management.Compute.Models.KeyVaultAndSecretReference
$encryptionSettingsElement1.DiskEncryptionKey.SourceVault = New-Object Microsoft.Azure.Management.Compute.Models.SourceVault
$encryptionSettingsElement1.DiskEncryptionKey.SourceVault.Id = $disk_encryption_key_id_1
$encryptionSettingsElement1.DiskEncryptionKey.SecretUrl = $disk_encryption_secret_url_1
$encryptionSettingsElement1.KeyEncryptionKey = New-Object Microsoft.Azure.Management.Compute.Models.KeyVaultAndKeyReference
$encryptionSettingsElement1.KeyEncryptionKey.SourceVault = New-Object Microsoft.Azure.Management.Compute.Models.SourceVault
$encryptionSettingsElement1.KeyEncryptionKey.SourceVault.Id = $key_encryption_key_id_1
$encryptionSettingsElement1.KeyEncryptionKey.KeyUrl = $key_encryption_key_url_1
$encryptionSettingsElement2 = New-Object Microsoft.Azure.Management.Compute.Models.EncryptionSettingsElement
$encryptionSettingsElement2.DiskEncryptionKey = New-Object Microsoft.Azure.Management.Compute.Models.KeyVaultAndSecretReference
$encryptionSettingsElement2.DiskEncryptionKey.SourceVault = New-Object Microsoft.Azure.Management.Compute.Models.SourceVault
$encryptionSettingsElement2.DiskEncryptionKey.SourceVault.Id = $disk_encryption_key_id_2
$encryptionSettingsElement2.DiskEncryptionKey.SecretUrl = $disk_encryption_secret_url_2
$encryptionSettingsElement2.KeyEncryptionKey = New-Object Microsoft.Azure.Management.Compute.Models.KeyVaultAndKeyReference
$encryptionSettingsElement2.KeyEncryptionKey.SourceVault = New-Object Microsoft.Azure.Management.Compute.Models.SourceVault
$encryptionSettingsElement2.KeyEncryptionKey.SourceVault.Id = $key_encryption_key_id_2
$encryptionSettingsElement2.KeyEncryptionKey.KeyUrl = $key_encryption_key_url_2
$diskConfig.EncryptionSettingsCollection.EncryptionSettings += $encryptionSettingsElement1
$diskConfig.EncryptionSettingsCollection.EncryptionSettings += $encryptionSettingsElement2
New-AzDisk -ResourceGroupName 'ResourceGroup01' -DiskName 'Disk01' -Disk $diskconfig;
Der obige Befehl erstellt einen Datenträger mit zwei Verschlüsselungseinstellungen.
Beispiel 3: Exportieren einer Katalogbildversion auf den Datenträger.
$galleryImageVersionID = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myImageRG/providers/Microsoft.Compute/galleries/myGallery/images/myImage/versions/1.0.0"
$location = "eastus"
$rgName = "eastus"
$region = "eastus"
# Export the OS disk
$myDiskName = "myOSDisk"
$imageOSDisk = @{Id = $galleryImageVersionID}
$OSDiskConfig = New-AzDiskConfig -Location $location -CreateOption "FromImage" -GalleryImageReference $imageOSDisk
New-AzDisk -ResourceGroupName $rgName -DiskName $myDiskName -Disk $OSDiskConfig
# Export any data disk from the image version
$myDiskName = "myDataDisk"
$imageDataDisk = @{Id = $galleryImageVersionID; Lun=1}
$dataDiskConfig = New-AzDiskConfig -Location $location -CreateOption "FromImage" -GalleryImageReference $imageDataDisk
New-AzDisk -ResourceGroupName $rgName -DiskName $myDiskName -Disk $dataDiskConfig
In diesem Beispiel wird ein Datenträger aus der Imageversion exportiert. Um einen Datenträger aus der Imageversion zu exportieren, schließen Sie die LUN-Nummer des Datenträgers ein, der aus der Imageversion exportiert werden soll.
Beispiel 4: Erstellen eines Datenträgers mit aktiviertem HyperVGeneration V2 und TrustedLaunch standardmäßig.
$rgname = <Resource Group Name>;
$loc = <Azure Region>;
New-AzResourceGroup -Name $rgname -Location $loc -Force;
$diskname = "d" + $rgname;
$image = Get-AzVMImage -Skus 2022-datacenter-azure-edition -Offer WindowsServer -PublisherName MicrosoftWindowsServer -Location $loc -Version latest;
$diskconfig = New-AzDiskConfig -DiskSizeGB 127 -AccountType Premium_LRS -OsType Windows -CreateOption FromImage -Location $loc;
$diskconfig = Set-AzDiskImageReference -Disk $diskconfig -Id $image.Id;
$disk = New-AzDisk -ResourceGroupName $rgname -DiskName $diskname -Disk $diskconfig;
# Validate $disk.SecurityProfile.securityType is TrustedLaunch.
# Validate $disk.HyperVGeneration is V2.
Parameter
-AsJob
Führen Sie das Cmdlet im Hintergrund aus, und geben Sie einen Auftrag zurück, um den Fortschritt nachzuverfolgen.
Parametereigenschaften
Typ: SwitchParameter
Standardwert: None
Unterstützt Platzhalter: False
Nicht anzeigen: False
Parametersätze
(All)
Position: Named
Obligatorisch: False
Wert aus Pipeline: False
Wert aus Pipeline nach dem Eigenschaftsnamen: False
Wert aus verbleibenden Argumenten: False
-Confirm
Fordert Sie zur Bestätigung auf, bevor Sie das Cmdlet ausführen.
Parametereigenschaften
Typ: SwitchParameter
Standardwert: None
Unterstützt Platzhalter: False
Nicht anzeigen: False
Aliase: vgl
Parametersätze
(All)
Position: Named
Obligatorisch: False
Wert aus Pipeline: False
Wert aus Pipeline nach dem Eigenschaftsnamen: False
Wert aus verbleibenden Argumenten: False
-DefaultProfile
Die Anmeldeinformationen, Konten, Mandanten und Abonnements, die für die Kommunikation mit Azure verwendet werden.
Parametereigenschaften
Typ: IAzureContextContainer
Standardwert: None
Unterstützt Platzhalter: False
Nicht anzeigen: False
Aliase: AzContext, AzureRmContext, AzureCredential
Parametersätze
(All)
Position: Named
Obligatorisch: False
Wert aus Pipeline: False
Wert aus Pipeline nach dem Eigenschaftsnamen: False
Wert aus verbleibenden Argumenten: False
-Disk
Gibt ein lokales Datenträgerobjekt an.
Parametereigenschaften
Typ: PSDisk
Standardwert: None
Unterstützt Platzhalter: False
Nicht anzeigen: False
Parametersätze
(All)
Position: 2
Obligatorisch: True
Wert aus Pipeline: True
Wert aus Pipeline nach dem Eigenschaftsnamen: False
Wert aus verbleibenden Argumenten: False
-DiskName
Gibt den Namen eines Datenträgers an.
Parametereigenschaften
Typ: String
Standardwert: None
Unterstützt Platzhalter: False
Nicht anzeigen: False
Aliase: Name
Parametersätze
(All)
Position: 1
Obligatorisch: True
Wert aus Pipeline: False
Wert aus Pipeline nach dem Eigenschaftsnamen: True
Wert aus verbleibenden Argumenten: False
-ResourceGroupName
Gibt den Namen einer Ressourcengruppe an.
Parametereigenschaften
Typ: String
Standardwert: None
Unterstützt Platzhalter: False
Nicht anzeigen: False
Parametersätze
(All)
Position: 0
Obligatorisch: True
Wert aus Pipeline: False
Wert aus Pipeline nach dem Eigenschaftsnamen: True
Wert aus verbleibenden Argumenten: False
-WhatIf
Zeigt, was passiert, wenn das Cmdlet ausgeführt wird.
Das Cmdlet wird nicht ausgeführt.
Parametereigenschaften
Typ: SwitchParameter
Standardwert: None
Unterstützt Platzhalter: False
Nicht anzeigen: False
Aliase: Wi
Parametersätze
(All)
Position: Named
Obligatorisch: False
Wert aus Pipeline: False
Wert aus Pipeline nach dem Eigenschaftsnamen: False
Wert aus verbleibenden Argumenten: False
CommonParameters
Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters .
Ausgaben