Set-AzVMOSDisk
Anger operativsystemets diskegenskaper på en virtuell dator.
Syntax
Set-AzVMOSDisk
[-VM] <PSVirtualMachine>
[[-Name] <String>]
[[-VhdUri] <String>]
[[-Caching] <CachingTypes>]
[[-SourceImageUri] <String>]
[[-CreateOption] <String>]
[-DiskSizeInGB <Int32>]
[-ManagedDiskId <String>]
[-StorageAccountType <String>]
[-DiskEncryptionSetId <String>]
[-WriteAccelerator]
[-DiffDiskSetting <String>]
[-DiffDiskPlacement <String>]
[-DeleteOption <String>]
[-SecurityEncryptionType <String>]
[-SecureVMDiskEncryptionSet <String>]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzVMOSDisk
[-VM] <PSVirtualMachine>
[[-Name] <String>]
[[-VhdUri] <String>]
[[-Caching] <CachingTypes>]
[[-SourceImageUri] <String>]
[[-CreateOption] <String>]
[-Windows]
[-DiskSizeInGB <Int32>]
[-ManagedDiskId <String>]
[-StorageAccountType <String>]
[-DiskEncryptionSetId <String>]
[-WriteAccelerator]
[-DiffDiskSetting <String>]
[-DiffDiskPlacement <String>]
[-DeleteOption <String>]
[-SecurityEncryptionType <String>]
[-SecureVMDiskEncryptionSet <String>]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzVMOSDisk
[-VM] <PSVirtualMachine>
[[-Name] <String>]
[[-VhdUri] <String>]
[[-Caching] <CachingTypes>]
[[-SourceImageUri] <String>]
[[-CreateOption] <String>]
[-Windows]
[-DiskEncryptionKeyUrl] <String>
[-DiskEncryptionKeyVaultId] <String>
[[-KeyEncryptionKeyUrl] <String>]
[[-KeyEncryptionKeyVaultId] <String>]
[-DiskSizeInGB <Int32>]
[-ManagedDiskId <String>]
[-StorageAccountType <String>]
[-DiskEncryptionSetId <String>]
[-WriteAccelerator]
[-DiffDiskSetting <String>]
[-DiffDiskPlacement <String>]
[-DeleteOption <String>]
[-SecurityEncryptionType <String>]
[-SecureVMDiskEncryptionSet <String>]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzVMOSDisk
[-VM] <PSVirtualMachine>
[[-Name] <String>]
[[-VhdUri] <String>]
[[-Caching] <CachingTypes>]
[[-SourceImageUri] <String>]
[[-CreateOption] <String>]
[-Linux]
[-DiskSizeInGB <Int32>]
[-ManagedDiskId <String>]
[-StorageAccountType <String>]
[-DiskEncryptionSetId <String>]
[-WriteAccelerator]
[-DiffDiskSetting <String>]
[-DiffDiskPlacement <String>]
[-DeleteOption <String>]
[-SecurityEncryptionType <String>]
[-SecureVMDiskEncryptionSet <String>]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzVMOSDisk
[-VM] <PSVirtualMachine>
[[-Name] <String>]
[[-VhdUri] <String>]
[[-Caching] <CachingTypes>]
[[-SourceImageUri] <String>]
[[-CreateOption] <String>]
[-Linux]
[-DiskEncryptionKeyUrl] <String>
[-DiskEncryptionKeyVaultId] <String>
[[-KeyEncryptionKeyUrl] <String>]
[[-KeyEncryptionKeyVaultId] <String>]
[-DiskSizeInGB <Int32>]
[-ManagedDiskId <String>]
[-StorageAccountType <String>]
[-DiskEncryptionSetId <String>]
[-WriteAccelerator]
[-DiffDiskSetting <String>]
[-DiffDiskPlacement <String>]
[-DeleteOption <String>]
[-SecurityEncryptionType <String>]
[-SecureVMDiskEncryptionSet <String>]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Description
Cmdleten Set-AzVMOSDisk anger operativsystemets diskegenskaper på en virtuell dator.
Exempel
Exempel 1: Ange egenskaper på en virtuell dator från plattformsavbildning
$AvailabilitySet = Get-AzAvailabilitySet -ResourceGroupName "ResourceGroup11" -Name "AvailabilitySet13"
$VirtualMachine = New-AzVMConfig -VMName "VirtualMachine17" -VMSize "Standard_A1" -AvailabilitySetID $AvailabilitySet.Id
Set-AzVMOSDisk -VM $VirtualMachine -Name "OsDisk12" -VhdUri "os.vhd" -Caching ReadWrite
$VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Linux -ComputerName "MainComputer" -Credential (Get-Credential)
$VirtualMachine = Set-AzVMSourceImage -VM $VirtualMachine -PublisherName "Canonical" -Offer "UbuntuServer" -Skus "15.10" -Version "latest"
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -Name "osDisk.vhd" -VhdUri "https://mystorageaccount.blob.core.windows.net/disks/" -CreateOption FromImage
New-AzVM -VM $VirtualMachine -ResourceGroupName "ResourceGroup11"
Det första kommandot hämtar tillgänglighetsuppsättningen med namnet AvailabilitySet13 i resursgruppen ResourceGroup11 och lagrar sedan objektet i variabeln $AvailabilitySet. Det andra kommandot skapar ett virtuellt datorobjekt och lagrar det sedan i variabeln $VirtualMachine. Kommandot tilldelar ett namn och en storlek till den virtuella datorn. Den virtuella datorn tillhör tillgänglighetsuppsättningen som lagras i $AvailabilitySet. Det slutliga kommandot anger egenskaperna på den virtuella datorn i $VirtualMachine.
Exempel 2: Anger egenskaper på en virtuell dator från generaliserad användaravbildning
$AvailabilitySet = Get-AzAvailabilitySet -ResourceGroupName "ResourceGroup11" -Name "AvailabilitySet13"
$VirtualMachine = New-AzVMConfig -VMName "VirtualMachine17" -VMSize "Standard_A1"
$VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Linux -ComputerName "MainComputer" -Credential (Get-Credential)
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -Name "osDisk.vhd" -SourceImageUri "https://mystorageaccount.blob.core.windows.net/vhds/myOSImage.vhd" -VhdUri "https://mystorageaccount.blob.core.windows.net/disks/" -CreateOption fromImage -Linux
New-AzVM -VM $VirtualMachine -ResourceGroupName "ResourceGroup11"
Det första kommandot hämtar tillgänglighetsuppsättningen med namnet AvailabilitySet13 i resursgruppen ResourceGroup11 och lagrar objektet i variabeln $AvailabilitySet. Det andra kommandot skapar ett virtuellt datorobjekt och lagrar det i variabeln $VirtualMachine. Kommandot tilldelar ett namn och en storlek till den virtuella datorn. Den virtuella datorn tillhör tillgänglighetsuppsättningen som lagras i $AvailabilitySet. Det slutliga kommandot anger egenskaperna på den virtuella datorn i $VirtualMachine.
Exempel 3: Anger egenskaper på en virtuell dator från en specialiserad användaravbildning
$AvailabilitySet = Get-AzAvailabilitySet -ResourceGroupName "ResourceGroup11" -Name "AvailabilitySet13"
$VirtualMachine = New-AzVMConfig -VMName "VirtualMachine17" -VMSize "Standard_A1"
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -Name "osDisk.vhd" -VhdUri "https://mystorageaccount.blob.core.windows.net/disks/" -CreateOption Attach -Linux
New-AzVM -VM $VirtualMachine -ResourceGroupName "ResourceGroup11"
Det första kommandot hämtar tillgänglighetsuppsättningen med namnet AvailabilitySet13 i resursgruppen ResourceGroup11 och lagrar objektet i variabeln $AvailabilitySet. Det andra kommandot skapar ett virtuellt datorobjekt och lagrar det i variabeln $VirtualMachine. Kommandot tilldelar ett namn och en storlek till den virtuella datorn. Den virtuella datorn tillhör tillgänglighetsuppsättningen som lagras i $AvailabilitySet. Det slutliga kommandot anger egenskaperna på den virtuella datorn i $VirtualMachine.
Exempel 4: Ange inställningarna för diskkryptering på en virtuell dators operativsystemdisk
$VirtualMachine = New-AzVMConfig -VMName "VirtualMachine17" -VMSize "Standard_A1"
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -Name "OsDisk12" -VhdUri "os.vhd" -Caching ReadWrite -Windows -CreateOption "Attach" -DiskEncryptionKeyUrl "https://mytestvault.vault.azure.net/secrets/Test1/514ceb769c984379a7e0230bddaaaaaa" -DiskEncryptionKeyVaultId "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.KeyVault/vaults/mytestvault"
New-AzVM -VM $VirtualMachine -ResourceGroupName " ResourceGroup11"
I det här exemplet anges diskkrypteringsinställningarna på en virtuell dators operativsystemdisk.
Exempel 5: Skapa en virtuell ConfidentialVM-dator med VM OS Diskkryptering av DiskWithVMGuestState och Krypteringsuppsättning för diskkryptering av ConfidentialVmEncryptedWithCustomerKey.
# Create Resource Group
$Location = 'northeurope';
New-AzResourceGroup -Name $ResourceGroupName -Location $Location;
$vmSize = "Standard_DC2as_v5";
$identityType = "SystemAssigned";
$secureEncryptGuestState = "DiskWithVMGuestState";
$vmSecurityType = "ConfidentialVM";
$securePassword = "Password" | ConvertTo-SecureString -AsPlainText -Force;
$cred = New-Object System.Management.Automation.PSCredential ($user, $securePassword);
# Create Key Vault
New-AzKeyVault -Name $keyVaultName -Location $Location -ResourceGroupName $ResourceGroupName -Sku Premium -EnablePurgeProtection -EnabledForDiskEncryption;
$cvmAgent = Get-AzADServicePrincipal -ApplicationId 'bf7b6499-ff71-4aa2-97a4-f372087be7f0';
Set-AzKeyVaultAccessPolicy -VaultName $keyVaultName -ResourceGroupName $ResourceGroupName -ObjectId $cvmAgent.id -PermissionsToKeys get,release;
# Add Key vault Key
$KeyName = "keyname";
$KeySize = 3072;
Add-AzKeyVaultKey -VaultName $kvname -Name $KeyName -Size $KeySize -KeyOps wrapKey,unwrapKey -KeyType RSA -Destination HSM -Exportable -UseDefaultCVMPolicy;
# Capture Key Vault and Key details
$encryptionKeyVaultId = (Get-AzKeyVault -VaultName $keyVaultName -ResourceGroupName $ResourceGroupName).ResourceId;
$encryptionKeyURL = (Get-AzKeyVaultKey -VaultName $keyVaultName -KeyName $keyName).Key.Kid;
# Create new DES Config and Disk Encryption Set
$diskEncryptionType = "ConfidentialVmEncryptedWithCustomerKey";
$desConfig = New-AzDiskEncryptionSetConfig -Location $loc -SourceVaultId $encryptionKeyVaultId -KeyUrl $encryptionKeyURL -IdentityType SystemAssigned -EncryptionType $diskEncryptionType;
New-AzDiskEncryptionSet -ResourceGroupName $ResourceGroupName -Name $desName -DiskEncryptionSet $desConfig;
$diskencset = Get-AzDiskEncryptionSet -ResourceGroupName $rgname -Name $desName;
# Assign DES Access Policy to key vault
$desIdentity = (Get-AzDiskEncryptionSet -Name $desName -ResourceGroupName $ResourceGroupName).Identity.PrincipalId;
Set-AzKeyVaultAccessPolicy -VaultName $keyVaultName -ResourceGroupName $ResourceGroupName -ObjectId $desIdentity -PermissionsToKeys wrapKey,unwrapKey,get -BypassObjectIdValidation;
$VirtualMachine = New-AzVMConfig -VMName $VMName -VMSize $vmSize;
$VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Windows -ComputerName $computerName -Credential $cred -ProvisionVMAgent -EnableAutoUpdate;
$VirtualMachine = Set-AzVMSourceImage -VM $VirtualMachine -PublisherName 'MicrosoftWindowsServer' -Offer 'windowsserver' -Skus '2022-datacenter-smalldisk-g2' -Version "latest";
$subnet = New-AzVirtualNetworkSubnetConfig -Name ($subnetPrefix + $ResourceGroupName) -AddressPrefix "10.0.0.0/24";
$vnet = New-AzVirtualNetwork -Force -Name ($vnetPrefix + $ResourceGroupName) -ResourceGroupName $ResourceGroupName -Location $loc -AddressPrefix "10.0.0.0/16" -Subnet $subnet;
$vnet = Get-AzVirtualNetwork -Name ($vnetPrefix + $ResourceGroupName) -ResourceGroupName $ResourceGroupName;
$subnetId = $vnet.Subnets[0].Id;
$pubip = New-AzPublicIpAddress -Force -Name ($pubIpPrefix + $ResourceGroupName) -ResourceGroupName $ResourceGroupName -Location $loc -AllocationMethod Dynamic -DomainNameLabel $domainNameLabel2;
$pubip = Get-AzPublicIpAddress -Name ($pubIpPrefix + $ResourceGroupName) -ResourceGroupName $ResourceGroupName;
$pubipId = $pubip.Id;
$nic = New-AzNetworkInterface -Force -Name ($nicPrefix + $ResourceGroupName) -ResourceGroupName $ResourceGroupName -Location $loc -SubnetId $subnetId -PublicIpAddressId $pubip.Id;
$nic = Get-AzNetworkInterface -Name ($nicPrefix + $ResourceGroupName) -ResourceGroupName $ResourceGroupName;
$nicId = $nic.Id;
$VirtualMachine = Add-AzVMNetworkInterface -VM $VirtualMachine -Id $nicId;
# Set VM SecurityType and connect to DES
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -StorageAccountType "StandardSSD_LRS" -CreateOption "FromImage" -SecurityEncryptionType $secureEncryptGuestState -SecureVMDiskEncryptionSet $diskencset.Id;
$VirtualMachine = Set-AzVmSecurityProfile -VM $VirtualMachine -SecurityType $vmSecurityType;
$VirtualMachine = Set-AzVmUefi -VM $VirtualMachine -EnableVtpm $true -EnableSecureBoot $true;
New-AzVM -ResourceGroupName $ResourceGroupName -Location $loc -Vm $VirtualMachine;
$vm = Get-AzVm -ResourceGroupName $ResourceGroupName -Name $vmname;
# Verify the SecurityEncryptionType value on the disk.
# $vm.StorageProfile.OsDisk.ManagedDisk.SecurityProfile.SecurityEncryptionType == 'DiskWithVMGuestState';
Parametrar
-Caching
Anger cachelagringsläget för operativsystemdisken. Giltiga värden är:
- ReadOnly
- ReadWrite Standardvärdet är ReadWrite. Om cachelagringsvärdet ändras startas den virtuella datorn om. Den här inställningen påverkar diskens prestanda.
Type: | Nullable<T>[CachingTypes] |
Accepted values: | None, ReadOnly, ReadWrite |
Position: | 3 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CreateOption
Anger om den här cmdleten skapar en disk på den virtuella datorn från en plattform eller användarbild eller kopplar en befintlig disk. Giltiga värden är:
- Bifoga. Ange det här alternativet för att skapa en virtuell dator från en specialiserad disk. När du anger det här alternativet ska du inte ange parametern SourceImageUri . Använd i stället cmdleten Set-AzVMSourceImage. Du måste också använda Windows - eller Linux-parametrarna för att tala om för Azure-plattformen vilken typ av operativsystem som finns på den virtuella hårddisken. VhdUri-parametern räcker för att tala om för Azure-plattformen var disken ska anslutas.
- FromImage. Ange det här alternativet för att skapa en virtuell dator från en plattformsbild eller en generaliserad användarbild. När det gäller en generaliserad användaravbildning måste du också ange parametern SourceImageUri och antingen Windows - eller Linux-parametrarna för att informera Azure-plattformen om platsen och typen av operativsystemdiskens virtuella hårddisk i stället för att använda cmdleten Set-AzVMSourceImage . När det gäller en plattformsbild räcker det med VhdUri-parametern .
- Tom.
Type: | String |
Position: | 5 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DefaultProfile
Autentiseringsuppgifter, konto, klientorganisation och prenumeration som används för kommunikation med Azure.
Type: | IAzureContextContainer |
Aliases: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DeleteOption
Anger alternativet borttagning av OS-disk efter borttagning av virtuell dator. Alternativen är Koppla från, Ta bort
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-DiffDiskPlacement
Anger den tillfälliga diskplaceringen för operativsystemdisken. Den här egenskapen kan användas av användaren i begäran för att välja plats, t.ex. cachedisk eller resursdiskutrymme för tillfällig OS-disketablering. Mer information om krav för tillfällig os-diskstorlek finns i Krav på tillfällig OS-diskstorlek för virtuella Windows-datorer på https://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements och virtuella Linux-datorer på https://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements. Den här parametern kan bara användas om parametern DiffDiskSetting är inställd på "Lokal".
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-DiffDiskSetting
Anger diskinställningarna för differentiering för operativsystemdisken.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-DiskEncryptionKeyUrl
Anger platsen för diskkrypteringsnyckeln.
Type: | String |
Position: | 7 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DiskEncryptionKeyVaultId
Anger resurs-ID för Key Vault som innehåller diskkrypteringsnyckeln.
Type: | String |
Position: | 8 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DiskEncryptionSetId
Anger resurs-ID för kundhanterad diskkrypteringsuppsättning. Detta kan bara anges för hanterad disk.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DiskSizeInGB
Anger storleken i GB på operativsystemdisken.
Type: | Nullable<T>[Int32] |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-KeyEncryptionKeyUrl
Anger platsen för nyckelkrypteringsnyckeln.
Type: | String |
Position: | 9 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-KeyEncryptionKeyVaultId
Anger resurs-ID för Key Vault som innehåller nyckelkrypteringsnyckeln.
Type: | String |
Position: | 10 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Linux
Anger att operativsystemet på användaravbildningen är Linux. Ange den här parametern för distribution av användarbildbaserad virtuell dator.
Type: | SwitchParameter |
Position: | 6 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ManagedDiskId
Anger ID för en hanterad disk.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Anger namnet på operativsystemdisken.
Type: | String |
Aliases: | OSDiskName, DiskName |
Position: | 1 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SecureVMDiskEncryptionSet
ARM-resurs-ID för diskkrypteringsuppsättning. Gör att kunden kan ange ARM ID för diskkrypteringsuppsättning som skapats med krypteringstypen ConfidentialVmEncryptedWithCustomerKey. På så sätt kan kunden använda CMK-kryptering (Customer Managed Key) med konfidentiell virtuell dator. Parametern SecurityEncryptionType-värdet ska vara DiskwithVMGuestState.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-SecurityEncryptionType
Anger värdet SecurityEncryptionType på den virtuella datorns hanterade disk. möjliga värden är: TrustedLaunch, ConfidentialVM_DiskEncryptedWithCustomerKey, ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey, ConfidentialVM_DiskEncryptedWithPlatformKey
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-SourceImageUri
Anger URI för den virtuella hårddisken för användarbildscenarier.
Type: | String |
Aliases: | SourceImage |
Position: | 4 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-StorageAccountType
Anger lagringskontotypen för hanterad disk.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VhdUri
Anger URI (Uniform Resource Identifier) för en virtuell hårddisk (VHD). För en avbildningsbaserad virtuell dator anger den här parametern den VHD-fil som ska skapas när en plattformsbild eller användarbild anges. Det här är den plats från vilken avbildningens binära stora objekt (BLOB) kopieras för att starta den virtuella datorn. För ett diskbaserat startscenario för virtuella datorer anger den här parametern den VHD-fil som den virtuella datorn använder direkt för att starta.
Type: | String |
Aliases: | OSDiskVhdUri, DiskVhdUri |
Position: | 2 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VM
Anger det lokala virtuella datorobjekt som du vill ange egenskaper för operativsystemdisk på. Om du vill hämta ett virtuellt datorobjekt använder du cmdleten Get-AzVM.
Type: | PSVirtualMachine |
Aliases: | VMProfile |
Position: | 0 |
Default value: | None |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Windows
Anger att operativsystemet på användaravbildningen är Windows.
Type: | SwitchParameter |
Position: | 6 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WriteAccelerator
Anger om WriteAccelerator ska aktiveras eller inaktiveras på OS-disken.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Indata
Utdata
Relaterade länkar
Feedback
Skicka och visa feedback för