Class ScaleInPolicy


  • public final class ScaleInPolicy
    extends Object
    Describes a scale-in policy for a virtual machine scale set.
    • Constructor Detail

      • ScaleInPolicy

        public ScaleInPolicy()
    • Method Detail

      • rules

        public List<VirtualMachineScaleSetScaleInRules> rules()
        Get the rules property: The rules to be followed when scaling-in a virtual machine scale set. <br><br> Possible values are: <br><br> **Default** When a virtual machine scale set is scaled in, the scale set will first be balanced across zones if it is a zonal scale set. Then, it will be balanced across Fault Domains as far as possible. Within each Fault Domain, the virtual machines chosen for removal will be the newest ones that are not protected from scale-in. <br><br> **OldestVM** When a virtual machine scale set is being scaled-in, the oldest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the oldest virtual machines that are not protected will be chosen for removal. <br><br> **NewestVM** When a virtual machine scale set is being scaled-in, the newest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the newest virtual machines that are not protected will be chosen for removal. <br><br>.
        Returns:
        the rules value.
      • withRules

        public ScaleInPolicy withRules​(List<VirtualMachineScaleSetScaleInRules> rules)
        Set the rules property: The rules to be followed when scaling-in a virtual machine scale set. <br><br> Possible values are: <br><br> **Default** When a virtual machine scale set is scaled in, the scale set will first be balanced across zones if it is a zonal scale set. Then, it will be balanced across Fault Domains as far as possible. Within each Fault Domain, the virtual machines chosen for removal will be the newest ones that are not protected from scale-in. <br><br> **OldestVM** When a virtual machine scale set is being scaled-in, the oldest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the oldest virtual machines that are not protected will be chosen for removal. <br><br> **NewestVM** When a virtual machine scale set is being scaled-in, the newest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the newest virtual machines that are not protected will be chosen for removal. <br><br>.
        Parameters:
        rules - the rules value to set.
        Returns:
        the ScaleInPolicy object itself.
      • forceDeletion

        public Boolean forceDeletion()
        Get the forceDeletion property: This property allows you to specify if virtual machines chosen for removal have to be force deleted when a virtual machine scale set is being scaled-in.(Feature in Preview).
        Returns:
        the forceDeletion value.
      • withForceDeletion

        public ScaleInPolicy withForceDeletion​(Boolean forceDeletion)
        Set the forceDeletion property: This property allows you to specify if virtual machines chosen for removal have to be force deleted when a virtual machine scale set is being scaled-in.(Feature in Preview).
        Parameters:
        forceDeletion - the forceDeletion value to set.
        Returns:
        the ScaleInPolicy object itself.
      • validate

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