VirtualMachineInner Class

public final class VirtualMachineInner
extends Resource

Describes a Virtual Machine.

Constructor Summary

Constructor Description
VirtualMachineInner()

Creates an instance of VirtualMachineInner class.

Method Summary

Modifier and Type Method and Description
AdditionalCapabilities additionalCapabilities()

Get the additionalCapabilities property: Specifies additional capabilities enabled or disabled on the virtual machine.

ApplicationProfile applicationProfile()

Get the applicationProfile property: Specifies the gallery applications that should be made available to the VM/VMSS.

SubResource availabilitySet()

Get the availabilitySet property: Specifies information about the availability set that the virtual machine should be assigned to.

BillingProfile billingProfile()

Get the billingProfile property: Specifies the billing related details of a Azure Spot virtual machine.

CapacityReservationProfile capacityReservation()

Get the capacityReservation property: Specifies information about the capacity reservation that is used to allocate virtual machine.

DiagnosticsProfile diagnosticsProfile()

Get the diagnosticsProfile property: Specifies the boot diagnostic settings state.

String etag()

Get the etag property: Etag is property returned in Create/Update/Get response of the VM, so that customer can supply it in the header to ensure optimistic updates.

VirtualMachineEvictionPolicyTypes evictionPolicy()

Get the evictionPolicy property: Specifies the eviction policy for the Azure Spot virtual machine and Azure Spot scale set.

ExtendedLocation extendedLocation()

Get the extendedLocation property: The extended location of the Virtual Machine.

String extensionsTimeBudget()

Get the extensionsTimeBudget property: Specifies the time alloted for all extensions to start.

static VirtualMachineInner fromJson(JsonReader jsonReader)

Reads an instance of VirtualMachineInner from the JsonReader.

HardwareProfile hardwareProfile()

Get the hardwareProfile property: Specifies the hardware settings for the virtual machine.

SubResource host()

Get the host property: Specifies information about the dedicated host that the virtual machine resides in.

SubResource hostGroup()

Get the hostGroup property: Specifies information about the dedicated host group that the virtual machine resides in.

String id()

Get the id property: Fully qualified resource Id for the resource.

VirtualMachineIdentity identity()

Get the identity property: The identity of the virtual machine, if configured.

VirtualMachineInstanceViewInner instanceView()

Get the instanceView property: The virtual machine instance view.

String licenseType()

Get the licenseType property: Specifies that the image or disk that is being used was licensed on-premises.

String managedBy()

Get the managedBy property: ManagedBy is set to Virtual Machine Scale Set(VMSS) flex ARM resourceID, if the VM is part of the VMSS.

String name()

Get the name property: The name of the resource.

NetworkProfile networkProfile()

Get the networkProfile property: Specifies the network interfaces of the virtual machine.

OSProfile osProfile()

Get the osProfile property: Specifies the operating system settings used while creating the virtual machine.

Plan plan()

Get the plan property: Specifies information about the marketplace image used to create the virtual machine.

Integer platformFaultDomain()

Get the platformFaultDomain property: Specifies the scale set logical fault domain into which the Virtual Machine will be created.

VirtualMachinePriorityTypes priority()

Get the priority property: Specifies the priority for the virtual machine.

String provisioningState()

Get the provisioningState property: The provisioning state, which only appears in the response.

SubResource proximityPlacementGroup()

Get the proximityPlacementGroup property: Specifies information about the proximity placement group that the virtual machine should be assigned to.

List<VirtualMachineExtensionInner> resources()

Get the resources property: The virtual machine child extension resources.

ScheduledEventsPolicy scheduledEventsPolicy()

Get the scheduledEventsPolicy property: Specifies Redeploy, Reboot and ScheduledEventsAdditionalPublishingTargets Scheduled Event related configurations for the virtual machine.

ScheduledEventsProfile scheduledEventsProfile()

Get the scheduledEventsProfile property: Specifies Scheduled Event related configurations.

SecurityProfile securityProfile()

Get the securityProfile property: Specifies the Security related profile settings for the virtual machine.

StorageProfile storageProfile()

Get the storageProfile property: Specifies the storage settings for the virtual machine disks.

OffsetDateTime timeCreated()

Get the timeCreated property: Specifies the time at which the Virtual Machine resource was created.

