Skip to content

Commit

Permalink
Use new taint key in design doc
Browse files Browse the repository at this point in the history
  • Loading branch information
Harry Zhang committed Oct 19, 2017
1 parent cfddaf9 commit c2cc0d5
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -18,20 +18,20 @@ In addition to this, with taint-based-eviction, the Node Controller already tain
| ConditionType | Condition Status |Effect | Key |
| ------------------ | ------------------ | ------------ | -------- |
|Ready |True | - | |
| |False | NoExecute | node.kubernetes.io/notReady |
| |False | NoExecute | node.kubernetes.io/not-ready |
| |Unknown | NoExecute | node.kubernetes.io/unreachable |
|OutOfDisk |True | NoSchedule | node.kubernetes.io/outOfDisk |
|OutOfDisk |True | NoSchedule | node.kubernetes.io/out-of-disk |
| |False | - | |
| |Unknown | - | |
|MemoryPressure |True | NoSchedule | node.kubernetes.io/memoryPressure |
|MemoryPressure |True | NoSchedule | node.kubernetes.io/memory-pressure |
| |False | - | |
| |Unknown | - | |
|DiskPressure |True | NoSchedule | node.kubernetes.io/diskPressure |
|DiskPressure |True | NoSchedule | node.kubernetes.io/disk-pressure |
| |False | - | |
| |Unknown | - | |
|NetworkUnavailable |True | NoSchedule | node.kubernetes.io/networkUnavailable |
|NetworkUnavailable |True | NoSchedule | node.kubernetes.io/network-unavailable |
| |False | - | |
| |Unknown | - | |

For example, if a CNI network is not detected on the node (e.g. a network is unavailable), the Node Controller will taint the node with `node.kubernetes.io/networkUnavailable=:NoSchedule`. This will then allow users to add a toleration to their `PodSpec`, ensuring that the pod can be scheduled to this node if necessary. If the kubelet did not update the node’s status after a grace period, the Node Controller will only taint the node with `node.kubernetes.io/unreachable`; it will not taint the node with any unknown condition.
For example, if a CNI network is not detected on the node (e.g. a network is unavailable), the Node Controller will taint the node with `node.kubernetes.io/network-unavailable=:NoSchedule`. This will then allow users to add a toleration to their `PodSpec`, ensuring that the pod can be scheduled to this node if necessary. If the kubelet did not update the node’s status after a grace period, the Node Controller will only taint the node with `node.kubernetes.io/unreachable`; it will not taint the node with any unknown condition.

Original file line number Diff line number Diff line change
Expand Up @@ -332,7 +332,7 @@ The term `Partitions` are used here to describe the main use cases for local sto
spec:
<snip>
nodeTolerations:
- key: node.alpha.kubernetes.io/notReady
- key: node.alpha.kubernetes.io/not-ready
operator: TolerationOpExists
tolerationSeconds: 600
- key: node.alpha.kubernetes.io/unreachable
Expand Down

0 comments on commit c2cc0d5

Please sign in to comment.