Share via


ManagedClusterPropertiesAutoScalerProfile interface

Parameters to be applied to the cluster-autoscaler when enabled

Properties

balanceSimilarNodeGroups

Detects similar node pools and balances the number of nodes between them. Valid values are 'true' and 'false'

daemonsetEvictionForEmptyNodes

DaemonSet pods will be gracefully terminated from empty nodes. If set to true, all daemonset pods on empty nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted.

daemonsetEvictionForOccupiedNodes

DaemonSet pods will be gracefully terminated from non-empty nodes. If set to true, all daemonset pods on occupied nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted.

expander

The expander to use when scaling up. If not specified, the default is 'random'. See expanders for more information.

ignoreDaemonsetsUtilization

Should CA ignore DaemonSet pods when calculating resource utilization for scaling down. If set to true, the resources used by daemonset will be taken into account when making scaling down decisions.

maxEmptyBulkDelete

The maximum number of empty nodes that can be deleted at the same time. This must be a positive integer. The default is 10.

maxGracefulTerminationSec

The maximum number of seconds the cluster autoscaler waits for pod termination when trying to scale down a node. The default is 600.

maxNodeProvisionTime

The maximum time the autoscaler waits for a node to be provisioned. The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.

maxTotalUnreadyPercentage

The maximum percentage of unready nodes in the cluster. After this percentage is exceeded, cluster autoscaler halts operations. The default is 45. The maximum is 100 and the minimum is 0.

newPodScaleUpDelay

Ignore unscheduled pods before they're a certain age. For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc).

okTotalUnreadyCount

The number of allowed unready nodes, irrespective of max-total-unready-percentage. This must be an integer. The default is 3.

scaleDownDelayAfterAdd

How long after scale up that scale down evaluation resumes. The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.

scaleDownDelayAfterDelete

How long after node deletion that scale down evaluation resumes. The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.

scaleDownDelayAfterFailure

How long after scale down failure that scale down evaluation resumes. The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.

scaleDownUnneededTime

How long a node should be unneeded before it is eligible for scale down. The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.

scaleDownUnreadyTime

How long an unready node should be unneeded before it is eligible for scale down. The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.

scaleDownUtilizationThreshold

Node utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down. The default is '0.5'.

scanInterval

How often cluster is reevaluated for scale up or down. The default is '10'. Values must be an integer number of seconds.

skipNodesWithLocalStorage

If cluster autoscaler will skip deleting nodes with pods with local storage, for example, EmptyDir or HostPath. The default is true.

skipNodesWithSystemPods

If cluster autoscaler will skip deleting nodes with pods from kube-system (except for DaemonSet or mirror pods). The default is true.

Property Details

balanceSimilarNodeGroups

Detects similar node pools and balances the number of nodes between them. Valid values are 'true' and 'false'

balanceSimilarNodeGroups?: string

Property Value

string

daemonsetEvictionForEmptyNodes

DaemonSet pods will be gracefully terminated from empty nodes. If set to true, all daemonset pods on empty nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted.

daemonsetEvictionForEmptyNodes?: boolean

Property Value

boolean

daemonsetEvictionForOccupiedNodes

DaemonSet pods will be gracefully terminated from non-empty nodes. If set to true, all daemonset pods on occupied nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted.

daemonsetEvictionForOccupiedNodes?: boolean

Property Value

boolean

expander

The expander to use when scaling up. If not specified, the default is 'random'. See expanders for more information.

expander?: string

Property Value

string

ignoreDaemonsetsUtilization

Should CA ignore DaemonSet pods when calculating resource utilization for scaling down. If set to true, the resources used by daemonset will be taken into account when making scaling down decisions.

ignoreDaemonsetsUtilization?: boolean

Property Value

boolean

maxEmptyBulkDelete

The maximum number of empty nodes that can be deleted at the same time. This must be a positive integer. The default is 10.

maxEmptyBulkDelete?: string

Property Value

string

maxGracefulTerminationSec

The maximum number of seconds the cluster autoscaler waits for pod termination when trying to scale down a node. The default is 600.

maxGracefulTerminationSec?: string

Property Value

string

maxNodeProvisionTime

The maximum time the autoscaler waits for a node to be provisioned. The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.

maxNodeProvisionTime?: string

Property Value

string

maxTotalUnreadyPercentage

The maximum percentage of unready nodes in the cluster. After this percentage is exceeded, cluster autoscaler halts operations. The default is 45. The maximum is 100 and the minimum is 0.

maxTotalUnreadyPercentage?: string

Property Value

string

newPodScaleUpDelay

Ignore unscheduled pods before they're a certain age. For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc).

newPodScaleUpDelay?: string

Property Value

string

okTotalUnreadyCount

The number of allowed unready nodes, irrespective of max-total-unready-percentage. This must be an integer. The default is 3.

okTotalUnreadyCount?: string

Property Value

string

scaleDownDelayAfterAdd

How long after scale up that scale down evaluation resumes. The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.

scaleDownDelayAfterAdd?: string

Property Value

string

scaleDownDelayAfterDelete

How long after node deletion that scale down evaluation resumes. The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.

scaleDownDelayAfterDelete?: string

Property Value

string

scaleDownDelayAfterFailure

How long after scale down failure that scale down evaluation resumes. The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.

scaleDownDelayAfterFailure?: string

Property Value

string

scaleDownUnneededTime

How long a node should be unneeded before it is eligible for scale down. The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.

scaleDownUnneededTime?: string

Property Value

string

scaleDownUnreadyTime

How long an unready node should be unneeded before it is eligible for scale down. The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.

scaleDownUnreadyTime?: string

Property Value

string

scaleDownUtilizationThreshold

Node utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down. The default is '0.5'.

scaleDownUtilizationThreshold?: string

Property Value

string

scanInterval

How often cluster is reevaluated for scale up or down. The default is '10'. Values must be an integer number of seconds.

scanInterval?: string

Property Value

string

skipNodesWithLocalStorage

If cluster autoscaler will skip deleting nodes with pods with local storage, for example, EmptyDir or HostPath. The default is true.

skipNodesWithLocalStorage?: string

Property Value

string

skipNodesWithSystemPods

If cluster autoscaler will skip deleting nodes with pods from kube-system (except for DaemonSet or mirror pods). The default is true.

skipNodesWithSystemPods?: string

Property Value

string