Share via


VirtualMachineDataDisk Class

Definition

Describes a data disk.

public class VirtualMachineDataDisk : System.ClientModel.Primitives.IJsonModel<Azure.ResourceManager.Compute.Models.VirtualMachineDataDisk>, System.ClientModel.Primitives.IPersistableModel<Azure.ResourceManager.Compute.Models.VirtualMachineDataDisk>
type VirtualMachineDataDisk = class
    interface IJsonModel<VirtualMachineDataDisk>
    interface IPersistableModel<VirtualMachineDataDisk>
Public Class VirtualMachineDataDisk
Implements IJsonModel(Of VirtualMachineDataDisk), IPersistableModel(Of VirtualMachineDataDisk)
Inheritance
VirtualMachineDataDisk
Implements

Constructors

VirtualMachineDataDisk(Int32, DiskCreateOptionType)

Initializes a new instance of VirtualMachineDataDisk.

Properties

Caching

Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The defaulting behavior is: None for Standard storage. ReadOnly for Premium storage..

CreateOption

Specifies how the virtual machine disk should be created. Possible values are Attach: This value is used when you are using a specialized disk to create the virtual machine. FromImage: This value is used when you are using an image to create the virtual machine data disk. If you are using a platform image, you should also use the imageReference element described above. If you are using a marketplace image, you should also use the plan element previously described. Empty: This value is used when creating an empty data disk. Copy: This value is used to create a data disk from a snapshot or another disk. Restore: This value is used to create a data disk from a disk restore point.

DeleteOption

Specifies whether data disk should be deleted or detached upon VM deletion. Possible values are: Delete. If this value is used, the data disk is deleted when VM is deleted. Detach. If this value is used, the data disk is retained after VM is deleted. The default value is set to Detach.

DetachOption

Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values: ForceDetach. detachOption: ForceDetach is applicable only for managed data disks. If a previous detachment attempt of the data disk did not complete due to an unexpected failure from the virtual machine and the disk is still not released then use force-detach as a last resort option to detach the disk forcibly from the VM. All writes might not have been flushed when using this detach behavior. This feature is still in preview mode and is not supported for VirtualMachineScaleSet. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'.

DiskIopsReadWrite

Specifies the Read-Write IOPS for the managed disk when StorageAccountType is UltraSSD_LRS. Returned only for VirtualMachine ScaleSet VM disks. Can be updated only via updates to the VirtualMachine Scale Set.

DiskMBpsReadWrite

Specifies the bandwidth in MB per second for the managed disk when StorageAccountType is UltraSSD_LRS. Returned only for VirtualMachine ScaleSet VM disks. Can be updated only via updates to the VirtualMachine Scale Set.

DiskSizeGB

Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image. The property 'diskSizeGB' is the number of bytes x 1024^3 for the disk and the value cannot be larger than 1023.

ImageUri

Specifies the virtual hard disk's uri.

Lun

Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM.

ManagedDisk

The managed disk parameters.

Name

The disk name.

SourceResourceId

Gets or sets Id.

ToBeDetached

Specifies whether the data disk is in process of detachment from the VirtualMachine/VirtualMachineScaleset.

VhdUri

Specifies the virtual hard disk's uri.

WriteAcceleratorEnabled

Specifies whether writeAccelerator should be enabled or disabled on the disk.

Methods

JsonModelWriteCore(Utf8JsonWriter, ModelReaderWriterOptions)

Explicit Interface Implementations

IJsonModel<VirtualMachineDataDisk>.Create(Utf8JsonReader, ModelReaderWriterOptions)

Reads one JSON value (including objects or arrays) from the provided reader and converts it to a model.

IJsonModel<VirtualMachineDataDisk>.Write(Utf8JsonWriter, ModelReaderWriterOptions)

Writes the model to the provided Utf8JsonWriter.

IPersistableModel<VirtualMachineDataDisk>.Create(BinaryData, ModelReaderWriterOptions)

Converts the provided BinaryData into a model.

IPersistableModel<VirtualMachineDataDisk>.GetFormatFromOptions(ModelReaderWriterOptions)

Gets the data interchange format (JSON, Xml, etc) that the model uses when communicating with the service.

IPersistableModel<VirtualMachineDataDisk>.Write(ModelReaderWriterOptions)

Writes the model into a BinaryData.

Applies to