Anmelden / Registrieren Konto

Container

Was ist Container-Orchestrierung?

Mit der Container-Orchestrierung wird die Bereitstellung, Verwaltung, Skalierung und Vernetzung von Containern automatisiert. Unternehmen, die Hunderte oder Tausende von Linux®-Containern und -Hosts bereitstellen und verwalten müssen, können von der Container-Orchestrierung profitieren. 

Sie können die Container-Orchestrierung in jeder Umgebung einsetzen, in der Sie Container verwenden. Mithilfe der Container-Orchestrierung können Sie eine Anwendung ohne besondere Anpassung in verschiedenen Umgebungen bereitstellen. Und mit Microservices in Containern können Sie Ihre Services, wie Storage, Networking und Sicherheit, noch leichter orchestrieren. 

Container eignen sich ideal zur eigenständigen Bereitstellung und Ausführung Ihrer Microservice-Apps. Mit Containern können mehrere Teile einer App auf derselben Hardware unabhängig voneinander in Microservices ausgeführt werden. Gleichzeitig können die einzelnen Bestandteile und Lifecycles viel besser gesteuert werden.

Das Management der Container-Lifecycles durch Orchestrierung unterstützt auch die DevOps-Teams, die diese in die CI/CD-Workflows integrieren. Zusammen mit APIs und DevOps-Teams bilden containerisierte Microservices die Basis für cloudnative Anwendungen.


Wozu dient die Container-Orchestrierung?

Mit der Container-Orchestrierung können Sie folgende Aufgaben automatisieren und verwalten:

  • Provisionierung und Bereitstellung
  • Konfiguration und Planung 
  • Ressourcenzuweisung
  • Container-Verfügbarkeit 
  • Skalieren oder Entfernen von Containern, um Workloads gleichmäßig über Ihre Infrastruktur zu verteilen
  • Load Balancing und Traffic Routing 
  • Überwachen des Containerzustands
  • Konfigurieren von Anwendungen basierend auf dem Container, in dem sie ausgeführt werden
  • Sichern von Interaktionen zwischen Containern

Container-Orchestrierungs-Tools

Container-Orchestrierungs-Tools bieten ein Framework für die Verwaltung von Containern und Microservices-Architekturen in großem Umfang. Es gibt viele Container-Orchestrierungs-Tools, die für das Lifecycle-Management von Containern verwendet werden können. Einige beliebte Optionen sind Kubernetes, Docker Swarm und Apache Mesos.

Kubernetes ist ein Open Source-Tool für die Orchestrierung von Containern, das ursprünglich von Google entwickelt und entworfen wurde. Google spendete das Kubernetes-Projekt 2015 der neu gegründeten Cloud Native Computing Foundation.

Mit der Kubernetes-Orchestrierung können Sie Anwendungsservices entwickeln, die sich über mehrere Container erstrecken, Container clusterübergreifend planen, skalieren und ihren Zustand im Zeitverlauf überwachen.

Kubernetes eliminiert viele manuelle Prozesse, die mit der Bereitstellung und Skalierung von containerisierten Anwendungen einhergehen. Sie können Gruppen von Hosts (entweder physische oder virtuelle Maschinen), auf denen Linux-Container laufen, in Clustern zusammenfassen, und Kubernetes bietet Ihnen die Plattform, auf der Sie diese Cluster auf einfache und effiziente Weise verwalten können. 

Allgemeiner gesagt, können Sie mit Kubernetes eine Infrastruktur in Ihren Produktivumgebungen implementieren, die komplett containerbasiert ist und auf die Sie sich verlassen können.

Diese Cluster können Hosts in Public, Private oder Hybrid Clouds umfassen. Aus diesem Grund ist Kubernetes die ideale Plattform für das Hosting cloudnativer Anwendungen, die eine schnelle Skalierung benötigen.

Kubernetes unterstützt Sie auch bei der Portierbarkeit von Workloads und beim Load Balancing, indem Sie Anwendungen verschieben können, ohne sie neu zu entwickeln. 

Hauptkomponenten von Kubernetes:

  • Cluster: Eine Control Plane und mindestens eine Rechenmaschine oder mindestens ein Knoten.
  • Control Plane: Die Gesamtheit der Prozesse, mit denen die Kubernetes-Knoten gesteuert werden. Hier werden alle Task-Zuordnungen ausgegeben.
  • Kubelet: Dieser Dienst läuft auf den Knoten, liest die Container-Manifeste aus und stellt sicher, dass die definierten Container gestartet und in Betrieb sind.
  • Pod: Eine Gruppe aus einem oder mehreren Containern, die in einem einzelnen Knoten bereitgestellt werden. Alle Container in einem Pod teilen sich IP-Adresse, IPC, Hostname und andere Ressourcen.

Wie funktioniert die Container-Orchestrierung?

Wenn Sie ein Container-Orchestrierungs-Tool wie Kubernetes verwenden, beschreiben Sie die Konfiguration einer Anwendung in einer YAML- oder JSON-Datei. Die Konfigurationsdatei teilt dem Konfigurationsmanagement-Tool mit, wo sich die Container-Images befinden, wie ein Netzwerk eingerichtet wird und wo Protokolle gespeichert werden.

Bei der Bereitstellung eines neuen Containers plant das Container-Management-Tool automatisch die Bereitstellung in einem Cluster, berücksichtigt alle definierten Anforderungen oder Einschränkungen und findet den richtigen Host. Das Orchestrierungs-Tool verwaltet dann den Lifecycle des Containers basierend auf den Spezifikationen, die in der Erstellungsdatei festgelegt wurden.

Sie können Kubernetes Patterns verwenden, um die Konfiguration, den Lifecycle und die Skalierung von containerbasierten Anwendungen und Services zu verwalten. Diese wiederholbaren Patterns sind die Tools, die ein Kubernetes-Entwickler zum Erstellen vollständiger Systeme benötigt. 

Die Container-Orchestrierung kann in jeder Umgebung verwendet werden, in der Container ausgeführt werden, z. B. auf lokalen Servern und Public oder Private Cloud-Umgebungen.


Container-Orchestrierung in Unternehmen

Echte Produktions-Apps erstrecken sich über mehrere Container. Diese Container müssen auf mehreren Server-Hosts bereitgestellt werden. Hier kommt Red Hat® OpenShift® ins Spiel. Red Hat OpenShift ist Kubernetes für Unternehmen und noch vieles mehr.

Red Hat OpenShift integriert alle zusätzlichen Technologiekomponenten, die Kubernetes leistungsstark und unternehmenstauglich machen, darunter Registry, Networking, Telemetrie, Sicherheit, Automatisierung und Services.

Mit OpenShift können Entwickler neue containerisierte Apps erstellen, sie hosten und in der Cloud mit der Skalierbarkeit, Kontrolle und Orchestrierung bereitstellen, die man braucht, um aus einer guten Idee schnell und einfach ein neues Geschäft zu machen.

Die Tools, die Sie für die Container-Orchestrierung benötigen

Red Hat OpenShift product logo

Eine unternehmensfähige Kubernetes-Container-Plattform, auf der Operationen für den gesamten Stack automatisiert werden, um Hybrid- und Multi-Clouds noch einfacher verwalten zu können. 

Red Hat Runtimes logo

Ein Satz schlanker Runtimes und Frameworks für stark verteilte Cloud-Architekturen wie z. B. Microservices.

Container haben noch viel mehr zu bieten