Was ist Containerorchestrierung?
Entdecken Sie die Container-Orchestrierungslösung von IBM Abonnieren Sie Cloud-Updates
Illustration mit Collage aus Piktogrammen von Computermonitor, Server, Wolken, Punkten
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.

Schöpfen Sie die Hybrid Cloud voll aus

Verbinden und integrieren Sie Ihre Systeme, um Ihre Infrastruktur für KI vorzubereiten.

Ähnliche Inhalte

Registrieren Sie sich, um den Leitfaden zu DaaS zu lesen

Mehr zu Containern und warum Orchestrierung notwendig ist

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.

Vollständigen Bericht herunterladen: Nutzung von Containern im Unternehmen
So funktioniert die Containerorchestrierung

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:

  • Definition, aus welchen Container-Images die Anwendung besteht und wo diese sich befinden (in welcher Registry).

  • Versorgung der Container mit Speicher und anderen Ressourcen.

  • Definition und Schutz der Netzverbindungen zwischen Containern.

  • Festlegung der Versionierung (für Stufen- oder Canary-Rollouts).

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: 

  • Verwaltung der Skalierbarkeit (nach oben und unten), des Lastausgleichs und der Ressourcenzuordnung zwischen den Containern.

  • Sicherstellung von Verfügbarkeit und Leistung durch Verlagerung der Container auf einen anderen Host im Falle eines Ausfalls oder fehlender Systemressourcen

  • Sammeln und Speichern von Protokolldaten und anderen Telemetriedaten zur Überwachung des Zustands und der Leistung der Anwendung.

Vorteile der Containerorchestrierung


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.

Kubernetes

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:

  • Containerbereitstellung. Kubernetes stellt eine bestimmte Anzahl von Containern auf einem bestimmten Host bereit und führt diese im gewünschten Zustand aus.

  • Rollouts. Ein Rollout ist eine Änderung an einer Bereitstellung. Mit Kubernetes können Sie Rollouts initialisieren, anhalten, fortsetzen oder zurücksetzen.

  • Serviceerkennung. Kubernetes kann automatisch einen Container im Internet oder anderen Containern unter Verwendung eines DNS-Namens oder einer IP-Adresse zur Verfügung stellen.

  • Speicherbereitstellung. Entwickler können Kubernetes so einrichten, dass bei Bedarf permanenter lokaler oder Cloud-Speicher für Ihre Container bereitgestellt wird.

  • Lastausgleich und Skalierbarkeit. Wenn der Datenverkehr zu einem Container sprunghaft ansteigt, kann Kubernetes durch Lastausgleich und Skalierung den Datenverkehr über das Netz verteilen und so Stabilität und Leistung gewährleisten. (Entwickler müssen daher auch keine Lastausgleichsfunktion einrichten.)

  • Automatische Fehlerbehebung für hohe Verfügbarkeit. Wenn ein Container ausfällt, kann Kubernetes ihn automatisch neu starten oder ersetzen. Es kann auch Container entfernen, die nicht den Anforderungen der Zustandsüberwachung entsprechen.

     
  • Unterstützung und Portierbarkeit für mehrere Cloud-Provider. Wie bereits erwähnt, wird Kubernetes von allen führenden Cloud-Providern unterstützt. Dies ist besonders wichtig für Unternehmen, die Anwendungen in einer Hybrid-Cloud- oder Hybrid-Multicloud-Umgebung bereitstellen.

  • Wachsendes Ökosystem von Open-Source-Tools. Kubernetes verfügt außerdem über ein stetig wachsendes Portfolio von Tools zur Verbesserung von Bedienungskomfort und Netzbetrieb, um seine Funktionalität über die Kubernetes-API zu erweitern. Dazu gehören Knative, das die Ausführung von Containern als serverlose Workloads ermöglicht, und Istio, ein Open-Source-Servicenetz. 

Weitere Informationen zu Kubernetes

Weiterführende Lösungen
Red Hat OpenShift on IBM Cloud

Red Hat OpenShift on IBM Cloud nutzt OpenShift in öffentlichen und hybriden Umgebungen für Geschwindigkeit, Marktreaktivität, Skalierbarkeit und Zuverlässigkeit.

Red Hat OpenShift on IBM Cloud kennenlernen
IBM Cloud Satellite

Mit IBM Cloud Satellite können Sie überall konsistente Cloud-Services starten – lokal, am Edge und in Public-Cloud-Umgebungen.

IBM Cloud Satellite kennenlernen
IBM Cloud Code Engine

Führen Sie Container-Images, Stapeljobs oder Quellcode als serverlose Workloads aus – ohne Größenanpassung, Bereitstellung, Vernetzung oder Skalierung. 

IBM Cloud Code Engine kennenlernen
Optimieren Sie Kubernetes mit IBM Turbonomic

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.

IBM Turbonomic kennenlernen
Ressourcen Nutzung von Containern im Unternehmen

Eine neue Studie von IBM dokumentiert die rasante Verbreitung von Containern und Kubernetes.

Kombinieren Sie die besten Funktionen der Cloud und der traditionellen IT

Containerorchestrierung ist eine Schlüsselkomponente einer offenen Hybrid-Cloud-Strategie, mit der Sie Workloads von überall aus erstellen und verwalten können.

Was ist Docker?

Docker ist eine Open-Source-Plattform zum Erstellen, Bereitstellen und Verwalten von containerisierten Anwendungen.

Machen Sie den nächsten Schritt

Red Hat OpenShift on IBM Cloud bietet Entwicklern eine schnelle und sichere Möglichkeit zur Containerisierung und Bereitstellung von Unternehmensworkloads in Kubernetes-Clustern. Entlasten Sie Ihre Teams von mühsamen Routineaufgaben wie Sicherheitsmanagement, Konformitätsmanagement, Implementierungsmanagement und laufendes Lebenszyklusmanagement.

Red Hat OpenShift on IBM Cloud kennenlernen Kostenfrei starten