Dev News Daily ENDE

Kueue-Plugin für Headlamp zeigt, warum ein Kubernetes-Job noch auf Pending steht

Der Kubernetes-Blog hat am 14. Oktober 2026 eine Anleitung zum Kueue-Plugin für Headlamp veröffentlicht. Sie beantwortet eine häufige Frage in Clustern, die Kueue für Batch-Warteschlangen nutzen: warum ein Job auf Pending bleibt.

Zulassung vor Scheduling. Ausgangspunkt des Artikels ist, dass Kueue und der Kubernetes-Scheduler unterschiedliche Fragen beantworten. Kueue entscheidet, ob ein Workload jetzt starten soll – mit Blick auf Warteschlangenregeln, Kontingente, ResourceFlavors, Zulassungsprüfungen und andere wartende Workloads; erst danach verteilt der Scheduler die Pods. Ist der Workload nicht zugelassen, bleibt die Suche bei Kueue; ist er zugelassen und die Pods hängen trotzdem, geht es in Headlamps normalen Job- und Pod-Ansichten und bei den Scheduler-Events weiter.

Was das Plugin zeigt. Version 0.1.0-alpha bietet reine Leseansichten für Kueue-v1beta2-Objekte: Cohorts, ClusterQueues, LocalQueues, ResourceFlavors und Workloads. Eigene Funktionen zum Anlegen, Bearbeiten, Stoppen, Fortsetzen oder Löschen bringt es nicht mit; Headlamps übliche YAML- und Ressourcenaktionen bleiben im Rahmen der Berechtigungen verfügbar. Das Plugin prüft Berechtigungen und meldet, wenn die aktuelle Identität eine Ressource nicht lesen darf.

Kueue-Plugin für Headlamp zeigt, warum ein Kubernetes-Job noch auf Pending steht
Kueue-Plugin für Headlamp zeigt, warum ein Kubernetes-Job noch auf Pending steht — Dev News Daily

Der Weg durch die Oberfläche. Die Anleitung beginnt unter Kueue → Workloads, sucht den Workload, den Kueue für den Job angelegt hat, und liest dessen Conditions. Entscheidend sind QuotaReserved und Admitted: Admitted=True übergibt das Problem an das Scheduling; QuotaReserved=False mit einem Grund wie Pending bedeutet, dass kein Kontingent reserviert wurde, und die Meldung nennt den Grund – etwa, dass kein ResourceFlavor zugewiesen werden konnte, weil der ClusterQueue CPU-Kontingent fehlt. Der Status Inadmissible heißt, dass der Workload in die aktuelle Warteschlangen-Konfiguration nicht passt. Danach folgt der Artikel den Links zur LocalQueue, dem Einstiegspunkt im Namespace, und zur ClusterQueue dahinter, um Anforderung, Kapazität und Auslastung zu vergleichen.

Ein Detail, das man leicht übersieht. Die Workload-Seite zeigt die PodSets mit der Gesamtanforderung. Ein Job mit parallelism: 3 und einer CPU pro Pod verlangt von Kueue drei CPUs; wer nur eine Pod-Vorlage betrachtet, unterschätzt ihn. In der Alpha erscheinen Owner-Referenzen nur als Text, nicht als Links; zum Auffinden des Workloads empfiehlt der Artikel den Namespace-Filter und die Tabellensuche.

Voraussetzungen laut Artikel: ein Cluster mit Kueue, eine Headlamp-Installation, das Plugin 0.1.0-alpha und eine Identität, die die Kueue-Ressourcen lesen darf.

Quelle: Kubernetes Blog, „Why Is My Kubernetes Job Still Pending? Tracing Kueue Admission with Headlamp“ — https://kubernetes.io/blog/2026/10/14/tracing-kueue-admission-with-headlamp/

Geschrieben von Victoria Shinder.