JsonWriter toJson(JsonWriter jsonWriter)
String type()

Get the type property: The type of the resource.

String userData()

Get the userData property: UserData for the VM, which must be base-64 encoded.

void validate()

Validates the instance.

SubResource virtualMachineScaleSet()

Get the virtualMachineScaleSet property: Specifies information about the virtual machine scale set that the virtual machine should be assigned to.

String vmId()

Get the vmId property: Specifies the VM unique ID which is a 128-bits identifier that is encoded and stored in all Azure IaaS VMs SMBIOS and can be read using platform BIOS commands.

VirtualMachineInner withAdditionalCapabilities(AdditionalCapabilities additionalCapabilities)

Set the additionalCapabilities property: Specifies additional capabilities enabled or disabled on the virtual machine.

VirtualMachineInner withApplicationProfile(ApplicationProfile applicationProfile)

Set the applicationProfile property: Specifies the gallery applications that should be made available to the VM/VMSS.

VirtualMachineInner withAvailabilitySet(SubResource availabilitySet)

Set the availabilitySet property: Specifies information about the availability set that the virtual machine should be assigned to.

VirtualMachineInner withBillingProfile(BillingProfile billingProfile)

Set the billingProfile property: Specifies the billing related details of a Azure Spot virtual machine.

VirtualMachineInner withCapacityReservation(CapacityReservationProfile capacityReservation)

Set the capacityReservation property: Specifies information about the capacity reservation that is used to allocate virtual machine.

VirtualMachineInner withDiagnosticsProfile(DiagnosticsProfile diagnosticsProfile)

Set the diagnosticsProfile property: Specifies the boot diagnostic settings state.

VirtualMachineInner withEvictionPolicy(VirtualMachineEvictionPolicyTypes evictionPolicy)

Set the evictionPolicy property: Specifies the eviction policy for the Azure Spot virtual machine and Azure Spot scale set.

VirtualMachineInner withExtendedLocation(ExtendedLocation extendedLocation)

Set the extendedLocation property: The extended location of the Virtual Machine.

VirtualMachineInner withExtensionsTimeBudget(String extensionsTimeBudget)

Set the extensionsTimeBudget property: Specifies the time alloted for all extensions to start.

VirtualMachineInner withHardwareProfile(HardwareProfile hardwareProfile)

Set the hardwareProfile property: Specifies the hardware settings for the virtual machine.

VirtualMachineInner withHost(SubResource host)

Set the host property: Specifies information about the dedicated host that the virtual machine resides in.

VirtualMachineInner withHostGroup(SubResource hostGroup)

Set the hostGroup property: Specifies information about the dedicated host group that the virtual machine resides in.

VirtualMachineInner withIdentity(VirtualMachineIdentity identity)

Set the identity property: The identity of the virtual machine, if configured.

VirtualMachineInner withLicenseType(String licenseType)

Set the licenseType property: Specifies that the image or disk that is being used was licensed on-premises.

VirtualMachineInner withLocation(String location)
VirtualMachineInner withNetworkProfile(NetworkProfile networkProfile)

Set the networkProfile property: Specifies the network interfaces of the virtual machine.

VirtualMachineInner withOsProfile(OSProfile osProfile)

Set the osProfile property: Specifies the operating system settings used while creating the virtual machine.

VirtualMachineInner withPlan(Plan plan)

Set the plan property: Specifies information about the marketplace image used to create the virtual machine.

VirtualMachineInner withPlatformFaultDomain(Integer platformFaultDomain)

Set the platformFaultDomain property: Specifies the scale set logical fault domain into which the Virtual Machine will be created.

VirtualMachineInner withPriority(VirtualMachinePriorityTypes priority)

Set the priority property: Specifies the priority for the virtual machine.

VirtualMachineInner withProximityPlacementGroup(SubResource proximityPlacementGroup)

Set the proximityPlacementGroup property: Specifies information about the proximity placement group that the virtual machine should be assigned to.

VirtualMachineInner withScheduledEventsPolicy(ScheduledEventsPolicy scheduledEventsPolicy)

Set the scheduledEventsPolicy property: Specifies Redeploy, Reboot and ScheduledEventsAdditionalPublishingTargets Scheduled Event related configurations for the virtual machine.

VirtualMachineInner withScheduledEventsProfile(ScheduledEventsProfile scheduledEventsProfile)

