Kubernetes often faces complexities in node readiness beyond the standard "Ready" status. The Node Readiness Controller (NRC) addresses this by providing a declarative system for managing node taints. The NRC ensures workloads only schedule on nodes meeting specific infrastructure requirements using custom health signals. It fills a critical gap, allowing operators to define custom scheduling gates tailored to particular node groups. This offers custom readiness definitions, automated taint management, and declarative node bootstrapping capabilities. The controller uses the NodeReadinessRule (NRR) API to define these gates, supporting both continuous and bootstrap-only enforcement modes. It reacts to Node Conditions, seamlessly integrating with existing tools such as Node Problem Detector. Dry run mode allows operators to simulate impact before applying actual taints, enhancing safety. An example demonstrates how the NRC ensures CNI agent functionality with a custom condition and taint. The project is actively seeking community feedback and encourages contributions via its GitHub, Slack, and documentation channels. The NRC aims to refine the node readiness process and advance Kubernetes' scheduling capabilities. The upcoming KubeCon Europe 2026 will feature a maintainer track session focused on the topic.
kubernetes.io
kubernetes.io
