Class VirtualMachineScaleSetVMProfile
java.lang.Object
com.azure.resourcemanager.compute.models.VirtualMachineScaleSetVMProfile
- All Implemented Interfaces:
com.azure.json.JsonSerializable<VirtualMachineScaleSetVMProfile>
public final class VirtualMachineScaleSetVMProfile
extends Object
implements com.azure.json.JsonSerializable<VirtualMachineScaleSetVMProfile>
Describes a virtual machine scale set virtual machine profile.
-
Constructor Summary
ConstructorsConstructorDescriptionCreates an instance of VirtualMachineScaleSetVMProfile class. -
Method Summary
Modifier and TypeMethodDescriptionGet the applicationProfile property: Specifies the gallery applications that should be made available to the VM/VMSS.Get the billingProfile property: Specifies the billing related details of a Azure Spot VMSS.Get the capacityReservation property: Specifies the capacity reservation related details of a scale set.Get the diagnosticsProfile property: Specifies the boot diagnostic settings state.Get the evictionPolicy property: Specifies the eviction policy for the Azure Spot virtual machine and Azure Spot scale set.Get the extensionProfile property: Specifies a collection of settings for extensions installed on virtual machines in the scale set.fromJson(com.azure.json.JsonReader jsonReader) Reads an instance of VirtualMachineScaleSetVMProfile from the JsonReader.Get the hardwareProfile property: Specifies the hardware profile related details of a scale set.Get the licenseType property: Specifies that the image or disk that is being used was licensed on-premises.Get the networkProfile property: Specifies properties of the network interfaces of the virtual machines in the scale set.Get the osProfile property: Specifies the operating system settings for the virtual machines in the scale set.priority()Get the priority property: Specifies the priority for the virtual machines in the scale set.Get the scheduledEventsProfile property: Specifies Scheduled Event related configurations.Get the securityPostureReference property: Specifies the security posture to be used in the scale set.Get the securityProfile property: Specifies the Security related profile settings for the virtual machines in the scale set.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.Get the storageProfile property: Specifies the storage settings for the virtual machine disks.Get the timeCreated property: Specifies the time in which this VM profile for the Virtual Machine Scale Set was created.com.azure.json.JsonWritertoJson(com.azure.json.JsonWriter jsonWriter) userData()Get the userData property: UserData for the virtual machines in the scale set, which must be base-64 encoded.voidvalidate()Validates the instance.withApplicationProfile(ApplicationProfile applicationProfile) Set the applicationProfile property: Specifies the gallery applications that should be made available to the VM/VMSS.withBillingProfile(BillingProfile billingProfile) Set the billingProfile property: Specifies the billing related details of a Azure Spot VMSS.withCapacityReservation(CapacityReservationProfile capacityReservation) Set the capacityReservation property: Specifies the capacity reservation related details of a scale set.withDiagnosticsProfile(DiagnosticsProfile diagnosticsProfile) Set the diagnosticsProfile property: Specifies the boot diagnostic settings state.withEvictionPolicy(VirtualMachineEvictionPolicyTypes evictionPolicy) Set the evictionPolicy property: Specifies the eviction policy for the Azure Spot virtual machine and Azure Spot scale set.withExtensionProfile(VirtualMachineScaleSetExtensionProfile extensionProfile) Set the extensionProfile property: Specifies a collection of settings for extensions installed on virtual machines in the scale set.withHardwareProfile(VirtualMachineScaleSetHardwareProfile hardwareProfile) Set the hardwareProfile property: Specifies the hardware profile related details of a scale set.withLicenseType(String licenseType) Set the licenseType property: Specifies that the image or disk that is being used was licensed on-premises.withNetworkProfile(VirtualMachineScaleSetNetworkProfile networkProfile) Set the networkProfile property: Specifies properties of the network interfaces of the virtual machines in the scale set.withOsProfile(VirtualMachineScaleSetOSProfile osProfile) Set the osProfile property: Specifies the operating system settings for the virtual machines in the scale set.withPriority(VirtualMachinePriorityTypes priority) Set the priority property: Specifies the priority for the virtual machines in the scale set.withScheduledEventsProfile(ScheduledEventsProfile scheduledEventsProfile) Set the scheduledEventsProfile property: Specifies Scheduled Event related configurations.withSecurityPostureReference(SecurityPostureReference securityPostureReference) Set the securityPostureReference property: Specifies the security posture to be used in the scale set.withSecurityProfile(SecurityProfile securityProfile) Set the securityProfile property: Specifies the Security related profile settings for the virtual machines in the scale set.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.withStorageProfile(VirtualMachineScaleSetStorageProfile storageProfile) Set the storageProfile property: Specifies the storage settings for the virtual machine disks.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 class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.azure.json.JsonSerializable
toJson, toJson, toJsonBytes, toJsonString
-
Constructor Details
-
VirtualMachineScaleSetVMProfile
public VirtualMachineScaleSetVMProfile()Creates an instance of VirtualMachineScaleSetVMProfile class.
-
-
Method Details
-
osProfile
Get the osProfile property: Specifies the operating system settings for the virtual machines in the scale set.- Returns:
- the osProfile value.
-
withOsProfile
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.
-
storageProfile
Get the storageProfile property: Specifies the storage settings for the virtual machine disks.- Returns:
- the storageProfile value.
-
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.
-
networkProfile
Get the networkProfile property: Specifies properties of the network interfaces of the virtual machines in the scale set.- Returns:
- the networkProfile value.
-
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.
-
securityProfile
Get the securityProfile property: Specifies the Security related profile settings for the virtual machines in the scale set.- Returns:
- the securityProfile value.
-
withSecurityProfile
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.
-
diagnosticsProfile
Get the diagnosticsProfile property: Specifies the boot diagnostic settings state. Minimum api-version: 2015-06-15.- Returns:
- the diagnosticsProfile value.
-
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.
-
extensionProfile
Get the extensionProfile property: Specifies a collection of settings for extensions installed on virtual machines in the scale set.- Returns:
- the extensionProfile value.
-
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.
-
licenseType
Get the licenseType property: Specifies that the image or disk that is being used was licensed on-premises. <br><br> Possible values for Windows Server operating system are: <br><br> Windows_Client <br><br> Windows_Server <br><br> Possible values for Linux Server operating system are: <br><br> RHEL_BYOS (for RHEL) <br><br> SLES_BYOS (for SUSE) <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing) <br><br> [Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux) <br><br> Minimum api-version: 2015-06-15.- Returns:
- the licenseType value.
-
withLicenseType
Set the licenseType property: Specifies that the image or disk that is being used was licensed on-premises. <br><br> Possible values for Windows Server operating system are: <br><br> Windows_Client <br><br> Windows_Server <br><br> Possible values for Linux Server operating system are: <br><br> RHEL_BYOS (for RHEL) <br><br> SLES_BYOS (for SUSE) <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing) <br><br> [Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux) <br><br> Minimum api-version: 2015-06-15.- Parameters:
licenseType- the licenseType value to set.- Returns:
- the VirtualMachineScaleSetVMProfile object itself.
-
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.
-
withPriority
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.
-
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.
-
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.
-
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.
-
withBillingProfile
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.
-
scheduledEventsProfile
Get the scheduledEventsProfile property: Specifies Scheduled Event related configurations.- Returns:
- the scheduledEventsProfile value.
-
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.
-
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.
-
withUserData
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.
-
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.
-
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.
-
applicationProfile
Get the applicationProfile property: Specifies the gallery applications that should be made available to the VM/VMSS.- Returns:
- the applicationProfile value.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
validate
public void validate()Validates the instance.- Throws:
IllegalArgumentException- thrown if the instance is not valid.
-
toJson
- Specified by:
toJsonin interfacecom.azure.json.JsonSerializable<VirtualMachineScaleSetVMProfile>- Throws:
IOException
-
fromJson
public static VirtualMachineScaleSetVMProfile fromJson(com.azure.json.JsonReader jsonReader) throws IOException 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.
-