kubernetes-sigs / kubernetes-sigs/node-readiness-controller

feat: NPD prober-like readiness plugin

Open
#138 3 comments 0 reactions 1 assignee Claimed by @santoshkal View on GitHub
help wanted
Dominant language
Go
Stars
163
Forks
74
Avg merge
2d 18h
Merged PRs (30d)
9

Description

Implement a Node Problem Detector (NPD) custom plugin that runs a probe (similar to kubelet probes) and returns exit code 0/1 to indicate readiness. This allows operators who are familiar with pod `readiness`/`liveness` probes to reuse that configuration style for node-level readiness reporting.

- Reuses a familiar probe model so users can express readiness checks the same way they already do for pods.
- Can be deployed as an NPD plugin (lightweight go-lang binary to give exit status as per [NPD
requirements](https://github.com/kubernetes/node-problem-detector/blob/master/docs/custom_plugin_monitor.md)).
- This can be integrated into node-readiness-controller example
(https://github.com/kubernetes-sigs/node-readiness-controller/issues/125) in the future.

Proposal:
- Add documentation and an example NPD plugin that:
- Accepts probe configuration (HTTP/TCP like semantics) similar to kubelet probes.
- Runs on the node and exits with code `0` for healthy, `1` for unhealthy.
- Emits basic logs.
- Provide example config / NPD plugin manifest to demonstrate usage.

Acceptance criteria:
- A new example `npd` plugin implementation in `examples/` or `cmd/` that demonstrates an HTTP probe and returns exit codes.
- Doc updates for showing how to configure the plugin and how it maps to node conditions or consumption by `node-readiness-controller`.
- Tests to validate the plugin behavior.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.