Kubernetes ergänzt Metadaten zur Bildkompatibilität über Node Feature Discovery
Eine neue Spezifikation ermöglicht es Container-Images, Anforderungen an das Host-Betriebssystem und die Hardware zu deklarieren. Dies erlaubt eine automatisierte Validierung vor der Planung in Kubernetes-Clustern.
Automatisch aus dem englischen Original übersetzt.
In einem Beitrag auf dem Kubernetes Blog im Juni 2025 beschrieben Ingenieure von Huawei und dem Lawrence Livermore National Laboratory eine neue Methode zur Handhabung der Container-Kompatibilität. Der Vorschlag befasst sich damit, wie spezialisierte Anwendungen spezifische Anforderungen an das Host-Betriebssystem oder die Hardware direkt innerhalb ihrer Image-Metadaten deklarieren können. Dieser Ansatz nutzt das bestehende Projekt Node Feature Discovery, um die Lücke zwischen den Anforderungen der Container und den Fähigkeiten der Cluster-Knoten zu schließen.
Was passiert ist
Containerisierte Anwendungen in Bereichen wie Telekommunikation, Hochleistungsrechnen (HPC) und KI sind oft von präzisen Host-Konfigurationen abhängig. Diese Abhängigkeiten können bestimmte Kernel-Versionen, Gerätetreiber oder Systembibliotheken umfassen, die nicht Teil des Standard-Container-Images sind. Während die Open Container Initiative Standards für Image-Formate bereitstellt, fehlte ihr bisher eine einheitliche Möglichkeit, diese Kompatibilitätsanforderungen auf Host-Ebene auszudrücken. Diese Lücke zwang Teams dazu, sich auf manuelle Vorabkonfigurationen oder unveränderliche Infrastruktursetups zu verlassen, die in Multi-Cloud-Umgebungen schwer zu verwalten sind.
Um dieses Problem zu lösen, schlugen die Autoren eine Spezifikation für Metadaten zur Bildkompatibilität vor. Diese Spezifikation ermöglicht es Autoren von Containern genau zu definieren, welche Host-Funktionen ihre Anwendung benötigt. Der Vorschlag wurde im Rahmen des Kubernetes-Projekts Node Feature Discovery (NFD) umgesetzt. NFD ist ein Open-Source-Tool, das Hardware- und Software-Funktionen von Cluster-Knoten automatisch erkennt und meldet. Durch die Integration der Kompatibilitätsmetadaten mit NFD können Benutzer Workloads nun nur noch auf Knoten planen, die die strengen Systemanforderungen erfüllen, die durch das Container-Image definiert werden.
Die Implementierung unterstützt verschiedene Containertechnologien über Kubernetes hinaus, einschließlich Singularity und anderer OCI-Artefakte. Ziel ist es, Kompatibilitätsanforderungen auffindbar und programmierbar zu machen. Das bedeutet, dass das System die Eignung automatisch validieren kann, bevor die Bereitstellung beginnt, anstatt zu raten, ob ein Knoten einen bestimmten Workload ausführen kann. Dies reduziert das Risiko von Laufzeitfehlern, die durch fehlende Treiber oder inkompatible Kernel-Module verursacht werden.
Wie es funktioniert
Der Kernmechanismus beruht darauf, ein strukturiertes Kompatibilitätsartefakt einem Container-Image in der Registry anzuhängen. Dieses Artefakt nutzt die OCI-Referrers-API, um die Metadaten mit dem spezifischen Bild zu verknüpfen, das sie beschreiben. Die Metadaten selbst sind eine YAML-Datei, die erforderliche „Node Feature Groups“ auflistet. Diese Gruppen definieren Regeln basierend auf Funktionen, die NFD erkennen kann, wie z. B. geladene Kernel-Module, CPU-Modelle oder PCI-Geräte.

