Taints in Kubernetes

In Kubernetes, a "taint" is a property applied to a node that marks the node as having certain constraints or requirements. Taints are used to repel or restrict the scheduling of pods onto specific nodes, making it possible to influence how pods are placed within a cluster. Taints are typically applied to nodes to indicate that they have special characteristics or should be used for specific workloads.

Built-in Taints:

  • node.kubernetes.io/not-ready: Node is not ready. This corresponds to the NodeCondition Ready being "False".

  • node.kubernetes.io/unreachable: Node is unreachable from the node controller. This corresponds to the NodeCondition Ready being "Unknown".

  • node.kubernetes.io/memory-pressure: Node has memory pressure.

  • node.kubernetes.io/disk-pressure: Node has disk pressure.

  • node.kubernetes.io/pid-pressure: Node has PID pressure.

  • node.kubernetes.io/network-unavailable: Node's network is unavailable.

  • node.kubernetes.io/unschedulable: Node is unschedulable.

  • node.cloudprovider.kubernetes.io/uninitialized: When the kubelet is started with "external" cloud provider, this taint is set on a node to mark it as unusable. After a controller from the cloud-controller-manager initializes this node, the kubelet removes this taint.

Last updated