You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: cluster-autoscaler/FAQ.md
+38Lines changed: 38 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -32,6 +32,7 @@ this document:
32
32
*[How can I scale a node group to 0?](#how-can-i-scale-a-node-group-to-0)
33
33
*[How can I prevent Cluster Autoscaler from scaling down a particular node?](#how-can-i-prevent-cluster-autoscaler-from-scaling-down-a-particular-node)
34
34
*[How can I configure overprovisioning with Cluster Autoscaler?](#how-can-i-configure-overprovisioning-with-cluster-autoscaler)
35
+
*[How can I enable/disable eviction for a specific DaemonSet](#how-can-i-enabledisable-eviction-for-a-specific-daemonset)
35
36
*[Internals](#internals)
36
37
*[Are all of the mentioned heuristics and timings final?](#are-all-of-the-mentioned-heuristics-and-timings-final)
37
38
*[How does scale-up work?](#how-does-scale-up-work)
Note that this annotation needs to be specified on DaemonSet pods, not the
457
+
DaemonSet object itself. In order to do that for all DaemonSet pods, it is
458
+
sufficient to modify the pod spec in the DaemonSet object.
459
+
460
+
This annotation has no effect on pods that are not a part of any DaemonSet.
461
+
437
462
****************
438
463
439
464
# Internals
@@ -512,6 +537,17 @@ What happens when a non-empty node is terminated? As mentioned above, all pods s
512
537
elsewhere. Cluster Autoscaler does this by evicting them and tainting the node, so they aren't
513
538
scheduled there again.
514
539
540
+
DaemonSet pods may also be evicted. This can be configured separately for empty
541
+
(i.e. containing only DaemonSet pods) and non-empty nodes with
542
+
`--daemonset-eviction-for-empty-nodes` and
543
+
`--daemonset-eviction-for-occupied-nodes` flags, respectively. Note that the
544
+
default behavior is different on each flag: by default DaemonSet pods eviction
545
+
will happen only on occupied nodes. Individual DaemonSet pods can also
546
+
explicitly choose to be evicted (or not). See [How can I enable/disable eviction
547
+
for a specific
548
+
DaemonSet](#how-can-i-enabledisable-eviction-for-a-specific-daemonset) for more
549
+
details.
550
+
515
551
Example scenario:
516
552
517
553
Nodes A, B, C, X, Y.
@@ -690,6 +726,8 @@ The following startup parameters are supported for cluster autoscaler:
690
726
| `skip-nodes-with-system-pods` | If true cluster autoscaler will never delete nodes with pods from kube-system (except for DaemonSet or mirror pods) | true
691
727
| `skip-nodes-with-local-storage`| If true cluster autoscaler will never delete nodes with pods with local storage, e.g. EmptyDir or HostPath | true
692
728
| `min-replica-count` | Minimum number or replicas that a replica set or replication controller should have to allow their pods deletion in scale down | 0
729
+
| `daemonset-eviction-for-empty-nodes` | Whether DaemonSet pods will be gracefully terminated from empty nodes | false
730
+
| `daemonset-eviction-for-occupied-nodes` | Whether DaemonSet pods will be gracefully terminated from non-empty nodes | true
0 commit comments