Class VirtualMachineScaleSetVMProfile


  • public final class VirtualMachineScaleSetVMProfile
    extends Object
    Describes a virtual machine scale set virtual machine profile.
    • Constructor Detail

      • VirtualMachineScaleSetVMProfile

        public VirtualMachineScaleSetVMProfile()
    • Method Detail

      • 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.
      • 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.
      • storageProfile

        public VirtualMachineScaleSetStorageProfile 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

        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.
      • 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

        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.
      • 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.
      • diagnosticsProfile

        public DiagnosticsProfile diagnosticsProfile()
        Get the diagnosticsProfile property: Specifies the boot diagnostic settings state. <br><br>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. <br><br>Minimum api-version: 2015-06-15.
        Parameters:
        diagnosticsProfile - the diagnosticsProfile value to set.
        Returns:
        the VirtualMachineScaleSetVMProfile object itself.
      • 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.
      • 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

        public String 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

        public VirtualMachineScaleSetVMProfile withLicenseType​(String licenseType)
        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

        public VirtualMachinePriorityTypes priority()
        Get the priority property: Specifies the priority for the virtual machines in the scale set. <br><br>Minimum api-version: 2017-10-30-preview.
        Returns:
        the priority value.
      • withPriority

        public VirtualMachineScaleSetVMProfile withPriority​(VirtualMachinePriorityTypes priority)
        Set the priority property: Specifies the priority for the virtual machines in the scale set. <br><br>Minimum api-version: 2017-10-30-preview.
        Parameters:
        priority - the priority value to set.
        Returns:
        the VirtualMachineScaleSetVMProfile object itself.
      • evictionPolicy

        public VirtualMachineEvictionPolicyTypes evictionPolicy()
        Get the evictionPolicy property: Specifies the eviction policy for the Azure Spot virtual machine and Azure Spot scale set. <br><br>For Azure Spot virtual machines, both 'Deallocate' and 'Delete' are supported and the minimum api-version is 2019-03-01. <br><br>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. <br><br>For Azure Spot virtual machines, both 'Deallocate' and 'Delete' are supported and the minimum api-version is 2019-03-01. <br><br>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

        public BillingProfile billingProfile()
        Get the billingProfile property: Specifies the billing related details of a Azure Spot VMSS. <br><br>Minimum api-version: 2019-03-01.
        Returns:
        the billingProfile value.
      • withBillingProfile

        public VirtualMachineScaleSetVMProfile withBillingProfile​(BillingProfile billingProfile)
        Set the billingProfile property: Specifies the billing related details of a Azure Spot VMSS. <br><br>Minimum api-version: 2019-03-01.
        Parameters:
        billingProfile - the billingProfile value to set.
        Returns:
        the VirtualMachineScaleSetVMProfile object itself.
      • scheduledEventsProfile

        public ScheduledEventsProfile 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

        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. <br><br>Minimum api-version: 2021-03-01.
        Returns:
        the userData value.
      • 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. <br><br>Minimum api-version: 2021-03-01.
        Parameters:
        userData - the userData value to set.
        Returns:
        the VirtualMachineScaleSetVMProfile object itself.
      • capacityReservation

        public CapacityReservationProfile capacityReservation()
        Get the capacityReservation property: Specifies the capacity reservation related details of a scale set. <br><br>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. <br><br>Minimum api-version: 2021-04-01.
        Parameters:
        capacityReservation - the capacityReservation value to set.
        Returns:
        the VirtualMachineScaleSetVMProfile object itself.
      • 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.
      • 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

        public VirtualMachineScaleSetHardwareProfile hardwareProfile()
        Get the hardwareProfile property: Specifies the hardware profile related details of a scale set. <br><br>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. <br><br>Minimum api-version: 2021-11-01.
        Parameters:
        hardwareProfile - the hardwareProfile value to set.
        Returns:
        the VirtualMachineScaleSetVMProfile object itself.
      • validate

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