Tanints and Tolerations
Node affinity is a property of pods that attracts them to a set of nodes.Taints are the opposite - they allow a node to repel a set of pods.
Taints and toleratins work togerther to ensure that pods are not scheduled onto inapporpriate nodes.One or more taints are applied to a node;this marks that the node should not accept any pods that do not tolerate the taints.Tolerations are applied to pods,and allow the pods to schedule onto nodes with matching taints.
NodeSelector保證pod肯定會調(diào)度到指定Label的Node上,taints保證別的pod不會調(diào)度到這個Node上
Concepts
Alternatively,you can use effect of PerferNoSchedule.This is a "preference" or "soft" version of NoSchedule - the system will try to avoid placing a pod that does not tolerate the taint on the node,but it is not required.
- if there is at least one un-ignored taint with effect
NoSchedulethen Kubernetes will not schedule the pod onto that node - if there is no un-ignored taint with effect
NoSchedulebut there is at least one un-ignored taint with effectPreferNoSchedulethen Kubernetes will try to not scheuld the pod onto the node - if there is at least one un-ignored taint with effect
NoExecutethen the pod will be evicted from the node,and will not be scheduled onto the node.