Container-as-a-Service-Plattformen erleichtern Entwicklern die Bereitstellung von Docker-Containern und deren Zusammenführung in Anwendungen, wobei meistens Kubernetes für diese Aufgabe herangezogen wird. [...]
Da sich moderne, containerisierte Anwendungen bei den Unternehmen weiterhin als beliebt erweisen, war es nur eine Frage der Zeit, bis die großen Anbieter damit beginnen würden, Container-Infrastruktur und -Management „as-a-Service“ anzubieten.
Die Verwendung von Containern nimmt bei Unternehmen weltweit stark zu. 65 Prozent der Organisationen geben an, Docker-Container zu verwenden, und 58 Prozent nutzen das Orchestrierungssystem Kubernetes in irgendeiner Weise, so der neueste Flexera-Bericht zum Stand der Cloud 2020.
Mangel an Ressourcen und Fachwissen werden häufig als Hauptherausforderungen bei der Verwendung von Containern zur Erstellung und Wartung von Anwendungen genannt. Daher sollte es nicht überraschen, dass sich Entwickler zunehmend der Automatisierung durch Container-as-a-Service (CaaS)-Angebote zuwenden, wobei die drei großen Cloud-Anbieter eine Vorreiterrolle spielen.
Container-as-a-Service, oder CaaS, definiert
Bei CaaS stellen Cloud-Anbieter im Wesentlichen eine gehostete Container-Orchestrierungs-Engine zur Verfügung – in der Regel auf der Grundlage des überaus beliebten Open-Source-Projekts Kubernetes, das seinen Ursprung bei Google hat -, um Container bereitzustellen und auszuführen, Cluster zu verwalten, Skalierung und Fehlermanagement zu automatisieren und die gemeinsame Infrastrukturebene zu pflegen, einschließlich Governance und Sicherheit.
Im Allgemeinen werden alle Netzwerk-, Lastausgleichs-, Überwachungs-, Protokollierungs-, Authentifizierungs-, Sicherheits-, Autoskalierungs- und Continuous Integration/Continuous Delivery (CI/CD)-Funktionen von der CaaS-Plattform übernommen.
CaaS ermöglicht es Unternehmen, die Vorteile der Cloud-Infrastruktur zu nutzen und gleichzeitig die Bindung an einen Anbieter zu vermeiden, die mit Ihrer typischen Platform-as-a-Service (PaaS) – wie AWS Elastic Beanstalk, Azure App Service oder Google App Engine – einhergehen würde, da die Container selbst eine einfache Portabilität über verschiedene Umgebungen hinweg ermöglichen.
Wenn Container der Weg sind, den Sie gehen möchten, dann besteht der Unterschied zwischen CaaS und dem Betrieb auf klassischer Infrastructure-as-a-Service (IaaS) darin, ob Ihr Unternehmen über die Ressourcen und Fähigkeiten verfügt, Kubernetes (oder eine andere Container-Orchestrierungsschicht) selbst zu implementieren und zu verwalten, oder ob es von Vorteil wäre, dies einem Cloud-Provider zu überlassen. Die Entscheidung kann auch davon abhängen, ob Ihre Container-Umgebung mehrere Clouds und/oder On-Prems-Umgebungen umfassen muss. Eine Reihe von Anbietern bieten CaaS-Plattformen an, die entweder on-prem oder in der Cloud bereitgestellt werden können (siehe unten).
„Sie können entweder die Dinge auf Infrastrukturebene verwalten und den Orchestrator selbst einrichten, oder Sie können eine Containerplattform verwenden, die die zugrunde liegende Infrastruktur verwaltet und einen vorinstallierten Orchestrator bereitstellt, mit dem Sie Ihre Container bereitstellen und skalieren können“, schrieb der ehemalige Deutsche Bank und BBC-Entwickler Rob Isenberg in seinem Buch „Docker for Rails Developers„, das bei O’Reilly erschienen ist.
Die Vorteile von CaaS
Das Ausführen Ihrer Container unter CaaS ist vergleichbar mit dem Ausführen Ihrer virtuellen Maschinen unter IaaS: Die Hauptvorteile sind die Schnelligkeit der Bereitstellung und die Benutzerfreundlichkeit sowie die Einfachheit des Pay-as-you-go-Cloud-Modells und die erwähnte Freiheit von Herstellerabhängigkeit.
Wenn Sie Ihre Container-Infrastruktur einem Cloud-Anbieter überlassen, können Sie ohne Investitionen in eigene Hardware und ohne den Aufbau und Betrieb eines eigenen Kubernetes-Clusters (oder eines anderen Container-Orchestrierungssystems) in Betrieb gehen. Darüber hinaus können Sie durch die Containerisierung von Anwendungen diese einfacher in verschiedene Umgebungen oder Anbieter-Ökosysteme migrieren, was eine größere Flexibilität und Skalierbarkeit ermöglicht.
All dies bietet auch die so wichtigen Möglichkeiten zur Kosteneffizienz, da Container besser in der Lage sind, horizontal nach Bedarf zu skalieren, so dass Unternehmen nur für die von ihnen genutzten Cloud-Ressourcen zahlen müssen. Container sind weitaus leichter als virtuelle Maschinen, d.h. sie sind weniger ressourcenintensiv, was häufig zu Geschwindigkeitsgewinnen und Kostensenkungen führt.
Ein weiterer Vorteil ergibt sich aus der Konsistenz der Instrumentierung und Protokollierung, da die Isolierung einzelner Dienste in Containern eine effektivere Protokollaggregation und zentralisierte Überwachung durch das beliebte Sidecar-Bereitstellungsmodell ermöglichen kann.
Die Migration traditioneller Anwendungen in Container bleibt ein erhebliches Hindernis für die Akzeptanz, selbst wenn sie unter CaaS ausgeführt werden, wie 34 Prozent der Befragten im Flexera-Bericht zum Zustand der Cloud angaben. Die Migration zu Containern beinhaltet oft die Zerlegung monolithischer Anwendungen in Mikrodienste, was für größere, ältere Unternehmen eine bedeutende kulturelle und technische Veränderung darstellen kann, die nicht auf die leichte Schulter genommen werden sollte.
Führende CaaS-Optionen
Die meisten der großen Cloud-Anbieter haben CaaS-Angebote, und es gibt mehrere andere Anbieter, die mitmischen wollen.
Der Marktführer für Cloud-Dienste, Amazon Web Services (AWS), hat eine starke Verbreitung seines Kubernetes-less Elastic Container Service (ECS) und Elastic Kubernetes Service (EKS) erlebt. Auch die Akzeptanz des Azure Kubernetes Service ist laut der Analyse von Flexera deutlich gestiegen, ebenso wie die von Google Kubernetes Engine (GKE).
Alle drei Cloud-Giganten bieten jetzt auch serverlose Kubernetes-Dienste an, mit AWS ECS auf Fargate, Google Cloud Run auf GKE und Azure Container Instanzen. Im Gegensatz zu EKS, AKS und GKE machen diese Dienste die Durchführung von Serververwaltungsaufgaben überflüssig und eignen sich ideal für Anwendungsfälle mit On-Demand-Konsum.
Ein Großteil der Containerverwaltungsfunktionen von Google Cloud befindet sich jetzt unter dem Dach von Anthos, das die Verwaltung von containerbasierten Anwendungen über die lokale Infrastruktur und die großen öffentlichen Clouds hinweg ermöglicht (Google Cloud Platform und AWS jetzt, mit Azure-Unterstützung auf dem Weg). Anthos kombiniert GKE für Cloud-Workloads, GKE On-Prem und die Anthos Config Management-Konsole, die eine zentralisierte Verwaltung, Richtlinien und Sicherheit über hybride und Multi-Cloud-Kubernetes-Implementierungen hinweg ermöglicht.
Abgesehen von den „großen Drei“ Cloud-Anbietern haben Anbieter wie IBM/Red Hat, VMware, SUSE/Rancher, Canonical, D2iQ (ehemals Mesosphere), Rackspace, Oracle, HPE, Alibaba, Huawei und Tencent alle eine gewisse Vorstellung von einer verwalteten CaaS-Option. Eine Reihe dieser Angebote können vor Ort, in öffentlichen Clouds oder beidem eingesetzt werden.
Welche CaaS-Option ist die beste?
Das Branchenanalystenhaus Gartner hat keinen magischen Quadranten für CaaS-Anbieter, aber in seinem neuesten Competitive Landscape: Public Cloud Container Services-Bericht von Wataru Katsurashima identifiziert es Google’s GKE als die führende verwaltete Kubernetes-Option.
Die Analysten von Forrester sehen AWS an der Spitze der jüngsten New Wave for Public Cloud Enterprise Container Platforms Berichts im 3. Quartal 2019, mit Microsoft und Google knapp dahinter. Es sei darauf hingewiesen, dass der Forrester-Bericht nur sieben Anbieter berücksichtigte und sich strikt auf Public-Cloud-Implementierungen konzentriert.
AWS ist „führend bei den Bereitstellungsoptionen, der Sicherheit und den tiefen Integrationen“, so die Forrester-Autoren Dave Bartoletti und Charlie Dai. „Mit einer breiten Palette von vollständig verwalteten (und serverlosen) Kubernetes (K8s) Verbrauchsoptionen und den meisten Containern, die direkt in ihrer Cloud-Infrastruktur eingesetzt werden, setzt AWS die Innovation fort und integriert ihre Containerplattform mit ihren führenden Sicherheits- und Netzwerkfunktionen tief in ihre Infrastruktur.
Der Forrester-Bericht forderte sowohl Microsoft als auch Google auf, ihre Containerplattformen zu vereinfachen. Microsoft wurde wegen seiner besseren Erfahrung als Entwickler und seiner globalen Reichweite gelobt, wurde aber wegen seiner Komplexität kritisiert – was ein häufiger Refrain in dem Bericht war. Google wurde für sein tiefes Kubernetes-Know-how und seine Bemühungen um die Durchquerung von Multi-Cloud-Umgebungen gelobt, wurde aber auch wegen seiner Komplexität kritisiert.
Dennoch bleibt AWS EKS laut der CNCF-Umfrage 2019 die am häufigsten verwendete Container-Management-Plattform, mit GKE, Docker EE/CE und AKS knapp dahinter.
Der Flexera-Bericht zum Cloud-Status 2020 beziffert die Nutzung von AWS EKS/ECS in Unternehmen auf 55 Prozent. Weitere 23 Prozent der befragten Unternehmen planen, diese CaaS-Optionen in Zukunft zu nutzen. Die Akzeptanz des Azure Kubernetes Service erreichte 50 Prozent, und weitere 26 Prozent planen, AKS in Zukunft zu nutzen. Und Google Kubernetes Engine erreichte 26 Prozent, wobei 27 Prozent der befragten Unternehmen planen, GKS zu verwenden. Dem Flexera-Bericht zufolge übertrifft der selbstverwaltete Kubernetes-Service mit 63 Prozent der befragten Unternehmen jedoch immer noch alle CaaS-Optionen.
CaaS-Ressourcen
Die primären Informationsquellen über CaaS sind die Anbieter selbst, was es schwierig macht, eine informierte, unvoreingenommene Entscheidung zu treffen. Wie oben beschrieben, sind sowohl Forrester als auch Gartner tief in die Landschaft eingetaucht, aber ihr Blick richtet sich in der Regel eher darauf, welche Anbieter sich abheben, als darauf, wie man mit CaaS in der Produktion am besten zurecht kommt.
Es gibt auch noch nicht viele Bücher zu diesem Thema, aber das Software Architect’s Handbook von O’Reilly gibt einen guten Überblick.
Schließlich steht Docker seit Jahren im Mittelpunkt des Container- und Behältermanagements, und das Unternehmen verfügt über einige gute Video-Inhalte zu diesem Thema, darunter diese Sitzung mit dem technischen Mitarbeiter Patrick Chanezon und dieser Überblick von Sandor Klein, Vizepräsident für Europa, den Nahen Osten und Afrika.
*Scott Carey ist der Gruppenredakteur für die Unternehmenstitel von IDG UK und schreibt hauptsächlich für InfoWorld.
Be the first to comment