VirtualMachineScaleSetVMProfile Class

  • java.lang.Object
    • com.azure.resourcemanager.compute.models.VirtualMachineScaleSetVMProfile

Implements

public final class VirtualMachineScaleSetVMProfile
implements JsonSerializable<VirtualMachineScaleSetVMProfile>

Describes a virtual machine scale set virtual machine profile.

Constructor Summary

Constructor Description
VirtualMachineScaleSetVMProfile()

Creates an instance of VirtualMachineScaleSetVMProfile class.

Method Summary

Modifier and Type Method and Description
ApplicationProfile applicationProfile()

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

BillingProfile billingProfile()

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

CapacityReservationProfile capacityReservation()

Get the capacityReservation property: Specifies the capacity reservation related details of a scale set.

DiagnosticsProfile diagnosticsProfile()

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

VirtualMachineEvictionPolicyTypes evictionPolicy()

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

VirtualMachineScaleSetExtensionProfile extensionProfile()

Get the extensionProfile property: Specifies a collection of settings for extensions installed on virtual machines in the scale set.

static VirtualMachineScaleSetVMProfile fromJson(JsonReader jsonReader)

Reads an instance of VirtualMachineScaleSetVMProfile from the JsonReader.

VirtualMachineScaleSetHardwareProfile hardwareProfile()

Get the hardwareProfile property: Specifies the hardware profile related details of a scale set.

String licenseType()

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

VirtualMachineScaleSetNetworkProfile networkProfile()

Get the networkProfile property: Specifies properties of the network interfaces of the virtual machines in the scale set.

VirtualMachineScaleSetOSProfile osProfile()

Get the osProfile property: Specifies the operating system settings for the virtual machines in the scale set.

VirtualMachinePriorityTypes priority()

Get the priority property: Specifies the priority for the virtual machines in the scale set.

ScheduledEventsProfile scheduledEventsProfile()

Get the scheduledEventsProfile property: Specifies Scheduled Event related configurations.

SecurityPostureReference securityPostureReference()

Get the securityPostureReference property: Specifies the security posture to be used in the scale set.

SecurityProfile securityProfile()

Get the securityProfile property: Specifies the Security related profile settings for the virtual machines in the scale set.

ServiceArtifactReference serviceArtifactReference()

Get the serviceArtifactReference property: Specifies the service artifact reference id used to set same image version for all virtual machines in the scale set when using 'latest' image version.

VirtualMachineScaleSetStorageProfile storageProfile()

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

OffsetDateTime timeCreated()

Get the timeCreated property: Specifies the time in which this VM profile for the Virtual Machine Scale Set was created.

JsonWriter toJson(JsonWriter jsonWriter)
String userData()

Get the userData property: UserData for the virtual machines in the scale set, which must be base-64 encoded.

void validate()

Validates the instance.

VirtualMachineScaleSetVMProfile withApplicationProfile(ApplicationProfile applicationProfile)

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

VirtualMachineScaleSetVMProfile withBillingProfile(BillingProfile billingProfile)

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

VirtualMachineScaleSetVMProfile withCapacityReservation(CapacityReservationProfile capacityReservation)

Set the capacityReservation property: Specifies the capacity reservation related details of a scale set.

VirtualMachineScaleSetVMProfile withDiagnosticsProfile(DiagnosticsProfile diagnosticsProfile)

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

VirtualMachineScaleSetVMProfile withEvictionPolicy(VirtualMachineEvictionPolicyTypes evictionPolicy)

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

VirtualMachineScaleSetVMProfile withExtensionProfile(VirtualMachineScaleSetExtensionProfile extensionProfile)

Set the extensionProfile property: Specifies a collection of settings for extensions installed on virtual machines in the scale set.

VirtualMachineScaleSetVMProfile withHardwareProfile(VirtualMachineScaleSetHardwareProfile hardwareProfile)

Set the hardwareProfile property: Specifies the hardware profile related details of a scale set.

VirtualMachineScaleSetVMProfile withLicenseType(String licenseType)

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

VirtualMachineScaleSetVMProfile withNetworkProfile(VirtualMachineScaleSetNetworkProfile networkProfile)

Set the networkProfile property: Specifies properties of the network interfaces of the virtual machines in the scale set.

VirtualMachineScaleSetVMProfile withOsProfile(VirtualMachineScaleSetOSProfile osProfile)

Set the osProfile property: Specifies the operating system settings for the virtual machines in the scale set.

VirtualMachineScaleSetVMProfile withPriority(VirtualMachinePriorityTypes priority)

Set the priority property: Specifies the priority for the virtual machines in the scale set.

VirtualMachineScaleSetVMProfile withScheduledEventsProfile(ScheduledEventsProfile scheduledEventsProfile)