Set the scheduledEventsProfile property: Specifies Scheduled Event related configurations.

VirtualMachineInner withSecurityProfile(SecurityProfile securityProfile)

Set the securityProfile property: Specifies the Security related profile settings for the virtual machine.

VirtualMachineInner withStorageProfile(StorageProfile storageProfile)

Set the storageProfile property: Specifies the storage settings for the virtual machine disks.

VirtualMachineInner withTags(Map<String,String> tags)
VirtualMachineInner withUserData(String userData)

Set the userData property: UserData for the VM, which must be base-64 encoded.

VirtualMachineInner withVirtualMachineScaleSet(SubResource virtualMachineScaleSet)

Set the virtualMachineScaleSet property: Specifies information about the virtual machine scale set that the virtual machine should be assigned to.

VirtualMachineInner withZones(List<String> zones)

Set the zones property: The virtual machine zones.

List<String> zones()

Get the zones property: The virtual machine zones.

Methods inherited from ProxyResource

Methods inherited from Resource

Methods inherited from java.lang.Object

Constructor Details

VirtualMachineInner

public VirtualMachineInner()

Creates an instance of VirtualMachineInner class.

Method Details

additionalCapabilities

public AdditionalCapabilities additionalCapabilities()

Get the additionalCapabilities property: Specifies additional capabilities enabled or disabled on the virtual machine.

Returns:

the additionalCapabilities value.

applicationProfile

public ApplicationProfile applicationProfile()

Get the applicationProfile property: Specifies the gallery applications that should be made available to the VM/VMSS.

Returns:

the applicationProfile value.

availabilitySet

public SubResource availabilitySet()

Get the availabilitySet property: Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Availability sets overview](https://docs.microsoft.com/azure/virtual-machines/availability-set-overview). For more information on Azure planned maintenance, see [Maintenance and updates for Virtual Machines in Azure](https://docs.microsoft.com/azure/virtual-machines/maintenance-and-updates). Currently, a VM can only be added to availability set at creation time. The availability set to which the VM is being added should be under the same resource group as the availability set resource. An existing VM cannot be added to an availability set. This property cannot exist along with a non-null properties.virtualMachineScaleSet reference.

Returns:

the availabilitySet value.

billingProfile

public BillingProfile billingProfile()

Get the billingProfile property: Specifies the billing related details of a Azure Spot virtual machine. Minimum api-version: 2019-03-01.

Returns:

the billingProfile value.

capacityReservation

public CapacityReservationProfile capacityReservation()

Get the capacityReservation property: Specifies information about the capacity reservation that is used to allocate virtual machine. Minimum api-version: 2021-04-01.

Returns:

the capacityReservation value.

diagnosticsProfile

public DiagnosticsProfile diagnosticsProfile()

Get the diagnosticsProfile property: Specifies the boot diagnostic settings state. Minimum api-version: 2015-06-15.

Returns:

the diagnosticsProfile value.

etag

public String etag()

Get the etag property: Etag is property returned in Create/Update/Get response of the VM, so that customer can supply it in the header to ensure optimistic updates.

Returns:

the etag value.

evictionPolicy

public VirtualMachineEvictionPolicyTypes evictionPolicy()

Get the evictionPolicy property: Specifies the eviction policy for the Azure Spot virtual machine and Azure Spot scale set. For Azure Spot virtual machines, both 'Deallocate' and 'Delete' are supported and the minimum api-version is 2019-03-01. For Azure Spot scale sets, both 'Deallocate' and 'Delete' are supported and the minimum api-version is 2017-10-30-preview.

Returns:

the evictionPolicy value.

extendedLocation

public ExtendedLocation extendedLocation()

Get the extendedLocation property: The extended location of the Virtual Machine.

Returns:

the extendedLocation value.

extensionsTimeBudget

public String extensionsTimeBudget()

Get the extensionsTimeBudget property: Specifies the time alloted for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. The default value is 90 minutes (PT1H30M). Minimum api-version: 2020-06-01.

Returns:

the extensionsTimeBudget value.

fromJson

public static VirtualMachineInner fromJson(JsonReader jsonReader)

Reads an instance of VirtualMachineInner from the JsonReader.

Parameters:

jsonReader - The JsonReader being read.

Returns:

An instance of VirtualMachineInner if the JsonReader was pointing to an instance of it, or null if it was pointing to JSON null.

Throws:

IOException

- If the deserialized JSON object was missing any required properties.

hardwareProfile

public HardwareProfile hardwareProfile()

Get the hardwareProfile property: Specifies the hardware settings for the virtual machine.

Returns:

the hardwareProfile value.

host

public SubResource host()

Get the host property: Specifies information about the dedicated host that the virtual machine resides in. Minimum api-version: 2018-10-01.

Returns:

the host value.

hostGroup

public SubResource hostGroup()

Get the hostGroup property: Specifies information about the dedicated host group that the virtual machine resides in. **Note:** User cannot specify both host and hostGroup properties. Minimum api-version: 2020-06-01.

Returns:

the hostGroup value.

id

public String id()

Get the id property: Fully qualified resource Id for the resource.

Overrides:

VirtualMachineInner.id()

Returns:

the id value.

identity

public VirtualMachineIdentity identity()

Get the identity property: The identity of the virtual machine, if configured.

Returns:

the identity value.

instanceView

public VirtualMachineInstanceViewInner instanceView()

Get the instanceView property: The virtual machine instance view.

Returns:

the instanceView value.

licenseType

public String licenseType()

Get the licenseType property: Specifies that the image or disk that is being used was licensed on-premises.

Possible values for Windows Server operating system are:

Windows_Client

Windows_Server

Possible values for Linux Server operating system are:

RHEL_BYOS (for RHEL)

SLES_BYOS (for SUSE)

For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)

[Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)

Minimum api-version: 2015-06-15.

Returns:

the licenseType value.

managedBy

public String managedBy()

Get the managedBy property: ManagedBy is set to Virtual Machine Scale Set(VMSS) flex ARM resourceID, if the VM is part of the VMSS. This property is used by platform for internal resource group delete optimization.

Returns:

the managedBy value.

name

public String name()

Get the name property: The name of the resource.

Overrides:

VirtualMachineInner.name()

Returns:

the name value.

networkProfile

public NetworkProfile networkProfile()

Get the networkProfile property: Specifies the network interfaces of the virtual machine.

Returns:

the networkProfile value.

osProfile

public OSProfile osProfile()

Get the osProfile property: Specifies the operating system settings used while creating the virtual machine. Some of the settings cannot be changed once VM is provisioned.

Returns:

the osProfile value.

plan

public Plan plan()

Get the plan property: Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**.

Returns:

the plan value.

platformFaultDomain

public Integer platformFaultDomain()

Get the platformFaultDomain property: Specifies the scale set logical fault domain into which the Virtual Machine will be created. By default, the Virtual Machine will by automatically assigned to a fault domain that best maintains balance across available fault domains. This is applicable only if the 'virtualMachineScaleSet' property of this Virtual Machine is set. The Virtual Machine Scale Set that is referenced, must have 'platformFaultDomainCount' greater than 1. This property cannot be updated once the Virtual Machine is created. Fault domain assignment can be viewed in the Virtual Machine Instance View. Minimum api\u2010version: 2020\u201012\u201001.

Returns:

the platformFaultDomain value.

priority

public VirtualMachinePriorityTypes priority()

Get the priority property: Specifies the priority for the virtual machine. Minimum api-version: 2019-03-01.

Returns:

the priority value.

provisioningState

public String provisioningState()

Get the provisioningState property: The provisioning state, which only appears in the response.

Returns:

the provisioningState value.

proximityPlacementGroup

public SubResource proximityPlacementGroup()

Get the proximityPlacementGroup property: Specifies information about the proximity placement group that the virtual machine should be assigned to. Minimum api-version: 2018-04-01.

Returns:

the proximityPlacementGroup value.

resources

public List resources()

Get the resources property: The virtual machine child extension resources.

Returns:

the resources value.

scheduledEventsPolicy

public ScheduledEventsPolicy scheduledEventsPolicy()

Get the scheduledEventsPolicy property: Specifies Redeploy, Reboot and ScheduledEventsAdditionalPublishingTargets Scheduled Event related configurations for the virtual machine.

Returns:

the scheduledEventsPolicy value.

scheduledEventsProfile

public ScheduledEventsProfile scheduledEventsProfile()

Get the scheduledEventsProfile property: Specifies Scheduled Event related configurations.

