In a cluster managed by Kueue, a Kubernetes Job can remain suspended while Kueue decides whether the requested resources are available. The Kubernetes Blog emphasizes that the meaningful question starts with whether Kueue admitted the Workload, not only why the Pods are pending. The Headlamp plugin brings this admission-focused investigation into a UI, allowing users to begin with the Workload and navigate through related resources such as LocalQueue, ClusterQueue, ResourceFlavor, and Cohort.
- The Headlamp path reads the Workload’s conditions (e.g., Admitted, QuotaReserved) and follows links to related queueing resources to diagnose where the bottleneck lies.
THE HEADLAMP-FIRST TROUBLESHOOTING WORKFLOW
The article outlines a step-by-step path you can follow in Headlamp to trace a pending Job through Kueue admission and beyond the Pod scheduling stage.
- Step 1: Start in Kueue → Workloads, select the namespace, and open the Workload details to read its status and conditions.
- Step 2: If Admitted=True but QuotaReserved=False, look for a reason such as Pending indicating why quota is not yet reserved.
- Step 3: If admitted but Pods are Pending, inspect the Job and Pod views and scheduler events in Headlamp.
- Step 4: Use the LocalQueue link to see the namespace-level entry point and the connected ClusterQueue.
- Step 5: Open the ClusterQueue to compare quota, reservations, usage, and policy.
- Step 6: If needed, inspect ResourceFlavor and Cohort details to understand flavor assignment or shared quota.
A SAMPLE SCENARIO: QUOTA MISMATCH BLOCKS A THREE-POD JOB
The article provides a concrete example where a ClusterQueue offers two CPUs and two Pod slots as nominal quota. The Workload requests three CPUs and three Pod slots. In this case, the QuotaReserved condition is false due to insufficient quota, and the Workload remains pending.
WHAT THIS MEANS FOR OPERATORS AND WHAT COMES NEXT
If a Workload is admitted but its Pods are still Pending, operators should examine the Job and Pod views alongside node scheduling factors. The Headlamp path is designed to reveal whether the bottleneck is quota, flavor assignment, or shared quota across a Cohort. The article also notes how to continue investigations if admission is confirmed, including checking the LocalQueue, ClusterQueue, and related resources for capacity and policy.
ALPHA LIMITS AND PRACTICAL NOTES
The 0.1.0-alpha release provides read-only views of Kueue components (Cohorts, ClusterQueues, LocalQueues, ResourceFlavors, Workloads) and does not add create, edit, stop, resume, or delete workflows. The UI depends on your Kubernetes permissions, and Headlamp complements, rather than replaces, kubectl and kueuectl for scripting or GitOps workflows. The article describes a Headlamp-first read path rather than a complete replacement for command-line tooling.
WHAT OPERATORS CAN DO NEXT
Use the Headlamp path to read admission state and resource relationships quickly, then switch to Kubernetes-native views if admitted but pods are pending to inspect scheduling events, node capacity, and volume binding. The plugin repository notes that the Headlamp UI is read-only for now and does not replace scripting or GitOps workflows.
RELATED COVERAGE
- GitHub Copilot Cloud Agent Adds Planning Before Pull Requests
- Kubernetes v1.37 introduces Node Lifecycle Conditions to standardize Node maintenance signals
- Kubernetes v1.37 GA: Storage Version Migration Enabled by Default
- Cloudflare introduces on-demand CPU and memory profiling with flamegraphs for Workers and Durable Objects
- Developer Tools articles
SOURCES
- Kubernetes Blog: Why Is My Kubernetes Job Still Pending? Tracing Kueue Admission with Headlamp Published · Primary source