Set the scheduledEventsProfile property: Specifies Scheduled Event related configurations.

VirtualMachineScaleSetVMProfile withSecurityPostureReference(SecurityPostureReference securityPostureReference)

Set the securityPostureReference property: Specifies the security posture to be used in the scale set.

VirtualMachineScaleSetVMProfile withSecurityProfile(SecurityProfile securityProfile)

Set the securityProfile property: Specifies the Security related profile settings for the virtual machines in the scale set.

VirtualMachineScaleSetVMProfile withServiceArtifactReference(ServiceArtifactReference serviceArtifactReference)

Set the serviceArtifactReference property: Specifies the service artifact reference id used to set same image version for all virtual machines in the scale set when using 'latest' image version.

VirtualMachineScaleSetVMProfile withStorageProfile(VirtualMachineScaleSetStorageProfile storageProfile)

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

VirtualMachineScaleSetVMProfile withUserData(String userData)

Set the userData property: UserData for the virtual machines in the scale set, which must be base-64 encoded.

Methods inherited from java.lang.Object

Constructor Details

VirtualMachineScaleSetVMProfile

public VirtualMachineScaleSetVMProfile()

Creates an instance of VirtualMachineScaleSetVMProfile class.

Method Details

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.

billingProfile

public BillingProfile billingProfile()

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

Returns:

the billingProfile value.

capacityReservation

public CapacityReservationProfile capacityReservation()

Get the capacityReservation property: Specifies the capacity reservation related details of a scale set. 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.

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.

extensionProfile

public VirtualMachineScaleSetExtensionProfile extensionProfile()

Get the extensionProfile property: Specifies a collection of settings for extensions installed on virtual machines in the scale set.

Returns:

the extensionProfile value.

fromJson

public static VirtualMachineScaleSetVMProfile fromJson(JsonReader jsonReader)

Reads an instance of VirtualMachineScaleSetVMProfile from the JsonReader.

Parameters:

jsonReader - The JsonReader being read.

Returns:

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

Throws:

IOException

- If an error occurs while reading the VirtualMachineScaleSetVMProfile.

hardwareProfile

public VirtualMachineScaleSetHardwareProfile hardwareProfile()

Get the hardwareProfile property: Specifies the hardware profile related details of a scale set. Minimum api-version: 2021-11-01.

Returns:

the hardwareProfile 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.

networkProfile

public VirtualMachineScaleSetNetworkProfile networkProfile()

Get the networkProfile property: Specifies properties of the network interfaces of the virtual machines in the scale set.

Returns:

the networkProfile value.

osProfile

public VirtualMachineScaleSetOSProfile osProfile()

Get the osProfile property: Specifies the operating system settings for the virtual machines in the scale set.

Returns:

the osProfile value.

priority

public VirtualMachinePriorityTypes priority()

Get the priority property: Specifies the priority for the virtual machines in the scale set. Minimum api-version: 2017-10-30-preview.

Returns:

the priority value.

scheduledEventsProfile

public ScheduledEventsProfile scheduledEventsProfile()

Get the scheduledEventsProfile property: Specifies Scheduled Event related configurations.

Returns:

the scheduledEventsProfile value.

securityPostureReference

public SecurityPostureReference securityPostureReference()

Get the securityPostureReference property: Specifies the security posture to be used in the scale set. Minimum api-version: 2023-03-01.

Returns:

the securityPostureReference value.

securityProfile

public SecurityProfile securityProfile()

Get the securityProfile property: Specifies the Security related profile settings for the virtual machines in the scale set.

Returns:

the securityProfile value.

serviceArtifactReference

public ServiceArtifactReference serviceArtifactReference()

Get the serviceArtifactReference property: Specifies the service artifact reference id used to set same image version for all virtual machines in the scale set when using 'latest' image version. Minimum api-version: 2022-11-01.

Returns:

the serviceArtifactReference value.

storageProfile

public VirtualMachineScaleSetStorageProfile 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 in which this VM profile for the Virtual Machine Scale Set was created. This value will be added to VMSS Flex VM tags when creating/updating the VMSS VM Profile. Minimum API version for this property is 2023-09-01.

Returns:

the timeCreated value.

toJson

public JsonWriter toJson(JsonWriter jsonWriter)

Parameters:

jsonWriter

Throws:

userData

public String userData()

Get the userData property: UserData for the virtual machines in the scale set, 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.

withApplicationProfile

public VirtualMachineScaleSetVMProfile 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 VirtualMachineScaleSetVMProfile object itself.

withBillingProfile

public VirtualMachineScaleSetVMProfile withBillingProfile(BillingProfile billingProfile)

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

Parameters:

billingProfile - the billingProfile value to set.

Returns:

the VirtualMachineScaleSetVMProfile object itself.

withCapacityReservation