Returns:

the scheduledEventsProfile value.

securityProfile

public SecurityProfile securityProfile()

Get the securityProfile property: Specifies the Security related profile settings for the virtual machine.

Returns:

the securityProfile value.

storageProfile

public StorageProfile storageProfile()

Get the storageProfile property: Specifies the storage settings for the virtual machine disks.

Returns:

the storageProfile value.

timeCreated

public OffsetDateTime timeCreated()

Get the timeCreated property: Specifies the time at which the Virtual Machine resource was created. Minimum api-version: 2021-11-01.

Returns:

the timeCreated value.

toJson

public JsonWriter toJson(JsonWriter jsonWriter)

Overrides:

VirtualMachineInner.toJson(JsonWriter jsonWriter)

Parameters:

jsonWriter

Throws:

type

public String type()

Get the type property: The type of the resource.

Overrides:

VirtualMachineInner.type()

Returns:

the type value.

userData

public String userData()

Get the userData property: UserData for the VM, which must be base-64 encoded. Customer should not pass any secrets in here. Minimum api-version: 2021-03-01.

Returns:

the userData value.

validate

public void validate()

Validates the instance.

virtualMachineScaleSet

public SubResource virtualMachineScaleSet()

Get the virtualMachineScaleSet property: Specifies information about the virtual machine scale set that the virtual machine should be assigned to. Virtual machines specified in the same virtual machine scale set are allocated to different nodes to maximize availability. Currently, a VM can only be added to virtual machine scale set at creation time. An existing VM cannot be added to a virtual machine scale set. This property cannot exist along with a non-null properties.availabilitySet reference. Minimum api\u2010version: 2019\u201003\u201001.

Returns:

the virtualMachineScaleSet value.

vmId

public String vmId()

Get the vmId property: Specifies the VM unique ID which is a 128-bits identifier that is encoded and stored in all Azure IaaS VMs SMBIOS and can be read using platform BIOS commands.

Returns:

the vmId value.

withAdditionalCapabilities

public VirtualMachineInner withAdditionalCapabilities(AdditionalCapabilities additionalCapabilities)

Set the additionalCapabilities property: Specifies additional capabilities enabled or disabled on the virtual machine.

Parameters:

additionalCapabilities - the additionalCapabilities value to set.

Returns:

the VirtualMachineInner object itself.

withApplicationProfile

public VirtualMachineInner withApplicationProfile(ApplicationProfile applicationProfile)

Set the applicationProfile property: Specifies the gallery applications that should be made available to the VM/VMSS.

Parameters:

applicationProfile - the applicationProfile value to set.

Returns:

the VirtualMachineInner object itself.

withAvailabilitySet

public VirtualMachineInner withAvailabilitySet(SubResource availabilitySet)

