Kubernetes: Wie funktioniert Container-Orchestrierung?

Kubernetes ist eine Open-Source-Plattform, die Container automatisch startet, verteilt und überwacht. Sie hält Anwendungen am Laufen, auch wenn einzelne Server ausfallen. Viele Unternehmen betreiben damit ihre Software in der Cloud oder im eigenen Rechenzentrum.

Was ist Kubernetes?

Google entwickelte Kubernetes auf Basis eigener Erfahrungen mit riesigen Serverlandschaften und gab die Software 2014 als Open Source frei. Heute betreut die Cloud Native Computing Foundation (CNCF) das Projekt. Der Name stammt aus dem Griechischen und bedeutet Steuermann. In der Praxis lesen Sie oft die Abkürzung K8s: Zwischen K und s stehen acht Buchstaben.

Kubernetes arbeitet wie ein Hafenmeister. Er verteilt Container auf die Schiffe, die gerade Platz haben. Fällt ein Schiff aus, lädt er die Container auf ein anderes um. Kommen mehr Container an, holt er zusätzliche Schiffe dazu.

Wie ist Kubernetes aufgebaut?

Ein Kubernetes-System heißt Cluster. Es besteht aus wenigen zentralen Bausteinen:

  • Control Plane: Die Steuerzentrale entscheidet, welche Anwendung wo läuft, und überwacht den Zustand des Clusters.
  • Nodes: Physische oder virtuelle Server führen die eigentlichen Anwendungen aus.
  • Pods: Die kleinste Einheit in Kubernetes. Ein Pod enthält einen oder mehrere Container, die eng zusammenarbeiten.
  • Deployments: Sie legen fest, wie viele Kopien einer Anwendung laufen sollen und wie Updates ablaufen.
  • Services: Sie machen Anwendungen unter einer festen Adresse erreichbar, egal auf welchem Node sie gerade laufen.

Die gewünschte Konfiguration beschreiben Administratoren meist in YAML-Dateien. Kubernetes vergleicht diesen Soll-Zustand laufend mit dem Ist-Zustand und gleicht Abweichungen selbstständig aus.

Wann lohnt sich Kubernetes?

Kubernetes spielt seine Stärken aus, wenn Anwendungen wachsen und hohe Verfügbarkeit brauchen. Typische Szenarien:

  • Microservices: Eine Anwendung besteht aus vielen kleinen Diensten, die unabhängig voneinander laufen und aktualisiert werden.
  • Schwankende Last: Kubernetes startet bei Bedarf zusätzliche Instanzen und fährt sie wieder herunter.
  • Hohe Verfügbarkeit: Fällt ein Server aus, startet die Plattform die betroffenen Container woanders neu.
  • Hybrid- und Multi-Cloud: Dieselbe Anwendung läuft im eigenen Rechenzentrum und bei verschiedenen Cloud-Anbietern.

Große Cloud-Anbieter bieten Kubernetes als verwalteten Dienst an, etwa Azure Kubernetes Service (AKS), Amazon EKS oder Google Kubernetes Engine (GKE). Den Betrieb der Steuerzentrale übernimmt dann der Anbieter.

Welche Herausforderungen bringt Kubernetes mit sich?

Die Plattform ist mächtig, aber auch komplex. Wer sie selbst betreibt, braucht erfahrene Fachleute für Einrichtung, Updates und Fehlersuche. Auch die Sicherheit erfordert Aufmerksamkeit: Berechtigungen, Netzwerkregeln und Container-Images wollen sauber konfiguriert sein.

Hinzu kommen die Kosten. Die Software selbst ist kostenlos, doch Infrastruktur, Überwachung und Personal kosten Geld. Für eine einzelne, kleine Anwendung ist Kubernetes deshalb oft überdimensioniert. Viele mittelständische Unternehmen setzen daher auf einen Managed-Kubernetes-Dienst oder holen sich einen spezialisierten IT-Dienstleister ins Boot.

Häufige Fragen zu Kubernetes

Was ist der Unterschied zwischen Docker und Kubernetes?
Docker verpackt Anwendungen in Container und führt sie aus. Kubernetes verwaltet viele solcher Container über mehrere Server hinweg. Beide Werkzeuge ergänzen sich also.

Kostet Kubernetes Geld?
Die Software ist Open Source und kostenlos. Kosten entstehen für Server, Cloud-Ressourcen, Überwachung und den Betrieb.

Brauche ich für Kubernetes eigene Experten?
Für den Eigenbetrieb ja. Alternativ übernehmen Cloud-Anbieter oder Managed-Service-Partner einen großen Teil der Arbeit.

Läuft Kubernetes auch im eigenen Rechenzentrum?
Ja. Kubernetes läuft auf eigener Hardware, auf virtuellen Maschinen und in der Cloud. Distributionen wie Red Hat OpenShift oder Rancher erleichtern den Betrieb vor Ort.

Verwandte Begriffe

Container, Docker, Microservices, Cloud Computing, YAML, DevOps, CI/CD, Virtualisierung, Hyperkonvergente Infrastruktur, Managed Services

Das muss man gelesen haben?

Behalten Sie ihr Wissen nicht für sich und teilen Sie diesen Beitrag.

Back to top