In Branchen, in denen Systeme äußerst zuverlässig laufen müssen und strenge Leistungsanforderungen bestehen, wie beispielsweise in der Telekommunikation, Hochleistungs- oder KI-Computing, benötigen containerisierte Anwendungen oft spezifische Betriebssystemkonfigurationen oder Hardware. Es ist gängige Praxis, bestimmte Versionen des Kernels, dessen Konfiguration, Gerätetreiber oder Systemkomponenten zu verlangen.

Trotz der Existenz der Open Container Initiative (OCI), einer Gemeinschaft, die Standards und Spezifikationen für Container-Images definiert, gab es eine Lücke in der Ausdrucksweise solcher Kompatibilitätsanforderungen. Die Notwendigkeit, dieses Problem anzugehen, führte zu unterschiedlichen Vorschlägen und letztlich zu einer Implementierung im Kubernetes-Projekt Node Feature Discovery (NFD).

NFD ist ein Open-Source-Kubernetes-Projekt, das automatisch Hardware- und Systemmerkmale von Cluster-Knoten erkennt und meldet. Diese Informationen helfen Benutzern, Workloads auf Knoten zu planen, die spezifische Systemanforderungen erfüllen, was besonders nützlich für Anwendungen mit strengen Hardware- oder Betriebssystemabhängigkeiten ist.

Die Notwendigkeit einer Spezifikation zur Image-Kompatibilität

Abhängigkeiten zwischen Containern und Host-OS

Ein Container-Image wird auf einem Basis-Image erstellt, das eine minimale Laufzeitumgebung bietet, oft ein abgespecktes Linux-Userland, das völlig leer oder distroless ist. Wenn eine Anwendung bestimmte Funktionen vom Host-OS benötigt, treten Kompatibilitätsprobleme auf. Diese Abhängigkeiten können sich auf verschiedene Weise manifestieren:

  • Treiber: Host-Treiber-Versionen müssen mit dem unterstützten Bereich einer Bibliotheksversion innerhalb des Containers übereinstimmen, um Kompatibilitätsprobleme zu vermeiden. Beispiele sind GPUs und Netzwerktreiber.
  • Bibliotheken oder Software: Der Container muss mit einer bestimmten Version oder einem Versionsbereich für eine Bibliothek oder Software geliefert werden, um optimal in der Umgebung zu funktionieren. Beispiele aus dem Hochleistungsrechnen sind MPI, EFA oder Infiniband.
  • Kernel-Module oder -Funktionen: Bestimmte Kernel-Funktionen oder -Module müssen vorhanden sein. Beispiele sind die Unterstützung von schreibgeschützten großen Seitenfehlern oder die Anwesenheit von VFIO.
  • Und mehr…

Während Container in Kubernetes die wahrscheinlichste Abstraktionseinheit für diese Bedürfnisse darstellen, kann die Definition von Kompatibilität weitergehen und andere Container-Technologien wie Singularity sowie andere OCI-Artefakte wie Binärdateien aus einem Spack-Binärcache einschließen.

Herausforderungen in Multi-Cloud- und Hybrid-Cloud-Umgebungen

Containerisierte Anwendungen werden über verschiedene Kubernetes-Distributionen und Cloud-Anbieter hinweg bereitgestellt, wobei unterschiedliche Host-Betriebssysteme Kompatibilitätsherausforderungen mit sich bringen. Oft müssen diese vor der Bereitstellung von Workloads vorkonfiguriert oder sind nicht veränderbar.

Verschiedene Cloud-Anbieter bieten unterschiedliche Betriebssysteme wie:

  • RHCOS/RHEL
  • Photon OS
  • Amazon Linux 2
  • Container-Optimized OS
  • Azure Linux OS
  • Und mehr…