Set the availabilitySet property: Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Availability sets overview](https://docs.microsoft.com/azure/virtual-machines/availability-set-overview). For more information on Azure planned maintenance, see [Maintenance and updates for Virtual Machines in Azure](https://docs.microsoft.com/azure/virtual-machines/maintenance-and-updates). Currently, a VM can only be added to availability set at creation time. The availability set to which the VM is being added should be under the same resource group as the availability set resource. An existing VM cannot be added to an availability set. This property cannot exist along with a non-null properties.virtualMachineScaleSet reference.

Parameters:

availabilitySet - the availabilitySet value to set.

Returns:

the VirtualMachineInner object itself.

withBillingProfile

public VirtualMachineInner withBillingProfile(BillingProfile billingProfile)

Set the billingProfile property: Specifies the billing related details of a Azure Spot virtual machine. Minimum api-version: 2019-03-01.

Parameters:

billingProfile - the billingProfile value to set.

Returns:

the VirtualMachineInner object itself.

withCapacityReservation

public VirtualMachineInner withCapacityReservation(CapacityReservationProfile capacityReservation)

Set the capacityReservation property: Specifies information about the capacity reservation that is used to allocate virtual machine. Minimum api-version: 2021-04-01.

Parameters:

capacityReservation - the capacityReservation value to set.

Returns:

the VirtualMachineInner object itself.

withDiagnosticsProfile

public VirtualMachineInner withDiagnosticsProfile(DiagnosticsProfile diagnosticsProfile)

Set the diagnosticsProfile property: Specifies the boot diagnostic settings state. Minimum api-version: 2015-06-15.

Parameters:

diagnosticsProfile - the diagnosticsProfile value to set.

Returns:

the VirtualMachineInner object itself.

withEvictionPolicy

public VirtualMachineInner withEvictionPolicy(VirtualMachineEvictionPolicyTypes evictionPolicy)

Set the evictionPolicy property: Specifies the eviction policy for the Azure Spot virtual machine and Azure Spot scale set. For Azure Spot virtual machines, both 'Deallocate' and 'Delete' are supported and the minimum api-version is 2019-03-01. For Azure Spot scale sets, both 'Deallocate' and 'Delete' are supported and the minimum api-version is 2017-10-30-preview.

Parameters:

evictionPolicy - the evictionPolicy value to set.

Returns:

the VirtualMachineInner object itself.

withExtendedLocation

public VirtualMachineInner withExtendedLocation(ExtendedLocation extendedLocation)

Set the extendedLocation property: The extended location of the Virtual Machine.

Parameters:

extendedLocation - the extendedLocation value to set.

Returns:

the VirtualMachineInner object itself.

withExtensionsTimeBudget

public VirtualMachineInner withExtensionsTimeBudget(String extensionsTimeBudget)

Set the extensionsTimeBudget property: Specifies the time alloted for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. The default value is 90 minutes (PT1H30M). Minimum api-version: 2020-06-01.

Parameters:

extensionsTimeBudget - the extensionsTimeBudget value to set.

Returns:

the VirtualMachineInner object itself.

withHardwareProfile

public VirtualMachineInner withHardwareProfile(HardwareProfile hardwareProfile)

Set the hardwareProfile property: Specifies the hardware settings for the virtual machine.

Parameters:

hardwareProfile - the hardwareProfile value to set.

Returns:

the VirtualMachineInner object itself.

withHost

public VirtualMachineInner withHost(SubResource host)

Set the host property: Specifies information about the dedicated host that the virtual machine resides in. Minimum api-version: 2018-10-01.

Parameters:

host - the host value to set.

Returns:

the VirtualMachineInner object itself.

withHostGroup

public VirtualMachineInner withHostGroup(SubResource hostGroup)

Set the hostGroup property: Specifies information about the dedicated host group that the virtual machine resides in. **Note:** User cannot specify both host and hostGroup properties. Minimum api-version: 2020-06-01.

Parameters:

hostGroup - the hostGroup value to set.

Returns:

the VirtualMachineInner object itself.

withIdentity

public VirtualMachineInner withIdentity(VirtualMachineIdentity identity)

Set the identity property: The identity of the virtual machine, if configured.

Parameters:

identity - the identity value to set.

Returns:

the VirtualMachineInner object itself.

withLicenseType

public VirtualMachineInner withLicenseType(String licenseType)

Set the licenseType property: Specifies that the image or disk that is being used was licensed on-premises.

Possible values for Windows Server operating system are:

Windows_Client

Windows_Server

Possible values for Linux Server operating system are:

RHEL_BYOS (for RHEL)

SLES_BYOS (for SUSE)

For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)

[Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)

Minimum api-version: 2015-06-15.

Parameters:

licenseType - the licenseType value to set.

Returns:

the VirtualMachineInner object itself.

withLocation

public VirtualMachineInner withLocation(String location)

Overrides:

VirtualMachineInner.withLocation(String location)

Parameters:

location

withNetworkProfile

public VirtualMachineInner withNetworkProfile(NetworkProfile networkProfile)

Set the networkProfile property: Specifies the network interfaces of the virtual machine.

Parameters:

networkProfile - the networkProfile value to set.

Returns:

the VirtualMachineInner object itself.

withOsProfile

public VirtualMachineInner withOsProfile(OSProfile osProfile)

Set the osProfile property: Specifies the operating system settings used while creating the virtual machine. Some of the settings cannot be changed once VM is provisioned.

Parameters:

osProfile - the osProfile value to set.

Returns:

the VirtualMachineInner object itself.

withPlan

public VirtualMachineInner withPlan(Plan plan)

Set the plan property: Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**.

Parameters:

plan - the plan value to set.

Returns:

the VirtualMachineInner object itself.

withPlatformFaultDomain

public VirtualMachineInner withPlatformFaultDomain(Integer platformFaultDomain)

