Kubernetes v1.33: Neue Funktionen in DRA

Kubernetes v1.33 bringt bedeutende Fortschritte in der dynamischen Ressourcenallokation (DRA), die ursprünglich in v1.26 eingeführt wurde. Wichtige Neuerungen umfassen die Beförderung des Driver-owned

TL;DR

Kubernetes v1.33 bringt bedeutende Fortschritte in der dynamischen Ressourcenallokation (DRA), die ursprünglich in v1.26 eingeführt wurde. Wichtige Neuerungen umfassen die Beförderung des Driver-owned Resource Claim Status in die Beta-Phase sowie mehrere neue Alpha-Funktionen, die die Flexibilität und Effizienz bei der Geräteverwaltung erhöhen. Die DRA-Funktionalitäten sollen in v1.34 allgemein verfügbar gemacht werden.

Hauptinhalt

Die dynamische Ressourcenallokation (DRA) in Kubernetes hat sich seit ihrer Einführung in v1.26 erheblich weiterentwickelt. Nach einem umfassenden Redesign in v1.31 und der Beta-Einführung in v1.32 hat das DRA-Team in v1.33 mehrere neue Funktionen und Benutzererfahrungsverbesserungen implementiert. Eine der bedeutendsten Änderungen ist die Beförderung des Driver-owned Resource Claim Status in die Beta-Phase. Diese Funktion ermöglicht es Treibern, spezifische Statusdaten für jedes zugewiesene Gerät in einem Ressourcenanspruch zu melden, was besonders nützlich für die Unterstützung von Netzwerkgeräten ist.

Zusätzlich wurden mehrere neue Funktionen in die Alpha-Phase überführt. Die Funktion "Partitionable Devices" erlaubt es Treibern, mehrere überlappende logische Geräte (Partitionen) anzuzeigen und das physische Gerät dynamisch basierend auf den tatsächlich zugewiesenen Geräten neu zu konfigurieren. Dies ermöglicht eine bedarfsgerechte Partitionierung der Geräte, was die Auslastung erhöht.

Die Einführung von "Device Taints and Tolerations" ermöglicht es, Geräte zu kennzeichnen und Arbeitslasten zu tolerieren, die diese Taints berücksichtigen. Dadurch können Treiber oder Clusteradministratoren Geräte als nicht verfügbar markieren, was je nach Taint-Effekt die Zuweisung von Geräten verhindern oder die Evakuierung von Pods, die das Gerät nutzen, auslösen kann.

Die "Prioritized List" Funktion erlaubt es Nutzern, eine Liste akzeptabler Geräte für ihre Arbeitslasten anzugeben, anstatt nur einen Gerätetyp zu wählen. Der Scheduler wird versuchen, die Alternativen in der Liste in der angegebenen Reihenfolge zu erfüllen, sodass die Arbeitslast die bestmögliche Gerätekonfiguration im Cluster erhält.

Die Zugriffsverwaltung für Administratoren wurde aktualisiert, sodass nur Benutzer mit Zugriff auf einen Namespace mit dem Label resource.k8s.io/admin-access: "true" berechtigt sind, ResourceClaim- oder ResourceClaimTemplates-Objekte mit dem Feld adminAccess zu erstellen. Dies stellt sicher, dass nicht-Admin-Benutzer die Funktion nicht missbrauchen können.

Technische Details/Implikationen

Ein neuer v1beta2 API wurde hinzugefügt, um die Benutzererfahrung zu vereinfachen und die Vorbereitung auf zukünftige Funktionen zu unterstützen. Die RBAC-Regeln für DRA wurden verbessert, und es wurde Unterstützung für nahtlose Upgrades von DRA-Treibern integriert. Die Entwicklungen in v1.34 sind darauf ausgelegt, DRA allgemein verfügbar zu machen, was bedeutet, dass viele der derzeit noch in der Beta-Phase befindlichen Funktionen standardmäßig aktiviert werden.

Fazit/Ausblick

Die Fortschritte in Kubernetes v1.33, insbesondere in der DRA, zeigen eine klare Richtung hin zu einer flexibleren und effizienteren Geräteverwaltung. Mit der angestrebten allgemeinen Verfügbarkeit in v1.34 wird die Nutzung dieser Funktionen erheblich erleichtert, was für DevOps -Engineers und Cloud-Architekten von großer Bedeutung ist.