Leseproben
Thomas Schwärzl NTT Data Deutschland GmbH

Kubernetes ist ein Open-Source-System für das automatische Deployment, Skalieren und Verwalten von containerisierten Anwendungen.

Dr. Andreas Hess NTT DATA Deutschland GmbH

Kubernetes, auch bekannt unter dem Kürzel „k8s“, entstand nicht plötzlich aus dem Nichts. Google arbeitete bereits seit 15 Jahren an einer Plattform zur Verwaltung von Containern.

Als vor knapp fünf Jahren Docker auf den Markt kam, dachten viele noch an einen neuen Hype, der schnell wieder in den Tiefen des Internets verschwindet. Mittlerweile hat Docker jedoch seinen fünften Geburtstag gefeiert und die IT-Landschaft grundlegend verändert. Docker ist nicht mehr wegzudenken und genießt eine immer größer werdende Beliebtheit. Enormen Einfluss auf diesen Erfolg hatte von Anfang an unter anderem Google, das mit Kubernetes ein Open-Source-Projekt zur Administration mehrerer Docker-Container veröffentlicht hat. Wir möchten in diesem Artikel einen Überblick über Docker und Kubernetes geben und so ein Grundverständnis der Funktionalitäten schaffen.

Das Konzept der Container existiert seit über einem Jahrzehnt und wurde bereits in vielen bekannten Unixbasierten Betriebssystemen wie zum Beispiel Linux, Solaris oder FreeBSD eingesetzt. Jedoch war es erst Docker, das die Containertechnologie für Entwickler und den IT-Betrieb im täglichen Umgang zugänglich und handhabbar gemacht hat. Docker bewies die Portabilität und Skalierbarkeit von Anwendungen, weshalb immer mehr Entwickler und der IT-Betrieb dazu übergingen, die Container für das Bauen von Software und Auflösen von Abhängigkeiten zu verwenden. Auch in DevOps-Prozessen spielen Container eine entscheidende Rolle. Sie sind zu einem integralen Bestandteil automatisierter Software-Builds und der kontinuierlichen Integration und Bereitstellung (Continuous Integration / Continuous Delivery) von Pipelines geworden.

Während man in kleinen Infrastrukturen ohne Probleme das Lifecycle-Management der Container manuell handhaben kann, verliert man in verteilten Rechenzentren mit hunderten Containern schnell den Überblick. Das Verwalten vieler unterschiedlicher Container in Entwicklungs- und Produktionsumgebungen mit unterschiedlichen Netzwerk- und Festplattenanforderungen erforderte eine Lösung. Eine der bekanntesten Lösungen ist Kubernetes. Kubernetes ist ein Open-Source-System für das automatische Deployment, Skalieren und Verwalten von containerisierten Anwendungen. So ist Kubernetes auf seiner eigenen-Webseite beschrieben. Urheber von Kubernetes ist Google, das Kubernetes als ein Google-Infrastructurefor-Everybody-Else-(GIFEE-)Projekt vollständig Open Source auf GitHub zur Verfügung gestellt hat. Neben Google als initialem und Hauptbeitragendem lebt das Projekt von vielen individuellen Entwicklern sowie beitragenden Firmen wie zum Beispiel Red Hat, Microsoft, NTT DATA oder Docker selbst. Kubernetes, auch bekannt unter dem Kürzel „k8s“, entstand nicht plötzlich aus dem Nichts. Google arbeitete bereits seit fünfzehn Jahren an einer Plattform zur Verwaltung von Containern. Damals hieß das Projekt noch „Borg“, wurde dann zu „Omega“ umbenannt und ist schließlich als Open-Source-Lösung unter dem Namen „Kubernetes“ erschienen.

Architektur

Master: Wie fast alle verteilten IT-Plattformen besteht auch Kubernetes aus mindestens einem Master und mehreren Nodes. Es ist möglich, beide Komponenten auf einem einzelnen System zu betreiben. Das wird unter anderem bei Minikube, einer lokalen Testumgebung, basierend auf VirtualBox, so zur Verfügung gestellt. Der Master verwaltet und veröffentlicht die Schnittstelle (API), über die er angesteuert werden kann, und überwacht den Zustand des vollständigen Clusters. Darüber hinaus plant und steuert der Master auch das Deployment auf den jeweiligen Nodes. Der Master kann zum Beispiel aus Gründen der Hochverfügbarkeit auch auf mehreren Systemen betrieben und hinter einen Load Balancer, der in Kubernetes integriert ist, gesetzt werden.

Den vollständigen Artikel lesen Sie in der Ausgabe:

Entwickler Magazin 5.18 - "Kubernetes"

Alle Infos zum Heft
579852077Was ist Kubernetes?
X
- Gib Deinen Standort ein -
- or -