Class VirtualMachineScaleSetInner


  • public final class VirtualMachineScaleSetInner
    extends com.azure.core.management.Resource
    Describes a Virtual Machine Scale Set.
    • Constructor Detail

      • VirtualMachineScaleSetInner

        public VirtualMachineScaleSetInner()
    • Method Detail

      • sku

        public Sku sku()
        Get the sku property: The virtual machine scale set sku.
        Returns:
        the sku value.
      • withSku

        public VirtualMachineScaleSetInner withSku​(Sku sku)
        Set the sku property: The virtual machine scale set sku.
        Parameters:
        sku - the sku value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • 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.
      • withPlan

        public VirtualMachineScaleSetInner 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 VirtualMachineScaleSetInner object itself.
      • identity

        public VirtualMachineScaleSetIdentity identity()
        Get the identity property: The identity of the virtual machine scale set, if configured.
        Returns:
        the identity value.
      • withIdentity

        public VirtualMachineScaleSetInner withIdentity​(VirtualMachineScaleSetIdentity identity)
        Set the identity property: The identity of the virtual machine scale set, if configured.
        Parameters:
        identity - the identity value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • zones

        public List<String> zones()
        Get the zones property: The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set.
        Returns:
        the zones value.
      • withZones

        public VirtualMachineScaleSetInner withZones​(List<String> zones)
        Set the zones property: The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set.
        Parameters:
        zones - the zones value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • extendedLocation

        public ExtendedLocation extendedLocation()
        Get the extendedLocation property: The extended location of the Virtual Machine Scale Set.
        Returns:
        the extendedLocation value.
      • withExtendedLocation

        public VirtualMachineScaleSetInner withExtendedLocation​(ExtendedLocation extendedLocation)
        Set the extendedLocation property: The extended location of the Virtual Machine Scale Set.
        Parameters:
        extendedLocation - the extendedLocation value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • upgradePolicy

        public UpgradePolicy upgradePolicy()
        Get the upgradePolicy property: The upgrade policy.
        Returns:
        the upgradePolicy value.
      • withUpgradePolicy

        public VirtualMachineScaleSetInner withUpgradePolicy​(UpgradePolicy upgradePolicy)
        Set the upgradePolicy property: The upgrade policy.
        Parameters:
        upgradePolicy - the upgradePolicy value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • automaticRepairsPolicy

        public AutomaticRepairsPolicy automaticRepairsPolicy()
        Get the automaticRepairsPolicy property: Policy for automatic repairs.
        Returns:
        the automaticRepairsPolicy value.
      • withAutomaticRepairsPolicy

        public VirtualMachineScaleSetInner withAutomaticRepairsPolicy​(AutomaticRepairsPolicy automaticRepairsPolicy)
        Set the automaticRepairsPolicy property: Policy for automatic repairs.
        Parameters:
        automaticRepairsPolicy - the automaticRepairsPolicy value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • virtualMachineProfile

        public VirtualMachineScaleSetVMProfile virtualMachineProfile()
        Get the virtualMachineProfile property: The virtual machine profile.
        Returns:
        the virtualMachineProfile value.
      • withVirtualMachineProfile

        public VirtualMachineScaleSetInner withVirtualMachineProfile​(VirtualMachineScaleSetVMProfile virtualMachineProfile)
        Set the virtualMachineProfile property: The virtual machine profile.
        Parameters:
        virtualMachineProfile - the virtualMachineProfile value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • provisioningState

        public String provisioningState()
        Get the provisioningState property: The provisioning state, which only appears in the response.
        Returns:
        the provisioningState value.
      • overprovision

        public Boolean overprovision()
        Get the overprovision property: Specifies whether the Virtual Machine Scale Set should be overprovisioned.
        Returns:
        the overprovision value.
      • withOverprovision

        public VirtualMachineScaleSetInner withOverprovision​(Boolean overprovision)
        Set the overprovision property: Specifies whether the Virtual Machine Scale Set should be overprovisioned.
        Parameters:
        overprovision - the overprovision value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • doNotRunExtensionsOnOverprovisionedVMs

        public Boolean doNotRunExtensionsOnOverprovisionedVMs()
        Get the doNotRunExtensionsOnOverprovisionedVMs property: When Overprovision is enabled, extensions are launched only on the requested number of VMs which are finally kept. This property will hence ensure that the extensions do not run on the extra overprovisioned VMs.
        Returns:
        the doNotRunExtensionsOnOverprovisionedVMs value.
      • withDoNotRunExtensionsOnOverprovisionedVMs

        public VirtualMachineScaleSetInner withDoNotRunExtensionsOnOverprovisionedVMs​(Boolean doNotRunExtensionsOnOverprovisionedVMs)
        Set the doNotRunExtensionsOnOverprovisionedVMs property: When Overprovision is enabled, extensions are launched only on the requested number of VMs which are finally kept. This property will hence ensure that the extensions do not run on the extra overprovisioned VMs.
        Parameters:
        doNotRunExtensionsOnOverprovisionedVMs - the doNotRunExtensionsOnOverprovisionedVMs value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • uniqueId

        public String uniqueId()
        Get the uniqueId property: Specifies the ID which uniquely identifies a Virtual Machine Scale Set.
        Returns:
        the uniqueId value.
      • singlePlacementGroup

        public Boolean singlePlacementGroup()
        Get the singlePlacementGroup property: When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true.
        Returns:
        the singlePlacementGroup value.
      • withSinglePlacementGroup

        public VirtualMachineScaleSetInner withSinglePlacementGroup​(Boolean singlePlacementGroup)
        Set the singlePlacementGroup property: When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true.
        Parameters:
        singlePlacementGroup - the singlePlacementGroup value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • zoneBalance

        public Boolean zoneBalance()
        Get the zoneBalance property: Whether to force strictly even Virtual Machine distribution cross x-zones in case there is zone outage. zoneBalance property can only be set if the zones property of the scale set contains more than one zone. If there are no zones or only one zone specified, then zoneBalance property should not be set.
        Returns:
        the zoneBalance value.
      • withZoneBalance

        public VirtualMachineScaleSetInner withZoneBalance​(Boolean zoneBalance)
        Set the zoneBalance property: Whether to force strictly even Virtual Machine distribution cross x-zones in case there is zone outage. zoneBalance property can only be set if the zones property of the scale set contains more than one zone. If there are no zones or only one zone specified, then zoneBalance property should not be set.
        Parameters:
        zoneBalance - the zoneBalance value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • platformFaultDomainCount

        public Integer platformFaultDomainCount()
        Get the platformFaultDomainCount property: Fault Domain count for each placement group.
        Returns:
        the platformFaultDomainCount value.
      • withPlatformFaultDomainCount

        public VirtualMachineScaleSetInner withPlatformFaultDomainCount​(Integer platformFaultDomainCount)
        Set the platformFaultDomainCount property: Fault Domain count for each placement group.
        Parameters:
        platformFaultDomainCount - the platformFaultDomainCount value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • proximityPlacementGroup

        public com.azure.core.management.SubResource proximityPlacementGroup()
        Get the proximityPlacementGroup property: Specifies information about the proximity placement group that the virtual machine scale set should be assigned to. <br><br>Minimum api-version: 2018-04-01.
        Returns:
        the proximityPlacementGroup value.
      • withProximityPlacementGroup

        public VirtualMachineScaleSetInner withProximityPlacementGroup​(com.azure.core.management.SubResource proximityPlacementGroup)
        Set the proximityPlacementGroup property: Specifies information about the proximity placement group that the virtual machine scale set should be assigned to. <br><br>Minimum api-version: 2018-04-01.
        Parameters:
        proximityPlacementGroup - the proximityPlacementGroup value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • hostGroup

        public com.azure.core.management.SubResource hostGroup()
        Get the hostGroup property: Specifies information about the dedicated host group that the virtual machine scale set resides in. <br><br>Minimum api-version: 2020-06-01.
        Returns:
        the hostGroup value.
      • withHostGroup

        public VirtualMachineScaleSetInner withHostGroup​(com.azure.core.management.SubResource hostGroup)
        Set the hostGroup property: Specifies information about the dedicated host group that the virtual machine scale set resides in. <br><br>Minimum api-version: 2020-06-01.
        Parameters:
        hostGroup - the hostGroup value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • additionalCapabilities

        public AdditionalCapabilities additionalCapabilities()
        Get the additionalCapabilities property: Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type.
        Returns:
        the additionalCapabilities value.
      • withAdditionalCapabilities

        public VirtualMachineScaleSetInner withAdditionalCapabilities​(AdditionalCapabilities additionalCapabilities)
        Set the additionalCapabilities property: Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type.
        Parameters:
        additionalCapabilities - the additionalCapabilities value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • scaleInPolicy

        public ScaleInPolicy scaleInPolicy()
        Get the scaleInPolicy property: Specifies the policies applied when scaling in Virtual Machines in the Virtual Machine Scale Set.
        Returns:
        the scaleInPolicy value.
      • withScaleInPolicy

        public VirtualMachineScaleSetInner withScaleInPolicy​(ScaleInPolicy scaleInPolicy)
        Set the scaleInPolicy property: Specifies the policies applied when scaling in Virtual Machines in the Virtual Machine Scale Set.
        Parameters:
        scaleInPolicy - the scaleInPolicy value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • orchestrationMode

        public OrchestrationMode orchestrationMode()
        Get the orchestrationMode property: Specifies the orchestration mode for the virtual machine scale set.
        Returns:
        the orchestrationMode value.
      • withOrchestrationMode

        public VirtualMachineScaleSetInner withOrchestrationMode​(OrchestrationMode orchestrationMode)
        Set the orchestrationMode property: Specifies the orchestration mode for the virtual machine scale set.
        Parameters:
        orchestrationMode - the orchestrationMode value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • spotRestorePolicy

        public SpotRestorePolicy spotRestorePolicy()
        Get the spotRestorePolicy property: Specifies the Spot Restore properties for the virtual machine scale set.
        Returns:
        the spotRestorePolicy value.
      • withSpotRestorePolicy

        public VirtualMachineScaleSetInner withSpotRestorePolicy​(SpotRestorePolicy spotRestorePolicy)
        Set the spotRestorePolicy property: Specifies the Spot Restore properties for the virtual machine scale set.
        Parameters:
        spotRestorePolicy - the spotRestorePolicy value to set.
        Returns:
        the VirtualMachineScaleSetInner object itself.
      • timeCreated

        public OffsetDateTime timeCreated()
        Get the timeCreated property: Specifies the time at which the Virtual Machine Scale Set resource was created.<br><br>Minimum api-version: 2021-11-01.
        Returns:
        the timeCreated value.
      • validate

        public void validate()
        Validates the instance.
        Throws:
        IllegalArgumentException - thrown if the instance is not valid.