Startseite
Themen
Was ist Containerorchestrierung?
Containerorchestrierung automatisiert und vereinfacht die Einrichtung, Bereitstellung und Verwaltung von containerisierten Anwendungen.
Kubernetes ist heute die beliebteste Plattform zur Containerorchestrierung. Die meisten führenden Public-Cloud-Provider – darunter Amazon Web Services (AWS), Google Cloud Platform, IBM Cloud® und Microsoft Azure – bieten verwaltete Kubernetes-Services an. Weitere Tools zur Containerorchestrierung sind Docker Swarm und Apache Mesos.
Verbinden und integrieren Sie Ihre Systeme, um Ihre Infrastruktur für KI vorzubereiten.
Container sind schlanke, ausführbare Anwendungskomponenten, die den Anwendungsquellcode mit allen Betriebssystembibliotheken und Abhängigkeiten kombinieren, die für die Ausführung des Codes in der Umgebung erforderlich sind.
Die Möglichkeit, Container zu erstellen, existiert schon seit Jahrzehnten, wurde aber 2008 allgemein verfügbar, als Linux Container-Funktionalität in seinen Kernel integrierte. Und dann wurde es mit der Einführung der Open-Source-Containerisierungsplattform Docker im Jahr 2013 weit verbreitet. (Docker ist so beliebt, dass „Docker-Container“ und „Container“ oft synonym verwendet werden.)
Da sie kleiner, ressourceneffizienter und portierbarer als virtuelle Maschinen (VMs) sind, wurden Container – genauer gesagt containerisierte Microservices oder serverlose Funktionen – zu den De-facto-Recheneinheiten moderner cloudnativer Anwendungen. (Weitere Informationen zu den Vorteilen von Containern finden Sie in der nachstehenden interaktiven Datenvisualisierung)
In kleiner Anzahl können Container problemlos manuell bereitgestellt und verwaltet werden, Doch in den meisten Organisationen wächst die Anzahl containerisierter Anwendungen schnell und ihre Verwaltung erfolgt in großem Maßstab. Insbesondere als Teil einer kontinuierlichen Integration/kontinuierlichen Bereitstellung (CI/CD) oder einer DevOps- Pipeline ist dies ohne Automatisierung nicht möglich.
Hier kommt die Containerorchestrierung ins Spiel, die die Betriebsaufgaben rund um die Bereitstellung und Ausführung von containerisierten Anwendungen und Services automatisiert. Laut einer aktuellen IBM Studie berichten 70 % der Entwickler, die Container verwenden, dass sie eine Lösung zur Containerorchestrierung verwenden, und 70 % davon berichten, dass sie einen vollständig verwalteten (cloudverwalteten) Service zur Containerorchestrierung in ihrem Unternehmen nutzen.
Es gibt zwar Unterschiede in den Methoden und Funktionen der verschiedenen Tools, aber die Containerorchestrierung ist im Wesentlichen ein dreistufiger Prozess (oder Zyklus, wenn er Teil einer iterativen agilen oder DevOps-Pipeline ist).
Die meisten Container-Orchestrierungstools unterstützen ein deklaratives Konfigurationsmodell: Ein Entwickler schreibt eine Konfigurationsdatei (je nach Tool in YAML oder JSON), die einen gewünschten Konfigurationszustand definiert. Das Orchestrierungstool, das die Datei ausführt, verwendet seine eigene Intelligenz, um diesen Zustand zu erreichen. Normalerweise hat eine Konfigurationsdatei die folgenden Aufgaben:
Das Orchestrierungstool plant die Bereitstellung der Container (und Replikate der Container aus Gründen der Resilienz) auf einem Host. Es wählt den besten Host basierend auf der verfügbaren CPU-Kapazität, dem Speicher oder anderen Anforderungen oder Einschränkungen aus, die in der Konfigurationsdatei angegeben sind.
Sobald die Container bereitgestellt sind, verwaltet das Orchestrierungstool den Lebenszyklus der containerisierten Anwendung basierend auf der Container-Definitionsdatei (häufig eine Docker-Datei). Dies umfasst:
Der Hauptvorteil der Containerorchestrierung liegt wahrscheinlich in der Automatisierung – und das nicht nur, weil sie den Aufwand und die Komplexität der Verwaltung eines großen containerisierten Anwendungsbestands erheblich reduziert. Durch die Automatisierung der Abläufe unterstützt die Orchestrierung einen agilen oder DevOps-Ansatz, mit dem Teams in schnellen, iterativen Zyklen neue Funktionen und Funktionalitäten schneller entwickeln und bereitstellen können.
Darüber hinaus kann die Intelligenz eines Orchestrierungstools viele der inhärenten Vorteile der Containerisierung verbessern oder erweitern. So maximiert beispielsweise die automatische Hostauswahl und die Ressourcenzuordnung auf der Grundlage einer deklarativen Konfiguration die effiziente Nutzung von Computerressourcen, während die automatische Statusüberwachung und Verlagerung von Containern die Verfügbarkeit optimiert.
Wie bereits erwähnt, ist Kubernetes die beliebteste Plattform zur Containerorchestrierung. Zusammen mit anderen Tools im Containerökosystem ermöglicht Kubernetes einem Unternehmen die Bereitstellung eines hochproduktiven Platform-as-a-Service (PaaS). Bewältigung vieler infrastruktur- und betriebsbezogener Aufgaben und Probleme im Zusammenhang mit der Entwicklung von Cloud-nativen Anwendungen, damit sich die Entwicklungsteams ausschließlich auf die Programmierung und Innovation konzentrieren können.
Die Vorteile von Kubernetes gegenüber anderen Orchestrierungslösungen ergeben sich vor allem aus den umfassenderen und fortgeschrittenen Funktionen in verschiedenen Bereichen, darunter:
Red Hat OpenShift on IBM Cloud nutzt OpenShift in öffentlichen und hybriden Umgebungen für Geschwindigkeit, Marktreaktivität, Skalierbarkeit und Zuverlässigkeit.
Mit IBM Cloud Satellite können Sie überall konsistente Cloud-Services starten – lokal, am Edge und in Public-Cloud-Umgebungen.
Führen Sie Container-Images, Stapeljobs oder Quellcode als serverlose Workloads aus – ohne Größenanpassung, Bereitstellung, Vernetzung oder Skalierung.
Bestimmen Sie automatisch die richtigen Maßnahmen für die Ressourcenzuordnung – und den richtigen Zeitpunkt, um sicherzustellen, dass Ihre Kubernetes-Umgebungen und geschäftskritischen Anwendungen genau das bekommen, was sie zur Erfüllung Ihrer SLOs benötigen.
Eine neue Studie von IBM dokumentiert die rasante Verbreitung von Containern und Kubernetes.
Containerorchestrierung ist eine Schlüsselkomponente einer offenen Hybrid-Cloud-Strategie, mit der Sie Workloads von überall aus erstellen und verwalten können.
Docker ist eine Open-Source-Plattform zum Erstellen, Bereitstellen und Verwalten von containerisierten Anwendungen.