Jedes OS kommt mit einzigartigen Kernel-Versionen, Konfigurationen und Treibern, was die Kompatibilität für Anwendungen, die spezifische Funktionen erfordern, zu einer nicht trivialen Angelegenheit macht. Es muss möglich sein, schnell zu beurteilen, ob ein Container geeignet ist, um in einer bestimmten Umgebung zu laufen.

Die neue Spezifikation zur Kompatibilität von Container-Images kann hier entscheidend helfen. Durch die Verbesserung der Transparenz und der Möglichkeiten zur Validierung von Systemanforderungen wird die Zuverlässigkeit von Anwendungen in Cloud-Umgebungen erheblich gesteigert.

Bei ayedo unterstützen wir Unternehmen dabei, diese Herausforderungen zu meistern und Kubernetes effizient zu nutzen, um die Vorteile einer containerisierten Architektur voll auszuschöpfen.


Quelle: Kubernetes Blog

ayedo Alien Kubernetes Hat

Hosten Sie Ihre Apps bei ayedo

Profitieren Sie von skalierbarem App Hosting in Kubernetes, hochverfügbarem Ingress Loadbalancing und erstklassigem Support durch unser Plattform Team. Mit der ayedo Cloud können Sie sich wieder auf das konzentrieren, was Sie am besten können: Software entwickeln.

Jetzt ausprobieren →

Ähnliche Inhalte

Alle Blogs →



Katrin Peter · 17.06.2025 · ⏳ 3 Minuten

Kubernetes kann Freiheit - wenn man es richtig macht.

Lesen →

Kubernetes kann Freiheit - wenn man es richtig macht.
Katrin Peter · 13.06.2025 · ⏳ 3 Minuten

Container nativ auf dem Mac: Apple macht ernst

Lesen →

Container nativ auf dem Mac: Apple macht ernst
ayedo Redaktion · 08.06.2025 · ⏳ 3 Minuten

Neue Wege im KI-Management: Die Gateway API Inference Extension

Moderne generative KI- und große Sprachmodelle (LLMs) stellen Kubernetes vor einzigartige Herausforderungen im Datenverkehrsmanagement. Im Gegensatz zu typischen kurzlebigen, zustandslosen Webanfragen …

Lesen →

Neue Wege im KI-Management: Die Gateway API Inference Extension
ayedo Redaktion · 06.06.2025 · ⏳ 2 Minuten

Wie Sie sicherstellen, dass Ihr Sidecar-Container zuerst startet

Einführung in die Verwaltung von Sidecar-Containern in Kubernetes

In der Welt von Kubernetes sind Sidecar-Container nützliche Helfer, die Funktionen erweitern oder zusätzliche Aufgaben für die …

Lesen →

Wie Sie sicherstellen, dass Ihr Sidecar-Container zuerst startet
ayedo Redaktion · 05.06.2025 · ⏳ 2 Minuten

Gateway API v1.3.0: Neue Funktionen für flexibles Request Mirroring und mehr!

Wir freuen uns, die allgemeine Verfügbarkeit der Gateway API v1.3.0 bekanntzugeben! Diese Version wurde am 24. April 2025 veröffentlicht und bringt spannende neue Funktionen mit sich.

Was …

Lesen →

Gateway API v1.3.0: Neue Funktionen für flexibles Request Mirroring und mehr!

Interessiert an weiteren Inhalten? Hier gehts zu allen Blogs →


Noch Fragen? Melden Sie sich!

Unsere DevOps-Experten antworten in der Regel innerhalb einer Stunde.

Zu Gen-Z für E-Mail? Einfach mal Discord versuchen. Unter +49 800 000 3706 können Sie unter Angabe Ihrer Kontaktdaten auch einen Rückruf vereinbaren. Bitte beachten Sie, dass es keine Möglichkeit gibt, uns telefonisch direkt zu erreichen. Bitte gar nicht erst versuchen. Sollten Sie dennoch Interesse an synchroner Verfügbarkeit via Telefon haben, empfehlen wir Ihnen unseren Priority Support.