Suchen

Linux-Container und unternehmenskritische Workloads Kubernetes alleine reicht nicht

| Autor / Redakteur: Graham Berry / Dipl.-Ing. (FH) Andreas Donner

Die Vorteile von Kubernetes sind unbestritten. Die Open-Source-Plattform orchestriert und automatisiert den Betrieb von Linux-Containern und beseitigt viele manuelle Prozesse, die für das Deployment und die Skalierung von containerisierten Applikationen erforderlich sind. Allerdings kann Kubernetes allein nicht alle Herausforderungen bewältigen, die mit unternehmenskritischen Workloads verbunden sind.

Firmen zum Thema

Mit der Umstellung auf Container, müssen Unternehmen auch überlegen, wie sie diese im Laufe der Zeit betreiben werden.
Mit der Umstellung auf Container, müssen Unternehmen auch überlegen, wie sie diese im Laufe der Zeit betreiben werden.
(Bild: © AliFuat - stock.adobe.com)

Die Nutzung von Container-Lösungen liegt im Trend. Eine aktuelle Untersuchung von Red Hat hat ergeben, dass bei 28 Prozent der befragten Unternehmen in zwei Jahren mehr als die Hälfte aller Workloads containerisiert sein wird. Container werden heute nicht mehr nur als eine neue Art der Verpackung von Anwendungen gesehen, um die Applikationsausführung zu optimieren und die Kosten für virtuelle Maschinen zu reduzieren. Container-Plattformen werden stattdessen primär als Enabler von Innovationen eingestuft. Folglich steht eine tragfähige Container-Plattform mit Orchestrierungsmöglichkeit inzwischen auf der Agenda vieler CIOs.

Noch vor einigen Jahren gab es einen Technologie-Wettstreit zwischen verschiedenen Container-Orchestrierungsplattformen. Als aber Kubernetes auf den Markt kam und offen verfügbar war, wurde es zu einem der am schnellsten wachsenden Open-Source-Projekte. Fast 8.000 Entwickler nahmen 2019 an der KubeCon in Barcelona teil; damit war sie eine der größten Open-Source-Konferenzen in Europa. Inzwischen steht fest, dass Kubernetes den Kampf um die Container-Orchestrierung gewonnen hat: Es gibt mittlerweile über 90 zertifizierte Kubernetes-Angebote auf dem Markt.

Funktionsumfang und Grenzen von Kubernetes

Doch warum ist Kubernetes so wichtig für die Container-Plattformen? Als anbieterunabhängiges Cluster- und Container-Management-Tool bietet Kubernetes eine Plattform für die Automatisierung von Bereitstellung, Skalierung und Betrieb von Anwendungscontainern über Host-Cluster hinweg. In einer Zeit, in der Hybrid-Cloud-Strategien dominieren, können Kubernetes-Cluster Public, Private oder Hybrid Clouds umfassen. Aus diesem Grund ist Kubernetes eine ideale Plattform für das Hosting von Cloud-nativen Anwendungen, die eine schnelle Skalierung erfordern – etwa beim Echtzeit-Datenstreaming.

Kubernetes ist jedoch auf andere Open-Source-Projekte angewiesen, damit der Anwender seine Leistungsfähigkeit voll ausschöpfen kann. Eine Container-Plattform der Enterprise-Klasse sollte über die Kubernetes-Orchestrierung hinaus deshalb aus mehreren wichtigen Tools bestehen. Dazu gehören Registry, Netzwerk, Storage, Telemetrie, Automatisierung und Services. Hinzu kommen Metrics, Logging, Monitoring, Ingress, Authentifizierung und Autorisierung, Sprachen, Frameworks, Middleware und Datenbanken – und nicht zuletzt Sicherheit.

Ein Unternehmen muss sich vor der Bereitstellung und dem Betrieb eines Containers Gedanken über die Sicherheit in allen Schichten seines Software-Stacks machen, die Sicherheit von Kubernetes auf eine integrierte Art und Weise angehen und dabei beachten, an welchem Punkt die Kubernetes-Sicherheit endet.

Während also die Installation von Kubernetes und einige Experimente damit einfach umsetzbar sind, erfordert die Etablierung von Kubernetes als zentrale Plattform zur Ausführung geschäftskritischer Anwendungen hingegen viel mehr. Wer eine eigene Container-Plattform erstellt, muss die einzelnen Technologien im gesamten Stack prüfen, testen und härten. Er muss zudem während des gesamten Lebenszyklus jeder einzelnen Komponente den Überblick behalten und sicherstellen, dass alle Komponenten richtig zusammenarbeiten. Wenn es dabei irgendwo ein Problem gibt, fehlt Kubernetes als Upstream-Open-Source-Projekt eine formalisierte Supportstruktur, sodass die Problemlösung im Aufgabenbereich der Projektverantwortlichen liegt.

