From 93409bb6c0310a3d5edc1b9d4629c5e84f61b0a2 Mon Sep 17 00:00:00 2001 From: Qiming Teng Date: Fri, 18 Aug 2017 10:47:22 +0800 Subject: [PATCH] Improve daemonset doc for more taints tolerated --- .../concepts/workloads/controllers/daemonset.md | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/docs/concepts/workloads/controllers/daemonset.md b/docs/concepts/workloads/controllers/daemonset.md index 3e06d892c6..54e85d28aa 100644 --- a/docs/concepts/workloads/controllers/daemonset.md +++ b/docs/concepts/workloads/controllers/daemonset.md @@ -98,9 +98,20 @@ when the pod is created, so it is ignored by the scheduler). Therefore: - DaemonSet controller can make pods even when the scheduler has not been started, which can help cluster bootstrap. -Daemon pods do respect [taints and tolerations](/docs/concepts/configuration/assign-pod-node/#taints-and-tolerations-beta-feature), but they are -created with `NoExecute` tolerations for the `node.alpha.kubernetes.io/notReady` and `node.alpha.kubernetes.io/unreachable` -taints with no `tolerationSeconds`. This ensures that when the `TaintBasedEvictions` alpha feature is enabled, +Daemon pods do respect [taints and tolerations](/docs/concepts/configuration/assign-pod-node/#taints-and-tolerations-beta-feature), +but they are created with `NoExecute` tolerations for the following taints with no `tolerationSeconds`: + + - `node.alpha.kubernetes.io/notReady` + - `node.alpha.kubernetes.io/unreachable` + - `node.alpha.kubernetes.io/memoryPressure` + - `node.alpha.kubernetes.io/diskPressure` + +When the support to critical pods is enabled and the pods in a DaemonSet are +labelled as critical, the Daemon pods are created with an additional +`NoExecute` toleration for the `node.alpha.kubernetes.io/outOfDisk` taint with +no `tolerationSeconds`. + +This ensures that when the `TaintBasedEvictions` alpha feature is enabled, they will not be evicted when there are node problems such as a network partition. (When the `TaintBasedEvictions` feature is not enabled, they are also not evicted in these scenarios, but due to hard-coded behavior of the NodeController rather than due to tolerations).