public VirtualMachineScaleSetVMProfile withCapacityReservation(CapacityReservationProfile capacityReservation)

Set the capacityReservation property: Specifies the capacity reservation related details of a scale set. Minimum api-version: 2021-04-01.

Parameters:

capacityReservation - the capacityReservation value to set.

Returns:

the VirtualMachineScaleSetVMProfile object itself.

withDiagnosticsProfile

public VirtualMachineScaleSetVMProfile 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 VirtualMachineScaleSetVMProfile object itself.

withEvictionPolicy

public VirtualMachineScaleSetVMProfile 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 VirtualMachineScaleSetVMProfile object itself.

withExtensionProfile

public VirtualMachineScaleSetVMProfile withExtensionProfile(VirtualMachineScaleSetExtensionProfile extensionProfile)

Set the extensionProfile property: Specifies a collection of settings for extensions installed on virtual machines in the scale set.

Parameters:

extensionProfile - the extensionProfile value to set.

Returns:

the VirtualMachineScaleSetVMProfile object itself.

withHardwareProfile

public VirtualMachineScaleSetVMProfile withHardwareProfile(VirtualMachineScaleSetHardwareProfile hardwareProfile)

Set the hardwareProfile property: Specifies the hardware profile related details of a scale set. Minimum api-version: 2021-11-01.

Parameters:

hardwareProfile - the hardwareProfile value to set.

Returns:

the VirtualMachineScaleSetVMProfile object itself.

withLicenseType

public VirtualMachineScaleSetVMProfile 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 VirtualMachineScaleSetVMProfile object itself.

withNetworkProfile

public VirtualMachineScaleSetVMProfile withNetworkProfile(VirtualMachineScaleSetNetworkProfile networkProfile)

Set the networkProfile property: Specifies properties of the network interfaces of the virtual machines in the scale set.

Parameters:

networkProfile - the networkProfile value to set.

Returns:

the VirtualMachineScaleSetVMProfile object itself.

withOsProfile

public VirtualMachineScaleSetVMProfile withOsProfile(VirtualMachineScaleSetOSProfile osProfile)

Set the osProfile property: Specifies the operating system settings for the virtual machines in the scale set.

Parameters:

osProfile - the osProfile value to set.

Returns:

the VirtualMachineScaleSetVMProfile object itself.

withPriority

public VirtualMachineScaleSetVMProfile withPriority(VirtualMachinePriorityTypes priority)

Set the priority property: Specifies the priority for the virtual machines in the scale set. Minimum api-version: 2017-10-30-preview.

Parameters:

priority - the priority value to set.

Returns:

the VirtualMachineScaleSetVMProfile object itself.

withScheduledEventsProfile

public VirtualMachineScaleSetVMProfile withScheduledEventsProfile(ScheduledEventsProfile scheduledEventsProfile)

Set the scheduledEventsProfile property: Specifies Scheduled Event related configurations.

Parameters:

scheduledEventsProfile - the scheduledEventsProfile value to set.

Returns:

the VirtualMachineScaleSetVMProfile object itself.

withSecurityPostureReference

public VirtualMachineScaleSetVMProfile withSecurityPostureReference(SecurityPostureReference securityPostureReference)

Set the securityPostureReference property: Specifies the security posture to be used in the scale set. Minimum api-version: 2023-03-01.

Parameters:

securityPostureReference - the securityPostureReference value to set.

Returns:

the VirtualMachineScaleSetVMProfile object itself.

withSecurityProfile

public VirtualMachineScaleSetVMProfile withSecurityProfile(SecurityProfile securityProfile)

Set the securityProfile property: Specifies the Security related profile settings for the virtual machines in the scale set.

Parameters:

securityProfile - the securityProfile value to set.

Returns:

the VirtualMachineScaleSetVMProfile object itself.

withServiceArtifactReference

public VirtualMachineScaleSetVMProfile withServiceArtifactReference(ServiceArtifactReference serviceArtifactReference)

Set the serviceArtifactReference property: Specifies the service artifact reference id used to set same image version for all virtual machines in the scale set when using 'latest' image version. Minimum api-version: 2022-11-01.

Parameters:

serviceArtifactReference - the serviceArtifactReference value to set.

Returns:

the VirtualMachineScaleSetVMProfile object itself.

withStorageProfile

public VirtualMachineScaleSetVMProfile withStorageProfile(VirtualMachineScaleSetStorageProfile storageProfile)

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

Parameters:

storageProfile - the storageProfile value to set.

Returns:

the VirtualMachineScaleSetVMProfile object itself.

withUserData

public VirtualMachineScaleSetVMProfile withUserData(String userData)

Set the userData property: UserData for the virtual machines in the scale set, 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 VirtualMachineScaleSetVMProfile object itself.

Applies to