Frankensteins Kubernetes

Viele Unternehmen beginnen mit einer kleinen Kubernetes-Installation. Sobald sie skalieren und ihre geschäftskritischen Workloads darauf betreiben wollen, stellen sie oftmals fest, dass sie die Komplexität und den Aufwand für Integration, Tests, Updates und Management der verschiedenen Cloud-nativen Komponenten unterschätzt haben. Dann bewahrheitet sich das Mantra: „Es gibt so etwas wie Vanilla Kubernetes nicht“, denn Stück für Stück baut man am Ende ein Frankenstein-Monster zusammen. Die Aufrechterhaltung und Verwaltung dieses Gebildes kann während seines Wachstums immer kostspieliger werden.

Steuerung von Innovation

In der heutigen Welt sind hohe Innovationskraft und schnelle Time-to-Market von großer Bedeutung. Day-One-Entwickler müssen deshalb in der Lage sein, die Infrastruktur effizient bereitzustellen. Basis hierfür ist der Einsatz einer verwalteten Plattform, die einen einfachen Zugriff auf alle Funktionen bietet, die für den konsistenten Betrieb von Containern und Kubernetes in einer hybriden Umgebung erforderlich sind – einschließlich Support und Sicherheit. Dadurch gewinnen Anwendungs- und Entwicklerteams auch mehr Zeit für die eigentliche Lösung von Geschäftsproblemen.

Viele Unternehmen werden verstärkt mehrere Public Clouds in ihre hybride Umgebung einbinden. Sie müssen sich dabei die Frage stellen, wie viel Flexibilität und Freiheit sie für die Nutzung der Technologien ihrer Wahl benötigen – einschließlich neuer Innovationen wie Quarkus für die Erstellung Cloud-nativer Anwendungen oder Operators zur Paketierung von Kubernetes-nativen Anwendungen für ein vereinfachtes Management. Letztendlich bedeutet dies, den Unterschied zwischen einer offenen und einer proprietären Plattform zu verstehen.

Ein Beispiel hierfür ist die Deutsche Bank, die eine Open-Source-basierte As-a-Service-Plattform eingerichtet hat, um den Zugang von Entwicklern zu Rechenkapazität und anderen Anwendungsressourcen im gesamten Unternehmen zu standardisieren und zu optimieren. Die Deutsche Bank baute Fabric, eine containerisierte, auf Microservices basierende Anwendungsentwicklungsplattform auf. Fabric ermöglicht einen schnelleren Zugriff auf Ressourcen und unterstützt Entwickler dabei, effizienter zu arbeiten, sodass Anwendungen jetzt in zwei bis drei Wochen anstatt in sechs bis neun Monaten vom Proof of Concept in den Produktivbetrieb überführt werden.

Die Fluglinie Cathay Pacific Airways, die 200 Ziele in 52 Ländern ansteuert, hat eine Enterprise-Kubernetes-Plattform in einer offenen Hybrid-Cloud-Umgebung eingeführt. Cathay Pacific erhöhte damit nicht nur die On-Demand-Skalierbarkeit und die Portabilität zwischen Private- und Public-Cloud-Infrastrukturen, sondern stärkte auch die Zusammenarbeit zwischen den Teams. So konnten effizientere und damit kostengünstigere Arbeitsprozesse realisiert werden. Die Fluggesellschaft kann nun 200 Deployments pro Tag durchführen – vorher war es ein Deployment pro Woche – und Anwendungen verschieben, ohne sie neu schreiben zu müssen.

Graham Berry.
Graham Berry.
(Bild: Red Hat)

Fazit

Sobald Unternehmen mit der Umstellung auf Container starten, müssen sie auch überlegen, wie sie diese im Laufe der Zeit betreiben werden. Wenn das Unternehmensziel die schnelle Bereitstellung innovativer Services für Kunden ist, steht mit Kubernetes auf jeden Fall ein sehr mächtiges Hilfsmittel zur Verfügung. Allerdings muss immer berücksichtigt werden, dass Kubernetes allein nicht das Allheilmittel schlechthin ist.

Über den Autor

Graham Berry ist EMEA Sales Lead OpenShift bei Red Hat.

(ID:46708712)