Wenn ein Benutzer ein Image bereitstellen möchte, ruft ein Client-Tool das Kompatibilitätsartefakt aus der Registry ab. Anschließend vergleicht es die in dem Artefakt aufgeführten Anforderungen mit den tatsächlichen Funktionen, die vom Zielknoten gemeldet werden. Wenn der Knoten alle angegebenen Regeln erfüllt, besteht die Validierung. Dieser Prozess kann innerhalb oder außerhalb eines Kubernetes-Clusters stattfinden, was Flexibilität für Hybrid-Cloud-Szenarien bietet. Das System verwendet Match-Expressions, um die Existenz bestimmter Funktionen zu prüfen oder zu verifizieren, dass Werte innerhalb eines zulässigen Bereichs liegen.
Wichtige Details
- Die Spezifikation wurde am 25. Juni 2025 von Chaoyi Huang, Marcin Franczyk und Vanessa Sochat veröffentlicht.
- Sie integriert sich in Kubernetes Node Feature Discovery (NFD), um Container-Anforderungen mit den Fähigkeiten der Knoten abzugleichen.
- Kompatibilitätsmetadaten werden als OCI-Artefakt gespeichert und unter Verwendung des Tools
orasan Images angehängt. - Das Schema umfasst Felder für Version, Kompatibilitäten, Regeln, Gewicht, Tag und Beschreibung.
- Die Validierung kann vor der Planung mit dem Befehl
nfd compat validate-nodedurchgeführt werden. - Der Ansatz unterstützt diverse Umgebungen, darunter RHCOS, Photon OS, Amazon Linux 2 und Azure Linux OS.
Warum das wichtig ist
Für Ingenieure, die Produkte in regulierten oder leistungsintensiven Branchen entwickeln, reduziert diese Änderung die betriebliche Reibung. Zuvor erforderte die Sicherstellung, dass ein Container auf einem bestimmten Knoten laufen konnte, tiefgreifendes Wissen über die zugrunde liegende Infrastruktur oder extensive Tests. Mit expliziten Kompatibilitätsmetadaten kann die Bereitstellungspipeline ungeeignete Knoten automatisch ablehnen. Dies verhindert kostspielige Laufzeitfehler und stellt sicher, dass Anwendungen mit strengen Hardware-Abhängigkeiten, wie solche, die GPUs oder Infiniband nutzen, auf geeigneter Infrastruktur ausgeführt werden.
Diese Entwicklung vereinfacht auch Multi-Cloud- und Hybrid-Cloud-Strategien. Verschiedene Cloud-Anbieter verwenden unterschiedliche Basis-Betriebssysteme, jedes mit einzigartigen Kernel-Konfigurationen und Treiber-Sets. Indem Anforderungen standardisiert definiert werden, können Teams Code einmal schreiben und überall bereitstellen, vorausgesetzt, die Zielknoten stellen die erforderlichen Funktionen über NFD bereit. Diese Portabilität ist entscheidend für Organisationen, die Vendor-Lock-in vermeiden müssen, während sie gleichzeitig hohe Zuverlässigkeit gewährleisten.
Darüber hinaus legt dies den Grundstein für intelligenteres Scheduling in der Zukunft. Wenn das Ökosystem diese Standards annimmt, könnten Scheduler Knoten automatisch konfigurieren oder optimale Hardware basierend auf dem deklarierten Kompatibilitätsprofil auswählen. Dies bringt die Branche näher an vollständig automatisierte, selbstheilende Infrastrukturen heran, bei denen die Platzierung von Workloads durch präzise technische Einschränkungen gesteuert wird, anstatt durch breite Labels.
Was Sie tun können
- Erkunden Sie die Dokumentation zum Node Feature Discovery-Projekt, um zu verstehen, wie es Hardware- und Software-Funktionen erkennt.
- Verwenden Sie das Tool
oras, um Kompatibilitätsartefakte Ihren Container-Images in OCI-konformen Registries hinzuzufügen. - Definieren Sie Kompatibilitätsregeln im YAML-Format und geben Sie dabei erforderliche Kernel-Module, CPU-Anbieter oder PCI-Geräte an.
- Testen Sie das Client-Tool
nfd compat validate-node, um zu prüfen, ob Ihre aktuellen Knoten die Anforderungen Ihrer Images erfüllen. - Treten Sie der Kubernetes Node Feature Discovery Community bei, um zur laufenden Entwicklung der Image Compatibility API beizutragen.
- Überprüfen Sie Ihre bestehenden containerisierten Anwendungen, um versteckte Abhängigkeiten vom Host-Betriebssystem zu identifizieren, die von dieser Spezifikation profitieren könnten.


