cncf / cncf/mentoring

[CNCF LFX Proposal] Kubernetes: Headlamp Project for Node-Readiness-Controller Part2

Open
#2,024 17 comments 0 reactions 0 assignees View on GitHub
2026 CNCF Approved Exported lfx mentorship Maintainer/Contribex Approved Mentors Confirmed Proposal Term 3: Sept-Nov Validation Passed
Dominant language
JavaScript
Stars
3.1k
Forks
816
Avg merge
12h 32m
Merged PRs (30d)
8

Description

### CNCF Project

Kubernetes

### Term

2026 Term 3 (Sep-Nov)

### Program Name

Headlamp Project for Node-Readiness-Controller

### Program Description

## Description

As Kubernetes clusters grow, understanding why a node is not "Ready for workloads" (and which readiness rule, condition, or taint is holding it back) becomes complex. The node-readiness-controller (NRC) manages node readiness through NodeReadinessRule objects that gate scheduling with taints until node-level conditions are met. Today, this state is visible only through kubectl output, controller logs, and Prometheus metrics with a Grafana dashboard.

This project delivers a plugin for [Headlamp](https://headlamp.dev/) that surfaces NRC state directly in the dashboard where users can visualize the readiness rules, per-node evaluation status, gating taints, and failure reasons in their cluster. This is a continuation of the Term 2 observability project, which delivered the metrics foundation and Grafana dashboard.

## Expected Outcomes

A functional, published Headlamp plugin for NRC, including:
- Cluster-level view: all NodeReadinessRule objects and their impact: nodes matched / help / bootstrap-completed per rule (derived from node taints) and rule health.
- Node-level detail view: which rules apply to a node, per-condition status with failure reasons, current NRC-managed taints, related Events (TaintAdded/TaintRemoved/ TaintAdopted/BootstrapCompleted), and a unified lifecycle-conditions panel showing NRC custom conditions alongside where the cluster has them.

### Technologies

TypeScript / React, Go, Kubernetes, Prometheus, LLM/AI fluency

### Skills same as Technologies?

- [x] Yes, the required skills are the same as the technologies listed above.

### Required/Desirable Skills

_No response_

### Mentors

Anurag Pathak | @AnuragThePathak | contact@anuragthepathak.com | anuragpathak
Ajay Sundar Karuppasamy | @ajaysundark | ajaysundar.k@gmail.com | ajaysundark
Rene Dudfield | @illume | renedudfield@microsoft.com | illume

### Upstream Issue URL

https://github.com/kubernetes-sigs/node-readiness-controller/issues/327

### Application Prerequisites

- [x] Resume
- [x] Cover Letter
- [ ] School Enrollment Verification
- [ ] Participation Permission from school or employer
- [ ] Coding Challenge
- [x] Custom Prerequisite (fill in details below)

### Coding Challenge URL

_No response_

### Custom Prerequisite Name

Availability stmt

### Custom Prerequisite Description

Please confirm LFX Term is a full-time commitment (ref: https://docs.linuxfoundation.org/lfx/mentorship/mentee-guide/introduction#full-time-program). Read the LFX requirements and mention explicit weekly hours that can be committed in your statement. Also, timezone and any competing commitments (courses, exams, jobs) during the term with dates.

### Custom Prerequisite — File Upload

- [x] Yes — completion of this task requires the mentee to submit a file.

---
**LFX program:** [CNCF - Kubernetes: Headlamp Project for Node-Readiness-Controller (2026 Term 3)](https://mentorship.lfx.linuxfoundation.org/project/00419a67-c8d8-4c02-af7c-b3e72b3596bd)

Contributor guide

Open the contributing guide

Research direction

Start with upstream issue #327 in node-readiness-controller and review the existing metrics and Grafana dashboard described here before planning the Headlamp plugin. Done means a published plugin with cluster-level NodeReadinessRule views and node-level rule, condition, taint, Event, and lifecycle-condition details.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes, prometheus, react, typescript
Domain
devops, frontend, observability
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.