Jump to section

Was ist Container-Orchestrierung?

URL kopieren

Mithilfe der Container-Orchestrierung werden Deployment, Management, 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 für das Deployment und die eigenständige 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.

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

  • Provisionierung und Deployment
  • 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 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 dem Deployment und der 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 Node.
  • Control Plane: Die Gesamtheit der Prozesse, mit denen die Kubernetes-Nodes gesteuert werden. Hier werden alle Aufgaben zugewiesen.
  • Kubelet: Dieser Dienst läuft auf den Nodes, 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 Node bereitgestellt werden. Alle Container in einem Pod teilen sich IP-Adresse, IPC, Hostname und andere Ressourcen.

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.

Beim Deployment eines neuen Containers plant das Container-Management-Tool automatisch das Deployment 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.

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.

Sie können zertifizierte Software für Public Clouds, Private Clouds und Ihr Rechenzentrum testen, kaufen und managen. All das ermöglicht Red Hat Marketplace. Sie können leichter auf die Software zugreifen, die Sie bereits verwenden, Anwendungen in einer einheitlichen Kubernetes-basierten Umgebung entwickeln und in vielen verschiedenen Umgebungen bereitstellen.

Mit Red Hat Marketplace haben Sie mehr Zeit zum Entwickeln innovativer Lösungen. Die Hatz nach Lizenzen, Berechtigungen und Ablaufdaten hat somit ein Ende.

Weiterlesen

ARTIKEL

Vergleich zwischen Containern und VMs

Linux-Container und virtuelle Maschinen (VMs) sind paketierte Computing-Umgebungen, die verschiedene IT-Komponenten vereinen und vom Rest des Systems isolieren.

ARTIKEL

Was ist Container-Orchestrierung?

Mithilfe der Container-Orchestrierung werden Deployment, Management, Skalierung und Vernetzung von Containern automatisiert.

ARTIKEL

Was ist ein Linux-Container?

Ein Linux-Container besteht aus Prozessen, die vom System isoliert sind und auf einem eigenen Image ausgeführt werden, das alle benötigten Dateien zur Unterstützung der Prozesse bereitstellt.

Mehr über Container erfahren

Produkte

Eine Plattform, die es Ihnen ermöglicht, Unternehmensanwendungen schnell und effizient über die von Ihnen gewünschte Infrastruktur bereitzustellen.

Ressourcen

Training

Kostenloser Trainingskurs

Running Containers with Red Hat Technical Overview

Kostenloser Trainingskurs

Containers, Kubernetes and Red Hat OpenShift Technical Overview

Kostenloser Trainingskurs

Developing Cloud-Native Applications with Microservices Architectures