New-AzDiskUpdateConfig

Creates a configurable disk update object.

Syntax

New-AzDiskUpdateConfig
   [[-SkuName] <String>]
   [-Tier <String>]
   [-DiskIOPSReadOnly <Int64>]
   [-DiskMBpsReadOnly <Int64>]
   [-MaxSharesCount <Int32>]
   [-NetworkAccessPolicy <String>]
   [-DiskAccessId <String>]
   [[-OsType] <OperatingSystemTypes>]
   [[-DiskSizeGB] <Int32>]
   [[-Tag] <Hashtable>]
   [-DiskIOPSReadWrite <Int32>]
   [-DiskMBpsReadWrite <Int32>]
   [-PurchasePlan <PSPurchasePlan>]
   [-SupportsHibernation <Boolean>]
   [-EncryptionSettingsEnabled <Boolean>]
   [-DiskEncryptionKey <KeyVaultAndSecretReference>]
   [-KeyEncryptionKey <KeyVaultAndKeyReference>]
   [-DiskEncryptionSetId <String>]
   [-EncryptionType <String>]
   [-BurstingEnabled <Boolean>]
   [-PublicNetworkAccess <String>]
   [-AcceleratedNetwork <Boolean>]
   [-DataAccessAuthMode <String>]
   [-Architecture <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

The New-AzDiskUpdateConfig cmdlet creates a configurable disk update object.

Examples

Example 1

$diskupdateconfig = New-AzDiskUpdateConfig -DiskSizeGB 10 -SkuName Premium_LRS -OsType Windows -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';
$diskupdateconfig = Set-AzDiskUpdateDiskEncryptionKey -DiskUpdate $diskupdateconfig -SecretUrl $secretUrl -SourceVaultId $secretId;
$diskupdateconfig = Set-AzDiskUpdateKeyEncryptionKey -DiskUpdate $diskupdateconfig -KeyUrl $keyUrl -SourceVaultId $keyId;
Update-AzDisk -ResourceGroupName 'ResourceGroup01' -DiskName 'Disk01' -DiskUpdate $diskupdateconfig;

The first command creates a local empty disk update object with size 10GB in Premium_LRS storage account type. It also sets Windows OS type and enables encryption settings. The second and third commands set the disk encryption key and key encryption key settings for the disk update object. The last command takes the disk update object and updates an existing disk with name 'Disk01' in resource group 'ResourceGroup01'.

Example 2

New-AzDiskUpdateConfig -DiskSizeGB 10 | Update-AzDisk -ResourceGroupName 'ResourceGroup01' -DiskName 'Disk01';

This command updates an existing disk with name 'Disk01' in resource group 'ResourceGroup01' to 10 GB disk size.

Parameters

-AcceleratedNetwork

True if the image from which the OS disk is created supports accelerated networking.

Type:Nullable<T>[Boolean]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Architecture

CPU architecture supported by an OS disk. Possible values are "X64" and "Arm64".

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-BurstingEnabled

Enables bursting beyond the provisioned performance target of the disk. Bursting is disabled by default. Does not apply to Ultra disks.

Type:Nullable<T>[Boolean]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Confirm

Prompts you for confirmation before running the cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DataAccessAuthMode

Additional authentication requirements when exporting or uploading to a disk or snapshot.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DefaultProfile

The credentials, account, tenant, and subscription used for communication with azure.

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DiskAccessId

ARM id of the DiskAccess resource for using private endpoints on disks

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DiskEncryptionKey

Specifies the disk encryption key object on a disk.

Type:KeyVaultAndSecretReference
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DiskEncryptionSetId

Specifies the resource Id of the disk encryption set to use for enabling encryption at rest.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DiskIOPSReadOnly

The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly. One operation can transfer between 4k and 256k bytes.

Type:Nullable<T>[Int64]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DiskIOPSReadWrite

The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DiskMBpsReadOnly

The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10.

Type:Nullable<T>[Int64]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DiskMBpsReadWrite

The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DiskSizeGB

Specifies the size of the disk in GB.

Type:Int32
Position:2
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-EncryptionSettingsEnabled

Enable encryption settings on the disk

Type:Nullable<T>[Boolean]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-EncryptionType

The type of key used to encrypt the data of the disk. Available values are: EncryptionAtRestWithPlatformKey, EncryptionAtRestWithCustomerKey

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-KeyEncryptionKey

Specifies the Key encryption key on a disk.

Type:KeyVaultAndKeyReference
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxSharesCount

The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-NetworkAccessPolicy

Policy for accessing the disk via network. Available values are: AllowAll, AllowPrivate, DeyAll

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-OsType

Specifies the OS type.

Type:Nullable<T>[OperatingSystemTypes]
Accepted values:Windows, Linux
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-PublicNetworkAccess

Policy for controlling export on the disk.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-PurchasePlan

Sets the purchase plan for the disk. Used for establishing the purchase context of any 3rd Party artifact through Marketplace.

Type:PSPurchasePlan
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-SkuName

Specifies the Sku name of the storage account. Available values are Standard_LRS, Premium_LRS, StandardSSD_LRS, and UltraSSD_LRS. UltraSSD_LRS can only be used with Empty value for CreateOption parameter.

Type:String
Aliases:AccountType
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-SupportsHibernation

Indicates if the OS on the disk supports hibernation with $true or $false

Type:Nullable<T>[Boolean]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Tag

Key-value pairs in the form of a hash table. For example: @{key0="value0";key1=$null;key2="value2"}

Type:Hashtable
Position:3
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Tier

Performance tier of the disk.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Inputs

String

Nullable<T>[[Microsoft.Azure.Management.Compute.Models.OperatingSystemTypes, Microsoft.Azure.Management.Compute, Version=23.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]

Int32

Hashtable

Nullable<T>[[System.Boolean, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]

KeyVaultAndSecretReference

KeyVaultAndKeyReference

Outputs

PSDiskUpdate