📷 "Docker HQ, San Francisco, California" by willbuckner is licensed under CC BY 2.0. To view a copy of this license, visit https://creativecommons.org/licenses/by/2.0/.
Kubernetes 1.37: Metrics API, Rootless Mode und Abschied von ipvs
Am 26. August 2026 erscheint Kubernetes 1.37 – pünktlich im Dreimonats-Rhythmus des Cloud Native Computing Forums. Der offizielle Sneak Peek vom 31. Juli zeichnet ein klares Bild: Dieser Release bringt lang erwartete Stabilisierungen, einen wichtigen Sicherheitsschub und markiert das Ende mehrerer Ära-Features. Für Platform Teams und Cluster-Betreiber gibt es einiges zu tun.
Metrics API wird nach neun Jahren Beta endlich stabil
Die wohl bedeutendste Neuerung in Kubernetes 1.37 ist die Graduierung der metrics.k8s.io-API auf General Availability (GA). Fast neun Jahre lang war diese Schnittstelle im Beta-Status – und dennoch Grundlage für essenzielle Funktionen wie den Horizontal Pod Autoscaler (HPA) und kubectl top. Die Stabilisierung bringt keine funktionalen Änderungen, sondern das lang erwartete Stabilitätsversprechen. Sowohl v1 als auch v1beta1 bleiben während der Übergangszeit nutzbar, sodass bestehende Workflows ohne Bruch migrieren können. Das zugehörige KEP 5207 definiert die API-Formalisierung.
Rootless Mode: Kubelet im User Namespace
Ein Meilenstein für die Kubernetes-Sicherheit: Der Kubelet Rootless Mode (User Namespace) erreicht in 1.37 den Beta-Status. Bislang liefen alle Node-Komponenten mit Root-Privilegien auf dem Host. Die neue Funktion erlaubt es, das Kubelet in einem Linux-User-Namespace als unprivilegierter Benutzer auszuführen – während es sich innerhalb des Namespace weiterhin wie Root verhält. Dadurch wird die laterale Bewegungsfreiheit bei einer Kompromittierung drastisch eingeschränkt. KEP 2033 (beziehungsweise der aktualisierte KEP 4960) beschreibt die genaue Architektur. Für sicherheitskritische Umgebungen – etwa nach den Vorgaben von DORA, NIS2 oder dem EU AI Act – ist dies ein entscheidender Schritt nach vorn.
SELinuxMount wird GA – mit Breaking Change
Ebenfalls auf GA hebt Kubernetes 1.37 die SELinuxMount-Funktion. Volumes werden künftig mit der Mount-Option -o context=<label> gemountet, anstatt rekursiv neu zu relabeln – allerdings nur, wenn der jeweilige CSI-Treiber dies via CSIDriver.spec.seLinuxMount: true aktiviert. Die Kehrseite: Ein einzelner Mount kann nur einen SELinux-Kontext tragen. Pods mit unterschiedlichen SELinux-Labels, die dasselbe Volume auf einem Node teilen, könnten dadurch nicht mehr starten. Wer das alte rekursive Verhalten benötigt, setzt seLinuxChangePolicy: Recursive im Pod-Spec. Für Cluster ohne SELinux ändert sich nichts.
Abschiede: ipvs, cgroup v1 und kubectl run -f
Drei Deprecations prägen den Release gleichermaßen:
- kube-proxy ipvs-Modus wird deprecated – geplant ist die Entfernung in v1.43. Der ipvs-Modus wurde in v1.8 eingeführt, um iptables-Performance-Engpässe zu lösen, konnte aber nie vollständig ohne iptables auskommen (KEP 3866). Betroffene Cluster sollten auf nftables-basiertes kube-proxy oder andere Implementierungen wie Cilium migrieren. Der aktuelle Modus lässt sich via ConfigMap prüfen.
- cgroup v1-Support wird planmäßig auslaufen. Seit v1.35 verweigert das Kubelet standardmäßig den Start auf cgroup-v1-Nodes, es sei denn, die temporäre Override-Option
failCgroupV1: falsewird gesetzt. Fortschrittliche Features wie In-Place Pod Resizing setzen cgroup v2 voraus. KEP 5573 skizziert den vollständigen Fahrplan. kubectl run --filename/-fwird deprecated – der Parameter war irreführend, dakubectl runohnehin nur aus CLI-Argumenten einen Pod generiert.
Zudem wurde ein Bug behoben, der Static Pods bislang erlaubte, Secrets oder ConfigMaps zu referenzieren – ein Verhalten, das nie vorgesehen war. Ab v1.37 wird dies strikt unterbunden; das bisherige Feature-Gate PreventStaticPodAPIReferences entfällt.
Volume Health Monitor als Alpha
Neu in den Alpha-Status kommt der Volume Health Monitor (KEP 1432). Er führt vier neue CSI-RPCs ein: ControllerListVolumeHealth und ControllerGetVolumeHealth auf Controllerseite, NodeGetVolumeHealth und NodeGetStorageHealth auf Nodeseite. Die Ergebnisse landen in PersistentVolumeClaim.status.healthStatus bzw. Pod.status.volumeHealth und CSINode.status.storageHealth. Das Fehlervokabular ist bewusst einfach und maschinenlesbar gehalten (Inaccessible, Degraded). Remediation-Controller können so erstmals automatisiert auf Storage-Probleme reagieren, ohne auf externe Dashboards angewiesen zu sein.
Fazit
Kubernetes 1.37 ist ein Release der Konsolidierung. Die Metrics-API als GA, der Rootless-Kubelet als Beta und der Volume Health Monitor als Alpha zeigen eine klare Richtung: Stabilität und Sicherheit haben Vorrang vor neuen Glanzfunktionen. Gleichzeitig zwingen die Deprecations von ipvs und cgroup v1 viele Teams zum Handeln – die Übergangsfrist ist bekannt, aber die Migration erfordert Planung. Cluster-Betreiber sollten noch vor dem Release-Tag am 26. August die aktuelle Konfiguration ihrer kube-proxy-Modi und cgroup-Version prüfen.
Quellen
🤖 Dieser Beitrag wurde KI-gestützt erstellt und redaktionell geprüft.