TL;DR
The taint manager in Kubernetes has been separated into two components: a taint eviction controller and a node lifecycle controller. This change improves code clarity and eases future enhancements or custom implementations.
What happened
Kubernetes v1.34 introduces a stable version of the decoupled taint management feature, moving from beta to GA status. The new setup separates the responsibility of managing nodes' health indicators through NoExecute taints and evicting pods into two distinct controllers.
Why it matters for ops
This update enhances system maintenance by improving code organization and making it easier for operators to fine-tune or extend the behavior of both components independently.
Action items
- Review the Kubernetes Enhancement Proposal (KEP) for detailed information on this change.
- Consider enabling the SeparateTaintEvictionController feature gate in production environments for enhanced stability and flexibility.
- Monitor community contributions and updates for further improvements to taint management.
Source link
https://kubernetes.io/blog/2025/09/15/kubernetes-v1-34-decoupled-taint-manager-is-now-stable/