CNCF Project
Headlamp
Term
2026 Term 3 (Sep-Nov)
Program Name
Adding Dynamic Resource Allocation (DRA) to Headlamp
Program Description
Description
Headlamp is an extensible Kubernetes web UI. Dynamic Resource Allocation (DRA) lets workloads request and share devices such as GPUs, network interfaces, and accelerators. Compared with device plugins, DRA supports richer selection, device classes, claim-based allocation, and sharing.
This project will add first-class DRA support to Headlamp. It will introduce a Devices section and views for four stable resource.k8s.io/v1 kinds: cluster-scoped DeviceClass and ResourceSlice, and namespaced ResourceClaim and ResourceClaimTemplate. The UI will explain devices, selectors, pools, claims, allocations, placement, consumers, and status without relying on raw YAML.
In Kubernetes 1.36, the stable baseline includes these four APIs, prioritized request alternatives, and admin access. Stable capabilities are the project's first priority. All DRA APIs that are beta when the project begins are also in scope, including beta resource kinds and capabilities such as device status, health and binding conditions, granular status authorization, extended-resource allocation, partitionable devices, consumable capacity, and device taints. API discovery and compatibility checks will keep the stable experience working where beta features are unavailable.
The work will follow Headlamp conventions for RBAC, accessibility, and internationalization. Links and map visualizations should trace allocation from a workload or claim to its class, devices, slices, and nodes. Metrics integration should show device availability, allocation, and health when a compatible source is available. Advanced features will be prioritized with mentors and the community.
Expected outcomes
By the end of the term, the mentee is expected to have:
- Added typed classes and UI support for stable Kubernetes 1.36 DRA resources and capabilities, followed by beta resources available when the project begins.
- Added a Devices sidebar section, routes, and list and detail views for the stable resources and in-scope beta APIs.
- Presented DRA configuration, capacity, allocation, conditions, consumers, and node availability clearly.
- Added navigation among DRA resources and relevant Pods or nodes.
- Added map visualizations for DRA resource relationships and integrated available device metrics into relevant views.
- Added API discovery, RBAC handling, and unavailable states for clusters without DRA support or drivers.
- Added support for all beta DRA APIs available in the target Kubernetes release without making them dependencies of the stable experience.
- Added accessible, internationalized UI, focused tests, fixtures, and documentation.
- Published a Kubernetes blog post describing the project, its DRA workflows, and how to use the new Headlamp features.
- Collaborated through design discussions, reviews, and incremental pull requests.
Technologies
TypeScript, React, (Optional) Kubernetes CRDs and Operators
Skills same as Technologies?
Required/Desirable Skills
No response
Mentors
Kevin Hannon | @kannon92 | kehannon@redhat.com | kannon92
Heba Elayoty | @helayoty | hebaelayoty@gmail.com | helayoty
Rene Dudfield | @illume | renedudfield@microsoft.com | illume
Upstream Issue URL
kubernetes-sigs/headlamp#4831
Application Prerequisites
Coding Challenge URL
No response
Custom Prerequisite Name
No response
Custom Prerequisite Description
No response
Custom Prerequisite — File Upload
CNCF Project
Headlamp
Term
2026 Term 3 (Sep-Nov)
Program Name
Adding Dynamic Resource Allocation (DRA) to Headlamp
Program Description
Description
Headlamp is an extensible Kubernetes web UI. Dynamic Resource Allocation (DRA) lets workloads request and share devices such as GPUs, network interfaces, and accelerators. Compared with device plugins, DRA supports richer selection, device classes, claim-based allocation, and sharing.
This project will add first-class DRA support to Headlamp. It will introduce a Devices section and views for four stable
resource.k8s.io/v1kinds: cluster-scopedDeviceClassandResourceSlice, and namespacedResourceClaimandResourceClaimTemplate. The UI will explain devices, selectors, pools, claims, allocations, placement, consumers, and status without relying on raw YAML.In Kubernetes 1.36, the stable baseline includes these four APIs, prioritized request alternatives, and admin access. Stable capabilities are the project's first priority. All DRA APIs that are beta when the project begins are also in scope, including beta resource kinds and capabilities such as device status, health and binding conditions, granular status authorization, extended-resource allocation, partitionable devices, consumable capacity, and device taints. API discovery and compatibility checks will keep the stable experience working where beta features are unavailable.
The work will follow Headlamp conventions for RBAC, accessibility, and internationalization. Links and map visualizations should trace allocation from a workload or claim to its class, devices, slices, and nodes. Metrics integration should show device availability, allocation, and health when a compatible source is available. Advanced features will be prioritized with mentors and the community.
Expected outcomes
By the end of the term, the mentee is expected to have:
Technologies
TypeScript, React, (Optional) Kubernetes CRDs and Operators
Skills same as Technologies?
Required/Desirable Skills
No response
Mentors
Kevin Hannon | @kannon92 | kehannon@redhat.com | kannon92
Heba Elayoty | @helayoty | hebaelayoty@gmail.com | helayoty
Rene Dudfield | @illume | renedudfield@microsoft.com | illume
Upstream Issue URL
kubernetes-sigs/headlamp#4831
Application Prerequisites
Coding Challenge URL
No response
Custom Prerequisite Name
No response
Custom Prerequisite Description
No response
Custom Prerequisite — File Upload