Set the platformFaultDomain property: Specifies the scale set logical fault domain into which the Virtual Machine will be created. By default, the Virtual Machine will by automatically assigned to a fault domain that best maintains balance across available fault domains. This is applicable only if the 'virtualMachineScaleSet' property of this Virtual Machine is set. The Virtual Machine Scale Set that is referenced, must have 'platformFaultDomainCount' greater than 1. This property cannot be updated once the Virtual Machine is created. Fault domain assignment can be viewed in the Virtual Machine Instance View. Minimum api\u2010version: 2020\u201012\u201001.

Parameters:

platformFaultDomain - the platformFaultDomain value to set.

Returns:

the VirtualMachineInner object itself.

withPriority

public VirtualMachineInner withPriority(VirtualMachinePriorityTypes priority)

Set the priority property: Specifies the priority for the virtual machine. Minimum api-version: 2019-03-01.

Parameters:

priority - the priority value to set.

Returns:

the VirtualMachineInner object itself.

withProximityPlacementGroup

public VirtualMachineInner withProximityPlacementGroup(SubResource proximityPlacementGroup)

Set the proximityPlacementGroup property: Specifies information about the proximity placement group that the virtual machine should be assigned to. Minimum api-version: 2018-04-01.

Parameters:

proximityPlacementGroup - the proximityPlacementGroup value to set.

Returns:

the VirtualMachineInner object itself.

withScheduledEventsPolicy

public VirtualMachineInner withScheduledEventsPolicy(ScheduledEventsPolicy scheduledEventsPolicy)

Set the scheduledEventsPolicy property: Specifies Redeploy, Reboot and ScheduledEventsAdditionalPublishingTargets Scheduled Event related configurations for the virtual machine.

Parameters:

scheduledEventsPolicy - the scheduledEventsPolicy value to set.

Returns:

the VirtualMachineInner object itself.

withScheduledEventsProfile

public VirtualMachineInner withScheduledEventsProfile(ScheduledEventsProfile scheduledEventsProfile)

Set the scheduledEventsProfile property: Specifies Scheduled Event related configurations.

Parameters:

scheduledEventsProfile - the scheduledEventsProfile value to set.

Returns:

the VirtualMachineInner object itself.

withSecurityProfile

public VirtualMachineInner withSecurityProfile(SecurityProfile securityProfile)

Set the securityProfile property: Specifies the Security related profile settings for the virtual machine.

Parameters:

securityProfile - the securityProfile value to set.

Returns:

the VirtualMachineInner object itself.

withStorageProfile

public VirtualMachineInner withStorageProfile(StorageProfile storageProfile)

Set the storageProfile property: Specifies the storage settings for the virtual machine disks.

Parameters:

storageProfile - the storageProfile value to set.

Returns:

the VirtualMachineInner object itself.

withTags

public VirtualMachineInner withTags(Map tags)

Overrides:

VirtualMachineInner.withTags(Map<String,String> tags)

Parameters:

tags

withUserData

public VirtualMachineInner withUserData(String userData)

Set the userData property: UserData for the VM, which must be base-64 encoded. Customer should not pass any secrets in here. Minimum api-version: 2021-03-01.

Parameters:

userData - the userData value to set.

Returns:

the VirtualMachineInner object itself.

withVirtualMachineScaleSet

public VirtualMachineInner withVirtualMachineScaleSet(SubResource virtualMachineScaleSet)

Set the virtualMachineScaleSet property: Specifies information about the virtual machine scale set that the virtual machine should be assigned to. Virtual machines specified in the same virtual machine scale set are allocated to different nodes to maximize availability. Currently, a VM can only be added to virtual machine scale set at creation time. An existing VM cannot be added to a virtual machine scale set. This property cannot exist along with a non-null properties.availabilitySet reference. Minimum api\u2010version: 2019\u201003\u201001.

Parameters:

virtualMachineScaleSet - the virtualMachineScaleSet value to set.

Returns:

the VirtualMachineInner object itself.

withZones

public VirtualMachineInner withZones(List zones)

Set the zones property: The virtual machine zones.

Parameters:

zones - the zones value to set.

Returns:

the VirtualMachineInner object itself.

zones

public List zones()

Get the zones property: The virtual machine zones.

Returns:

the zones value.

Applies to