Entwicklungs- und Geschäftsprozesse 07.08.2020, 08:58 Uhr

Container machen agiler

Mit Containern und Kubernetes Anwendungen lassen sich IT-Umgebungen modernisieren. Unternehmen zögern jedoch noch bei der Einführung.
(Quelle: Avigator Fortuner / shutterstock.com)
Zugegeben, brandneu sind Container nicht. Auf die Idee, mehrere Ausgaben eines Betriebssystems auf demselben Host laufen zu lassen, kamen bereits die Entwickler von Unix V7 Ende der 1970er-Jahre. Und Linux-Container (LXC) erschienen 2008 auf der Bildfläche. Zu einem Hype mutierte die Technologie fünf Jahre später mit der Container-Plattform Docker. Mittlerweile zeigt der Markt für Container-Plattformen allerdings deutliche Anzeichen der Kon­solidierung. So verkaufte Docker Anfang 2020 seine Geschäftskundensparte an den Cloud-Dienstleister Mirantis. Doch die Implosion von Docker hat unterm Strich auch gute Seiten, findet Frank Haumann, Partner beim Cloud-Spezialisten Red Reply: «Docker wurde dadurch zu einem echten Open-Source-Produkt. Der Vorteil für die Nutzer ist, dass nun kein Vendor-Lock-in droht.»
Das sehen auch andere Anbieter von Plattformen und Tools für containerisierte Anwendungen so: «Container sind akzeptiert und stellen die Technologie für die nächste Dekade dar, vor allem wegen der steigenden Zahl an containerbasierten Microservices», sagt etwa Thomas Meier, Chief Technologist Intelligent Data Platform & Hybrid IT bei HPE. Für Container sprechen aus seiner Sicht zudem die vielfältigen Einsatzfelder: «Sie sind überall dort zu finden, wo die Vorteile der Technologie Entwicklungs- und Geschäftsprozesse beschleunigen.»
“Für Entwickler gehört Docker zum Standard – gerade beim Evaluieren von neuer Software und solange es sich nicht um eine reine Microsoft-Umgebung handelt„
Frank Haumann, Partner bei Red Reply
Frank Haumann vom Software-Haus Red Reply sieht derzeit drei Haupteinsatzfelder von Containern:
  • Grosse, skalierbare B2C-Anwendungen wie mobile App-Backends, Content-Management-Systeme und Webshops
  • Kleine Anwendungen mit komplexen Implementierungsansätzen, meist aus dem Java-Umfeld. Container ermöglichen dort etwa eine schnelle Evaluierung der Software
  • Die Modernisierung von Legacy-Anwendungen.
Ein Vorteil von Containern ist auch die Automatisierung manueller Prozesse, hebt Oliver Weiss hervor, Managing Delivery Architect beim Beratungshaus und IT-Dienstleister Capgemini: «Container sind eine gute ‹Verpackung› für Software und ihre Konfigurationen, weil typische manuelle Konfigurationsschritte beim Anlegen einer Betriebsumgebung durch revisionssichere Automatisierungsprozesse erleichtert werden.» Das vermeidet Fehler und Verstösse gegen Compliance- und Datenschutzregeln. Ausserdem können Weiss zufolge Container nach dem Schichtensystem aufgebaut werden. «Dadurch lässt sich das Prinzip Separation of Concerns in einer Organisation umsetzen, also die Trennung von Zuständigkeiten.» Dann ist nicht nur eine Abteilung dafür zuständig, einen Container zu liefern. Vielmehr setzt sich dieser aus mehreren Teilen zusammen – «etwa aus dem Ergebnis eines Sprints des Entwicklerteams und den Basis-Images der Betriebs-Software, die wiederum das Cyber-Security-Team auf Resilienz überprüft hat», so Weiss.
“Der Einsatz von Plattformen verleitet schnell dazu, die Anzahl an Containern und zu verwaltenden Artefakte explodieren zu lassen. Dann besteht die Gefahr, dass der Überblick verloren geht, was auf der Plattform eingesetzt wird und welchen Bezug die Teile zueinander haben„
Oliver Weiss, Managing Delivery Architect bei Capgemini
Keine Überraschung ist, dass AWS, Microsoft und Google den Einsatz von Containern vor allem in Verbindung mit Public-Cloud-Services sehen. «Bei allen Container-Diensten konstatieren wir hohe Wachstumsraten», berichtet Sascha Möllering, Solutions Architect Manager bei Amazon Web Services. «Die hohe Akzeptanz lässt sich alleine daran ablesen, dass AWS gleich vier Container-Services bereitstellt.» Mit AWS Fargate für Amazon EKS etwa können Anwender «serverless» Applikationen, die auf die Container-Management-Lösung zurückgreifen, einrichten und verwalten. 
Doch Unternehmen, die gemanagte Container-Umgebungen oder Kubernetes-Cluster einrichten wollen, werden nicht nur bei Cloud-Hyperscalern fündig. Auf den Markt drängen auch heimische Anbieter wie die Swisscom, MTF oder auch VSHN. Hinzu kommen Firmen aus Fernost wie Alibaba, Huawei und Tencent.
Der nächste Schritt
Serverless Computing
Die Marktforscher von Gartner prognostizieren, dass Serverless Computing mittelfristig an die Stelle von Container-Technologien treten wird. Karsten Stöhr, Data Architect bei DataStax erläutert, was sich hinter der Technologie verbirgt.
Mit Serverless Computing oder Function-as-a-Service (FaaS) wollen Cloud-Provider den nächsten Schritt auf dem Weg zur idealen Applikationsentwicklung gehen. Er sieht vor, dass sich die Projektverantwortlichen bei der Entwicklung einer Anwendung nur um die Umsetzung der Geschäftslogik kümmern müssen und kaum noch Zeit für das Aufsetzen und Betreiben der benötigten Infrastruktur aufwenden. Entwickler sollen ihren Code in unterschiedlichen Programmiersprachen als Funktionen direkt in einer Cloud ausführen können. Das erfolgt mithilfe von Application Programming Interface (APIs). 
Allerdings sind diese Funktionen zustandslos (Stateless), und dies beeinflusst die Entwicklung. Mehrere Aufrufe derselben Serverless Function laufen unabhängig voneinander, sie teilen nichts miteinander. Zustände oder Daten müssen also in einer Datenbank oder einem Speichersystem abgelegt werden, welches einen Aufruf eines Web- oder Cloud-Services hinzufügt. Diese Datenspeicherung muss daher sehr schnell arbeiten, um die Antwortzeit der Funktionen durch den zusätzlichen Speicheraufruf möglichst wenig zu verlängern. Außerdem muss eine solches Datenbank mit den Funktionen skalieren können. Nur dann ist auch bei hoher Nutzung und vielen gleichzeitigen Aufrufen eine gleichbleibende Servicequalität und flüssige Bedienung gewährleistet. 
Einschränkung: Die Serverless Functions der einzelnen Cloud-Anbieter unterscheiden sich in verschiedenen Punkten. Dies beeinflusst die Entwicklung von Applikationen und schränkt die freizügige Verwendung auf unterschiedlichen Plattformen gegenüber Containern ein. So unterscheiden sich zum Beispiel die Funktionskonfigurationen, die Einsprungpunkte (Entry Points) und Antwortstrukturen. Gleiches gilt für die Konfiguration der Zugangsdaten. 
Außerdem sollte eine Datenbank verwendet werden, die nativ Multi-Cloud- und Hybrid-Cloud-Infrastrukturen unterstützt, um eine freizügige Verwendbarkeit der entwickelten Serverless Functions auf unterschiedlichen Plattformen zu gewährleisten. Für eine hochskalierbare, Cloud-native Infrastruktur sind traditionelle Datenbanken ungeeignet. Stattdessen benötigt man eine Datenbank mit Masterless-Architektur ohne Single Point of Failure. Nur dann haben alle Applikationen in jeder Umgebung, in der sie gerade laufen, überall Zugriff auf die Daten, und das bei kurzen Latenzzeiten.

Plattform als Basis

Auf eine solche Plattform zu setzen, ist aus Sicht von Capgemini zwar verlockend, erfordert jedoch ein hohes Mass an Disziplin: «Der Einsatz von Plattformen verleitet schnell dazu, die Anzahl an Containern und zu verwaltenden Artefakten schier explodieren zu lassen. Dann besteht die Gefahr, dass der Überblick verloren geht, was auf der Plattform eingesetzt wird und welchen Bezug die Teile zueinander haben», mahnt Oliver Weiss. Verteilte Systeme mit vielen Containern stellen nach seiner Einschätzung zudem höhere Anforderungen an das Monitoring, Logging und Tracing. Für Entwickler heisst das: «Sie müssen nicht nur Software entwickeln können, sondern benötigen zusätzliche Kenntnisse. Dazu zählt der Umgang mit Transaktionen, ausserdem das Wissen, wie sich das Debugging auf einer Container-Plattform zur Fehlersuche einsetzen lässt.»

Container orchestrieren

Neben Plattformen spielen Management-Werkzeuge eine zentrale Rolle beim Einsatz von Containern. Wichtig aus Sicht der Nutzer ist, zwischen Containern und deren Orchestrierung zu unterscheiden, betont Markus Eisele, Developer Adoption Program Lead bei Red Hat: «Container sind quasi die Verpackungseinheit für die Anwendungen und können beliebig auf einer Hardware verschoben werden.» Allerdings ist das manuelle Starten und Stoppen sowie das Verteilen dieser Container auf unterschiedliche Hardware-Komponenten mühsam und fehleranfällig. «An dieser Stelle kommt die Orchestrierung ins Spiel», so der Experte von Red Hat. 
Kubernetes ist derzeit das wichtigste Tool für das Orches­trieren von Containern, erklärt Chip Childers, Executive Director der Cloud Foundry Foundation (CFF): «Kubernetes entwickelt sich zur bevorzugten Infrastrukturplattform für Unternehmen.» Die Lösung stammt ursprünglich von Goo­gle, steht als Open Source aber jedem Unternehmen frei zu Verfügung. Anbieter wie Red Hat, Red Reply und Suse haben rund um Kubernetes Komplettpakete geschnürt.
Ein Beispiel ist OpenShift von Red Hat: «Dies ist nicht einfach nur eine Technologie, die als Baustein implementiert werden muss. Es handelt sich vielmehr um eine unternehmensweite Lösung, die einen zuverlässigen Betrieb von Containern in kritischen Produktivumgebungen ermöglicht», erläutert Markus Eisele.

Komplettpakete

Auch HPE setzt bei seiner Container-Lösung auf ein Komplettpaket inklusive Storage-Interface, mandantenfähigem Datenzugriff und Portierbarkeit von Daten. Die Grundlage bildet die Datenmanagement-Lösung von MapR, einem Anbieter, den HPE 2019 übernommen hat. Pluspunkt einer solchen Plattform ist, dass sie für den Einsatz auf allen Ebenen einer IT-Infrastruktur ausgelegt ist – von der Cloud über Unternehmensrechenzen­tren bis zum Edge. Hinzu kommen Sicherheitsfunktionen wie eine durchgängige Verschlüsselung von Informationen und eine Authentifizierung von Usern. Vergleichbare Funktionen erhalten Anwender auch mit OpenShift und Plattformen, die andere IT-Dienstleister bereitstellen.
Capgemini etwa bietet mit Devonfw eine Referenzarchitektur für Container sowie eine Software-Entwicklungsplattform an. «Sie besteht aus Bausteinen für DevOps, Cloud und Microservices», so Oliver Weiss. «Mit dem Referenzmodell können Unternehmen trotz der wachsenden Zahl an Frameworks und Plattformen Ordnung schaffen und deren Beziehungen untereinander im Blick behalten.»
Solche Container- und Management-Pakete sind, ebenso wie Cloud-Services, insbesondere für KMUs von Vorteil. Sie erhalten Zugang zu Ressourcen, mit denen sie schneller und mit überschaubarem Aufwand Anwendungen entwickeln, anpassen und betreiben können. Allerdings muss immer geprüft werden, inwieweit man sich in die Abhängigkeit eines Anbieters begibt, wenn man eine Referenz-Plattform einsetzt, die von einem Unternehmen bereitgestellt und unterstützt wird. Gleiches gilt für Frameworks.

Überzogene Erwartungen

Zudem gibt es Stimmen, die vor überzogenen Erwartungen in Bezug auf Kubernetes und Co. warnen: «Die Orchestrierung von Produktionsumgebungen hat einen massiven Hype ausgelöst und wird heute hauptsächlich mit Kubernetes umgesetzt. Das setzt jedoch eine Dimension voraus, die viele Unternehmen schlichtweg nicht haben», betont Colin Rand, Vice President Cloud Product Engineering bei Delphix, Anbieter einer Datenplattform für Unternehmen.
“Die Orchestrierung von Produktionsumgebungen hat einen massiven Hype ausgelöst und wird heute hauptsächlich mit Kubernetes umgesetzt. Das setzt jedoch eine Dimension voraus, die viele Unternehmen schlichtweg nicht haben„
Colin Rand, Vice President Cloud Product Engineering bei Delphix
«Unter diesen Umständen ist es sehr komplex, die Anforderungen hinsichtlich Arbeitslast, Management oder Ressourcensicherung zu erfüllen. Ein Return on Investment im Bereich Infrastrukturkosten-Einsparungen wird so quasi unmöglich, egal ob Sie Ihre Produk­tionsumgebung On-Premise oder in der Public Cloud betreiben. Der Aufwand für die IT-Abteilung ist dafür zu gross.» Laut Delphix machen Container aber lokale Entwicklungsumgebungen und den Bau von Software-Pipelines viel produktiver. «Selbst kleine IT-Abteilungen arbeiten hierbei profitabel, wenn sie eine öffentlich zugängliche, vollständig gemanagte und in der Cloud bereitgestellte Container-Plattform verwenden», so Rand.

Runtime-Umgebungen und Autos

Zu den wichtigsten Entwicklungen bei Containern zählt das Verpacken von Anwendungs-Runtime-Umgebungen wie Cloud Foundry. Mit CF können Unternehmen Anwendungen unabhängig von der Infrastruktur ausführen, etwa im eigenen Rechenzentrum oder einer Public oder Hybrid Cloud. Der Programmcode bleibt dabei unverändert. Mit Quarks hat die Cloud Foundry Foundation ein Projekt gestartet, das eine CF-Laufzeitumgebung (CF Application Runtime, CFAR) in Docker-Container statt in Virtual Machines verpackt. Verwaltet wird das Ganze mit Kubernetes. «Eine solche ‹containerisierte › CFAR bietet Entwicklern dieselbe Nutzererfahrung wie Standard-Implementierungen von Cloud Foundry», sagt der Executive Director der Stiftung Chip Childers. Die CF griff bei Quarks auf Vorarbeiten von Suse zurück. Zu den Vorteilen zählt laut Childers, dass Unternehmen, die CFAR und Kubernetes einsetzen, damit eine Plattform für das Life­cycle-Management von Anwendungen zur Verfügung steht. Zielgruppe sind Anwender, die Erfahrung mit Kubernetes haben. «Die Management-Software übernimmt Aufgaben wie die automatische Skalierung von CFAR-Instanzen und das Wiederherstellen von ausgefallenen Nodes», so Childers. Implementieren lässt sich Quarks sowohl in Private als auch in Public Clouds.
“Container sind akzeptiert und die Technologie für die nächste Dekade, vor allem wegen der steigenden Zahl an container­basierten Microservices„
Thomas Meier, Chief Technologist, Intelligent Data Platform & Hybrid IT bei Hewlett Packard Enterprise
Selbst in Fahrzeugen werden Container in Kürze eine wichtige Rolle spielen, prognostiziert Rudolf Grave, Chief Expert Products System Architecture bei Elektrobit. Die Continental-Tochter entwickelt Software und Services für Automobilhersteller. «Derzeit kommen Container vor allem in neuen Plattformen für das High Performance Computing, kurz HPC, zum Einsatz», so Grave. Solche HPC-Systeme werden in Fahrzeug-Architekturen grössere Verbreitung finden, da sich mit ihnen Software-Updates effizient umsetzen lassen.

Fazit & Ausblick

Mit Containern können Unternehmen schneller und flexibler Anwendungen aller Art entwickeln, modernisieren und bereitstellen. Die Einstiegshürden sind niedrig. Zum einen, weil ein Grossteil der Container-Lösungen und der Management-Software Open Source ist. Zum anderen bieten Cloud-Pro­vider und IT-Dienstleister eine breite Palette von Container-Diensten an, bis hin zu gemanagten Services.
Doch ein Selbstläufer ist der Betrieb von Container-Umgebungen nicht, vor allem wenn die Zahl der «containerisierten» Anwendungen stark ansteigt. Ein stringentes Management von Containern ist daher Pflicht, alleine aus Gründen der IT-Sicherheit und Compliance. Von solchen Hürden sollten sich Anwender aber nicht abschrecken lassen. Denn die Digitalisierung bringt es mit sich, dass Unternehmen in immer kürzeren Abständen neue Releases und Apps bereitstellen müssen. Container, Kubernetes und containerisierte Application-Runtimes sind wichtige Hilfsmittel, um diese Herausforderung zu meistern.
Container-Plattformen und Management-Lösungen (Auswahl)
Anbieter Lösungen Einsatzfeld Details
Alibaba Container Service for Kubernetes (ACK) Gemanagter Cloud-Service für die Verwaltung von Kubernetes Bereitstellung von Kubernetes-Clustern in vom Nutzer gewünschten Regionen; Management von Netzwerk- und Storage-Ressourcen, Logging, Bereitstellung von Applikationen
Amazon Web Services Amazon Fargate Compute Engine für Serverless-Datenverarbeitung Arbeitet mit Amazon Elastic Container Service (ECS) und Amazon Elastic Kubernetes Service (EKS) zusammen; Bereitstellung der Server-Infrastruktur für Container, inklusive Sicherheitsfunktionen, Patching, Skalierung
Amazon Elastic Container Registry (ECR) Gemanagte Docker-Container-Registry Bestandteil von Amazon ECS; Zielgruppe Entwickler, die Docker-Images speichern, verwalten und bereitstellen wollen; Infrastruktur wird von AWS gestellt; kompatibel zu Docker CLI
Amazon Elastic Container Service (ECS) Container-Orchestrierung Cloud-Service für Verwaltung und Ausführen von Containern; Support von Docker- und Windows-Containern; Ausführen von Batch-Jobs, Applikationen und Microservices
Amazon Elastic ubernetes Service (EKS) Gemanagter Kubernetes-Dienst Kubernetes betreiben, ohne Steuerungsebene für Start und Stopp von Containern oder Speichern von Cluster-Daten vorzusehen; Kombination mit AWS Fargate für das Serverless-Betreiben von Containern
AWS Bottlerocket OS Container-Betriebssystem Open-Source-Betriebssystem für das Container-Hosting auf Linux-Basis
Apache Apache Mesos Container-Orchestrierung Ursprünglich ein Tool für das Cluster-Management und die Verwaltung beliebiger Workloads; auch für die Verwaltung von Containern tauglich
Cisco Cisco Container Platform Schlüsselfertige, vorkonfigurierte Container-Plattform Basis: ACI-Networking-Plattform und Hyper-converged Infrastructure HyperFlex; Implementierung und Verwaltung von Kubernetes-Clustern; ausgelegt für Cloud-Umgebungen und Unternehmensrechenzentren
Cloud Foundry Cloud Foundry Container Runtime Management von Kubernetes-Clustern Basis: Kubernetes und BOSH; Ziel: einfachere Bereitstellung und Verwaltung von Container-Anwendungen in Kubernetes-Clustern; Implementierung auf Google Cloud Platform, VMware vSphere, AWS und OpenStack
KubeCF Open-Source-Version der Cloud Foundry Application Runtime für Kubernetes Open-Source-Distribution der Cloud Foundry Container Runtime, die auf Kubernetes aufsetzt; von Suse bereitgestellt; Kubernetes übernimmt die Orchestrierung der Container; junges Open-Source-Projekt, das noch am Anfang steht
D2IQ Mesosphere DC/OS Verteiltes Cloud-Betriebssystem Basis: Apache-Mesos-Kernel (Open Source); Implementierung und Management von Containern, verteilten Services und Standard-Anwendungen
Ksphere Management von Kubernetes-Clustern Basis: Mesosphere Kubernetes Engine (MKE); Kommander für föderiertes Management von Kubernetes-Clustern in Cloud-Umgebungen oder Unternehmensrechenzentren; Konvoy für die Installation von Kubernetes
Delphix Delphix DataOps Platform Cloud-Plattform für Datenmanagement Bereitstellung von Daten für Software-Tests unter Einhaltung von Compliance- und Datenschutzbestimmungen
Docker Docker Desktop Container-Runtime-Umgebung Einsatz: Erstellen von Anwendungs-Containern und Microservices in Desktop-Umgebungen unter Windows und Mac OS
Docker Hub Repository von Container-Images auf Basis von Docker Verzeichnis mit Container-Images von Entwicklern, Open-Source-Projekten und Independent Software Vendors (ISV); Bereitstellen und Sharing von Images; optional Einrichtung von privaten Repositories
Dynatrace Dynatrace Microservices and Containers Monitoring von Containern und Microservices Auto-Discovery von Containern; Erstellen einer Topologie von Containern und Microservices in Echtzeit; Basis: ein zentraler Agent (OneAgent)
Fedora Fedora CoreOS Betriebssystem für Container Basis: CoreOS, von Red Hat übernommene Container-Technologie des gleichnamigen Herstellers; Linux-Kern mit minimalem Funktionsumfang; Host-System für Container auf Basis von Docker und OCI
Google Google Kubernetes Engine (GKE) Gemanagter Kubernetes-Dienst Cloudbasierte Lösung auf Grundlage von Kubernetes für Bereitstellung und Verwaltung von Anwendungs-Containern; Einsatzfelder unter anderem Stateful- und Stateless-Applikationen, KI, Machine Learning, Linux, Windows, Web-Anwendungen und Backup-Services
Google Cloud Platform Tools Tools für Überführen von Containern in Produktionsphase Unter anderem mit Cloud Build für Continuous Integration (CI) und Container Registry für das Speichern, Verwalten und Sichern von Docker-Container-Images
Google Cloud Run Gemanagter Service für Ausführung von Stateless-Containern Serverless-Computing-Plattform in Googles Cloud für die Ausführung von Containern; Unterstützung gängiger Programmiersprachen wie Go, Python, Java, PHP, Ruby und so weiter; Nutzung eigener Programm-Binaries
Google Container-Optimized OS Gemanagtes Betriebssystem mit Docker- und Kubernetes-Runtimes Grundlage: Chrome OS; Laufzeitumgebung for Hosting und Ausführung von Docker-Containern; Containerverwaltung mit Kubernetes; Bereitstellung, Verwaltung und Orchestrierung von Containern
HPE HPE Container Platform Container-Plattform auf Basis von Kubernetes Bereitstellung von Containern auf Bare-Metal-Systemen, Cloud-Instanzen und in Virtual Machines; technische Basis: Software-Plattform von BlueData und verteiltes Dateisystem von MapR (von HPE übernommene Firmen)
Huawei Cloud Container Engine Cloudbasierte Container-Plattform Implementierung, Management und Orchestrierung von Applikationen in Container-Form; kompatibel zu Docker
IBM IBM Cloud Kubernetes Service Container-Management Kubernetes als Cloud-Service Verwalteter Container-Service für die Bereitstellung von Anwendungen; optional Anbindung an Services wie IBM Watson und Blockchain; Funktionen für Cluster-Management, den Schutz von Containern sowie den Entwurf eigener Cluster
Ionos Ionos Managed Kubernetes Cloudbasierter Kubernetes-Service Automatisiertes Einrichten und Verwalten von Kubernetes-Clustern; integrierter Persistent Storage
Jelastic Docker Containers as a Service Cloudbasierter Container-Service Basis: Docker; Implementierung von Public und Private Docker Hub Registries; Unterstützung von Microservices; für Multi-Cloud-Umgebungen vorgesehen; automatische Skalierung
Kata Containers Kata Containers Container-Runtime-Umgebung Open-Source-Projekt unter Ägide der OpenStack Foundation (OSF)
Linux Containers LXC, LXD, LXCFS Herstellerunabhängige Entwicklungsumgebungen für Container LXC mit bekannten Tools, Templates und Libraries für Erstellen und Managen von Container-Anwendungen; LXD mit vereinfachten Managementfunktionen für Container
Marathon Marathon Plattform für Container- Orchestrierung Runtime-Vulnerability-Scanner für Kubernetes; Visualisierung von allen Workloads, die auf Clustern vorhanden sind; Sicherheitsregeln (Policies) für Kontrolle von Workloads; Mikrosegmentierung
Microsoft
Azure Arc Bereitstellung von Azure-Datendiensten Unter anderem Bereitstellen und Verwalten von Kubernetes-Clustern und entsprechenden Apps; speziell für hybride Cloud-Infrastrukturen
Azure Kubernetes Service (AKS) Container-Management Kubernetes als Cloud-Service Bereitstellen und Verwalten von Kubernetes-Clustern und Microservices; Telemetriedaten auf Steuerungsebene; Protokollaggregation; Anzeige der Containerintegrität im Azure-Portal
Azure Red Hat OpenShift Container-Management OpenShift als Cloud-Service Bereitstellung von OpenShift-Clustern nach dem Selbstbedienungsbetrieb (Selfservice); OpenShift-Nodes werden gemeinsam von Microsoft und Red Hat aktualisiert und verwaltet
Azure Container Registry Lifecycle-Management für Container Erstellen, Speichern, Sichern, Scannen, Replizieren und Verwalten von Container-Images und Artefakten; automatisiertes Patching
Azure Container Instances Instanzen für Container-Anwendungen Ausführen von Workloads in Azure Container Instances (ACI); keine Verwaltung von virtualisierten Servern erforderlich
Mirantis Docker Enterprise Platform Container-Runtime und -Management Lösung stammt von Docker; Plattform für Entwicklung und Bereitstellung von Container-Anwendungen
Nutanix Nutanix Karbon Managementlösung für Kubernetes Schlüsselfertige Lösung für Betrieb und Lifecycle-Management von Kubernetes-Implementierungen; Verzahnung mit Cloud-Native-Stack von Nutanix
Oracle Oracle Container Native Platform Gemanagte Container Registry und verwaltetes Kubernetes Cloud-Plattform, um containerbasierte Microservices zu entwickeln, zu implementieren und zu betreiben; Bestandteile: Cloud Infrastructure Registry und Oracle Container Engine
Oracle Container Infrastructure Container Engine for Kubernetes Gemanagter Kubernetes-Dienst Bereitstellung und Betrieb von Kubernetes-Clustern; Portabilität von Containern dank Orientierung an Vorgaben der CNCF; durchgängiges Life-cycle-Management; Einrichtung von Kubernetes-Clustern in Bare-Metal- und Private-Worker-Clusterknoten
Portainer Portainer CE Container-Management Open-Source-Management-Toolset für Erstellen und Verwalten von Docker-Containern; Bedienung über grafische Bedienoberfläche
Portshift Kubei Sicherheits-Scanning-Software Runtime-Vulnerability-Scanner für Kubernetes; Visualisierung von allen Workloads, die auf Clustern vorhanden sind
Rancher Labs Rancher Kubernetes Engine (RKE) Kubernetes-Distribution CNCF-zertifizierte Kubernetes-Distribution auf Basis von Docker-Containern; automatisierte Implementierung von Clustern, inklusive Updates und Sicher-heitsfunktionen; herstellerunabhängig
Rancher Container-Management auf Basis von Kubernetes Plattform für Verwaltung von Kubernetes-Clustern aller Art; Implementierung auf Cloud-Plattformen von AWS, Google und Microsoft (Azure); inklusive Workload-Management; Selfservice-Funktionen für Cluster
Red Hat (IBM) Red Hat OpenShift Container-Anwendungsplattform Basis: Kubernetes, Red Hat CoreOS sowie Container-Runtime, Networking-Funktionen, Überwachung, Registry sowie Authentifizierungs- und Autorisierungslösungen
Red Hat CoreOS Container-Betriebssystem Basis: Container-Technologie von CoreOS (von Red Hat übernommen); Host-System auf Linux-Grundlage für Red Hat OpenShift
SoftwareONE OpenShift on Azure Gemanagte Container-Plattform Cloudbasierte Lösung (Platform as a Service, PaaS); Zielgruppe: kleine und mittelständische Unternehmen, die Software-Entwicklung modernisieren möchten; Basis für Aufbau von DevOps-Teams sowie CI/CD-Pipelines (Conti-nuous Integration/Continuous Delivery)
Sumo Logic Continuous Intelligence Platform for Kubernetes Monitoring und Schutz von Kubernetes-Installationen Funktionen für Überwachung der Performance und Sicherheit von Kubernetes-Clustern; Implementierung On-Premise oder im Unternehmensrechenzentrum
Suse Suse CaaS Platform Container-as-a-Service-Plattform Container-Verwaltungslösung für Geschäftsanwendungen; zertifiziert durch CNCF; Funktion für Planung von Workloads; Lastausgleich; Rollout/Rollback von Anwendungen und Updates ohne Unterbrechung des Betriebs
Suse Cloud Application Platform Cloud-Anwendungen über Kubernetes Bereitstellung von Anwendungen mittels Kubernetes; Bereitstellung in Form von Containern in Kubernetes-Clustern; Auto-Skalierung von Anwendungen
Telekom Cloud Container Engine Container-Anwen-dungsplattform Aufbau von Containern sowohl mit virtuellen Maschinen (ECS) als auch mit Bare-Metal-Servern; Grundlage: Kubernetes; Verwaltung von Clustern, Images, Templates und containerfähigen Applikationen
Tencent Tencent Kubernetes Engine Plattform für Container-Management Basis: Kubernetes; Unterstützung von Virtual Machines, Bare-Metal-Servern und GPU-Servern in einem einzelnen Cluster
Twistlock/Palo Alto Networks Prisma Cloud Schutz von Container- und virtuellen Umgebungen Lösung für Absicherung von Containern, VMs und Serverless-Umgebungen; Schutzfunktionen für Anwendungen, Hosts und Netzwerk; KI-gestützte Analyse von Sicherheitsbedrohungen
VMware VMware Tanzu Modernisierung von Anwendungen Sammlung von Tools
VMware Project Pacific vSphere mit Kubernetes Projekt mit Ziel der Integration von Kubernetes in Virtualisierungsplattform vSphere; Kubernetes mit Rolle der Control Plane für vSphere
Container-Plattformen und Management-Lösungen (Auswahl)
Anbieter Lösungen Einsatzfeld Details
Alibaba Container Service for Kubernetes (ACK) Gemanagter Cloud-Service für die Verwaltung von Kubernetes Bereitstellung von Kubernetes-Clustern in vom Nutzer gewünschten Regionen; Management von Netzwerk- und Storage-Ressourcen, Logging, Bereitstellung von Applikationen
Amazon Web Services Amazon Fargate Compute Engine für Serverless-Datenverarbeitung Arbeitet mit Amazon Elastic Container Service (ECS) und Amazon Elastic Kubernetes Service (EKS) zusammen; Bereitstellung der Server-Infrastruktur für Container, inklusive Sicherheitsfunktionen, Patching, Skalierung
Amazon Elastic Container Registry (ECR) Gemanagte Docker-Container-Registry Bestandteil von Amazon ECS; Zielgruppe Entwickler, die Docker-Images speichern, verwalten und bereitstellen wollen; Infrastruktur wird von AWS gestellt; kompatibel zu Docker CLI
Amazon Elastic Container Service (ECS) Container-Orchestrierung Cloud-Service für Verwaltung und Ausführen von Containern; Support von Docker- und Windows-Containern; Ausführen von Batch-Jobs, Applikationen und Microservices
Amazon Elastic ubernetes Service (EKS) Gemanagter Kubernetes-Dienst Kubernetes betreiben, ohne Steuerungsebene für Start und Stopp von Containern oder Speichern von Cluster-Daten vorzusehen; Kombination mit AWS Fargate für das Serverless-Betreiben von Containern
AWS Bottlerocket OS Container-Betriebssystem Open-Source-Betriebssystem für das Container-Hosting auf Linux-Basis
Apache Apache Mesos Container-Orchestrierung Ursprünglich ein Tool für das Cluster-Management und die Verwaltung beliebiger Workloads; auch für die Verwaltung von Containern tauglich
Cisco Cisco Container Platform Schlüsselfertige, vorkonfigurierte Container-Plattform Basis: ACI-Networking-Plattform und Hyper-converged Infrastructure HyperFlex; Implementierung und Verwaltung von Kubernetes-Clustern; ausgelegt für Cloud-Umgebungen und Unternehmensrechenzentren
Cloud Foundry Cloud Foundry Container Runtime Management von Kubernetes-Clustern Basis: Kubernetes und BOSH; Ziel: einfachere Bereitstellung und Verwaltung von Container-Anwendungen in Kubernetes-Clustern; Implementierung auf Google Cloud Platform, VMware vSphere, AWS und OpenStack
KubeCF Open-Source-Version der Cloud Foundry Application Runtime für Kubernetes Open-Source-Distribution der Cloud Foundry Container Runtime, die auf Kubernetes aufsetzt; von Suse bereitgestellt; Kubernetes übernimmt die Orchestrierung der Container; junges Open-Source-Projekt, das noch am Anfang steht
D2IQ Mesosphere DC/OS Verteiltes Cloud-Betriebssystem Basis: Apache-Mesos-Kernel (Open Source); Implementierung und Management von Containern, verteilten Services und Standard-Anwendungen
Ksphere Management von Kubernetes-Clustern Basis: Mesosphere Kubernetes Engine (MKE); Kommander für föderiertes Management von Kubernetes-Clustern in Cloud-Umgebungen oder Unternehmensrechenzentren; Konvoy für die Installation von Kubernetes
Delphix Delphix DataOps Platform Cloud-Plattform für Datenmanagement Bereitstellung von Daten für Software-Tests unter Einhaltung von Compliance- und Datenschutzbestimmungen
Docker Docker Desktop Container-Runtime-Umgebung Einsatz: Erstellen von Anwendungs-Containern und Microservices in Desktop-Umgebungen unter Windows und Mac OS
Docker Hub Repository von Container-Images auf Basis von Docker Verzeichnis mit Container-Images von Entwicklern, Open-Source-Projekten und Independent Software Vendors (ISV); Bereitstellen und Sharing von Images; optional Einrichtung von privaten Repositories
Dynatrace Dynatrace Microservices and Containers Monitoring von Containern und Microservices Auto-Discovery von Containern; Erstellen einer Topologie von Containern und Microservices in Echtzeit; Basis: ein zentraler Agent (OneAgent)
Fedora Fedora CoreOS Betriebssystem für Container Basis: CoreOS, von Red Hat übernommene Container-Technologie des gleichnamigen Herstellers; Linux-Kern mit minimalem Funktionsumfang; Host-System für Container auf Basis von Docker und OCI
Google Google Kubernetes Engine (GKE) Gemanagter Kubernetes-Dienst Cloudbasierte Lösung auf Grundlage von Kubernetes für Bereitstellung und Verwaltung von Anwendungs-Containern; Einsatzfelder unter anderem Stateful- und Stateless-Applikationen, KI, Machine Learning, Linux, Windows, Web-Anwendungen und Backup-Services
Google Cloud Platform Tools Tools für Überführen von Containern in Produktionsphase Unter anderem mit Cloud Build für Continuous Integration (CI) und Container Registry für das Speichern, Verwalten und Sichern von Docker-Container-Images
Google Cloud Run Gemanagter Service für Ausführung von Stateless-Containern Serverless-Computing-Plattform in Googles Cloud für die Ausführung von Containern; Unterstützung gängiger Programmiersprachen wie Go, Python, Java, PHP, Ruby und so weiter; Nutzung eigener Programm-Binaries
Google Container-Optimized OS Gemanagtes Betriebssystem mit Docker- und Kubernetes-Runtimes Grundlage: Chrome OS; Laufzeitumgebung for Hosting und Ausführung von Docker-Containern; Containerverwaltung mit Kubernetes; Bereitstellung, Verwaltung und Orchestrierung von Containern
HPE HPE Container Platform Container-Plattform auf Basis von Kubernetes Bereitstellung von Containern auf Bare-Metal-Systemen, Cloud-Instanzen und in Virtual Machines; technische Basis: Software-Plattform von BlueData und verteiltes Dateisystem von MapR (von HPE übernommene Firmen)
Huawei Cloud Container Engine Cloudbasierte Container-Plattform Implementierung, Management und Orchestrierung von Applikationen in Container-Form; kompatibel zu Docker
IBM IBM Cloud Kubernetes Service Container-Management Kubernetes als Cloud-Service Verwalteter Container-Service für die Bereitstellung von Anwendungen; optional Anbindung an Services wie IBM Watson und Blockchain; Funktionen für Cluster-Management, den Schutz von Containern sowie den Entwurf eigener Cluster
Ionos Ionos Managed Kubernetes Cloudbasierter Kubernetes-Service Automatisiertes Einrichten und Verwalten von Kubernetes-Clustern; integrierter Persistent Storage
Jelastic Docker Containers as a Service Cloudbasierter Container-Service Basis: Docker; Implementierung von Public und Private Docker Hub Registries; Unterstützung von Microservices; für Multi-Cloud-Umgebungen vorgesehen; automatische Skalierung
Kata Containers Kata Containers Container-Runtime-Umgebung Open-Source-Projekt unter Ägide der OpenStack Foundation (OSF)
Linux Containers LXC, LXD, LXCFS Herstellerunabhängige Entwicklungsumgebungen für Container LXC mit bekannten Tools, Templates und Libraries für Erstellen und Managen von Container-Anwendungen; LXD mit vereinfachten Managementfunktionen für Container
Marathon Marathon Plattform für Container- Orchestrierung Runtime-Vulnerability-Scanner für Kubernetes; Visualisierung von allen Workloads, die auf Clustern vorhanden sind; Sicherheitsregeln (Policies) für Kontrolle von Workloads; Mikrosegmentierung
Microsoft
Azure Arc Bereitstellung von Azure-Datendiensten Unter anderem Bereitstellen und Verwalten von Kubernetes-Clustern und entsprechenden Apps; speziell für hybride Cloud-Infrastrukturen
Azure Kubernetes Service (AKS) Container-Management Kubernetes als Cloud-Service Bereitstellen und Verwalten von Kubernetes-Clustern und Microservices; Telemetriedaten auf Steuerungsebene; Protokollaggregation; Anzeige der Containerintegrität im Azure-Portal
Azure Red Hat OpenShift Container-Management OpenShift als Cloud-Service Bereitstellung von OpenShift-Clustern nach dem Selbstbedienungsbetrieb (Selfservice); OpenShift-Nodes werden gemeinsam von Microsoft und Red Hat aktualisiert und verwaltet
Azure Container Registry Lifecycle-Management für Container Erstellen, Speichern, Sichern, Scannen, Replizieren und Verwalten von Container-Images und Artefakten; automatisiertes Patching
Azure Container Instances Instanzen für Container-Anwendungen Ausführen von Workloads in Azure Container Instances (ACI); keine Verwaltung von virtualisierten Servern erforderlich
Mirantis Docker Enterprise Platform Container-Runtime und -Management Lösung stammt von Docker; Plattform für Entwicklung und Bereitstellung von Container-Anwendungen
Nutanix Nutanix Karbon Managementlösung für Kubernetes Schlüsselfertige Lösung für Betrieb und Lifecycle-Management von Kubernetes-Implementierungen; Verzahnung mit Cloud-Native-Stack von Nutanix
Oracle Oracle Container Native Platform Gemanagte Container Registry und verwaltetes Kubernetes Cloud-Plattform, um containerbasierte Microservices zu entwickeln, zu implementieren und zu betreiben; Bestandteile: Cloud Infrastructure Registry und Oracle Container Engine
Oracle Container Infrastructure Container Engine for Kubernetes Gemanagter Kubernetes-Dienst Bereitstellung und Betrieb von Kubernetes-Clustern; Portabilität von Containern dank Orientierung an Vorgaben der CNCF; durchgängiges Life-cycle-Management; Einrichtung von Kubernetes-Clustern in Bare-Metal- und Private-Worker-Clusterknoten
Portainer Portainer CE Container-Management Open-Source-Management-Toolset für Erstellen und Verwalten von Docker-Containern; Bedienung über grafische Bedienoberfläche
Portshift Kubei Sicherheits-Scanning-Software Runtime-Vulnerability-Scanner für Kubernetes; Visualisierung von allen Workloads, die auf Clustern vorhanden sind
Rancher Labs Rancher Kubernetes Engine (RKE) Kubernetes-Distribution CNCF-zertifizierte Kubernetes-Distribution auf Basis von Docker-Containern; automatisierte Implementierung von Clustern, inklusive Updates und Sicher-heitsfunktionen; herstellerunabhängig
Rancher Container-Management auf Basis von Kubernetes Plattform für Verwaltung von Kubernetes-Clustern aller Art; Implementierung auf Cloud-Plattformen von AWS, Google und Microsoft (Azure); inklusive Workload-Management; Selfservice-Funktionen für Cluster
Red Hat (IBM) Red Hat OpenShift Container-Anwendungsplattform Basis: Kubernetes, Red Hat CoreOS sowie Container-Runtime, Networking-Funktionen, Überwachung, Registry sowie Authentifizierungs- und Autorisierungslösungen
Red Hat CoreOS Container-Betriebssystem Basis: Container-Technologie von CoreOS (von Red Hat übernommen); Host-System auf Linux-Grundlage für Red Hat OpenShift
SoftwareONE OpenShift on Azure Gemanagte Container-Plattform Cloudbasierte Lösung (Platform as a Service, PaaS); Zielgruppe: kleine und mittelständische Unternehmen, die Software-Entwicklung modernisieren möchten; Basis für Aufbau von DevOps-Teams sowie CI/CD-Pipelines (Conti-nuous Integration/Continuous Delivery)
Sumo Logic Continuous Intelligence Platform for Kubernetes Monitoring und Schutz von Kubernetes-Installationen Funktionen für Überwachung der Performance und Sicherheit von Kubernetes-Clustern; Implementierung On-Premise oder im Unternehmensrechenzentrum
Suse Suse CaaS Platform Container-as-a-Service-Plattform Container-Verwaltungslösung für Geschäftsanwendungen; zertifiziert durch CNCF; Funktion für Planung von Workloads; Lastausgleich; Rollout/Rollback von Anwendungen und Updates ohne Unterbrechung des Betriebs
Suse Cloud Application Platform Cloud-Anwendungen über Kubernetes Bereitstellung von Anwendungen mittels Kubernetes; Bereitstellung in Form von Containern in Kubernetes-Clustern; Auto-Skalierung von Anwendungen
Telekom Cloud Container Engine Container-Anwen-dungsplattform Aufbau von Containern sowohl mit virtuellen Maschinen (ECS) als auch mit Bare-Metal-Servern; Grundlage: Kubernetes; Verwaltung von Clustern, Images, Templates und containerfähigen Applikationen
Tencent Tencent Kubernetes Engine Plattform für Container-Management Basis: Kubernetes; Unterstützung von Virtual Machines, Bare-Metal-Servern und GPU-Servern in einem einzelnen Cluster
Twistlock/Palo Alto Networks Prisma Cloud Schutz von Container- und virtuellen Umgebungen Lösung für Absicherung von Containern, VMs und Serverless-Umgebungen; Schutzfunktionen für Anwendungen, Hosts und Netzwerk; KI-gestützte Analyse von Sicherheitsbedrohungen
VMware VMware Tanzu Modernisierung von Anwendungen Sammlung von Tools
VMware Project Pacific vSphere mit Kubernetes Projekt mit Ziel der Integration von Kubernetes in Virtualisierungsplattform vSphere; Kubernetes mit Rolle der Control Plane für vSphere

Im Gespräch mit Peter Putz von Dynatrace

Komplexe und dynamische IT-Umgebungen auf Basis von Containern und Microservices stellen deutlich höhere Anforderungen an das Monitoring als herkömmliche Anwendungen, betont Peter Putz, Product Marketing Manager bei Dynatrace, Spezialist für Application Performance Management. Abhilfe versprechen Monitoring-Lösungen, die auf KI-Algorithmen zurückgreifen.
Peter Putz: Product Marketing Manager bei Dynatrace
Quelle: Dynatrace
Computerworld: Herr Putz, welche speziellen Anforderungen in Bezug auf das Performance-Management stellen Container und Kubernetes?
Peter Putz: Kubernetes und Container sind Technologien, die agile Software-Entwicklungsprozesse und skalierbare Microservice-Architekturen möglich machen. Monolithische Applikationen waren im Vergleich dazu relativ statisch. Performance-Testing beschränkte sich bei ihnen auf wenige, gut beherrschbare Szenarien und Parameter.
Demgegenüber sind Microservice-Applikationen mit Tausenden von Containern, die in der Cloud dynamisch und automatisch repliziert oder abgeschaltet werden, hochkomplexe Systeme. Damit sind auch Leistungsengpässe nicht mehr so einfach zu diagnostizieren.
Computerworld: Durch welche Faktoren können solche Engpässe verursacht werden?
Putz: Es kommen mehrere Punkte infrage: Ist ein bestimmter Service schlecht implementiert? Liegt es an der Container-Orchestrierung? Oder an den Cloud-Ressourcen? Gibt es ein regionales oder globales Problem? Tritt das Problem temporär oder kontinuierlich auf? Zudem ist es wichtig, Kostenfaktoren im Auge zu behalten. Cloud-Umgebungen können fast unbeschränkt Ressourcen zur Verfügung stellen, was aber natürlich seinen Preis hat. Dementsprechend stehen Cloud-Architekten vor der Herausforderung, Skalierbarkeit, Performance und Kosteneffizienz parallel zu optimieren.
Computerworld: Erschweren Cloud-Umgebungen, in denen Container und Kubernetes eingesetzt werden, ein End-to-End-Monitoring?
Putz: Alle etablierten Cloud-Service-Provider bieten mittlerweile native Kubernetes-Implementierungen an. Zudem unterstützen sie die Verwendung von Open-Source-Versionen wie Kubernetes und Rancher sowie kommerzielle Distributionen wie Red Hat OpenShift oder Pivotal Cloud Foundry. Monitoring-Lösungen sollten idealerweise das gesamte Ökosystem abdecken. Zudem ist zu bedenken, dass viele Unternehmen nicht nur auf einen Cloud-Anbieter setzen, sondern zunehmend auf hybride Multi-Cloud-Infrastrukturen. Für ein wirkliches End-to-End-Monitoring sind also Tools notwendig, die Transaktionen lückenlos durch unzählige Microservices verfolgen können, die in verschiedenen Cloud- und On-Premise-Umgebungen laufen, Stichwort Distributed Tracing.
Computerworld: Welche Tools stehen Anwendern zur Verfügung, um Leistungsbremsen zu identifizieren und zu beseitigen?
Putz: Anwender können auf viele Open-Source-Werkzeuge zurückgreifen, die unterschiedliche Aspekte im Bereich Monitoring von Kubernetes abdecken. So gibt es spezielle Tools für Metriken, Logs, Traces und Dashboarding.
Computerworld: Worauf müssen Unternehmen achten, wenn sie eine Performance-Monitoring-Lösung für Container, Kubernetes und Microservices beschaffen wollen?
Putz: Wesentliche Kriterien für die Auswahl sind ein automatisches Erkennen von dynamischen Abhängigkeiten zwischen Microservices, Pods und Containern zu unterschiedlichen Zeitpunkten sowie eine zusammenhängende Analyse von unterschiedlichen Monitoring-Daten. Dazu gehören Metriken, Logs, Events, ein Distributed Tracing und eine Analyse des Verhaltens von Services aus Sicht des Nutzers, das User-Experience-Monitoring. Wichtig ist zudem, dass eine Monitoring-Lösung unterschiedliche Entwicklungsumgebungen und Software-Plattformen abdeckt, beispielsweise .NET Core, Node.js, Golang, Python und Java. Eine weitere Anforderung ist eine automatische Fehler-Erkennung.

Im Gespräch mit Haiko Hertes von SoftwareOne

Vom Einsatz von Containern profitieren vor allem Firmen, die Software entwickeln, so Haiko Hertes, Azure Cloud Architect beim IT-Unternehmen SoftwareONE sowie Microsoft Most Valuable Professional (MVP) und Microsoft Certified Trainer (MCT). Falsch liegt seiner Ansicht dagegen, wer Container als univer­selle Lösung oder als Ersatz von Virtual Machines betrachtet.
Haiko Hertes: Azure Cloud Architect bei SoftwareONE
Quelle: SoftwareONE
Computerworld: Herr Hertes, wie ist Ihrer Erfahrung nach der Status von Container-Technologien in Unternehmen?
Computerworld: Aus meiner Sicht war der Hype um Container viel zu gross. Klar, Container haben im richtigen Szenario deutliche Vorteile gegenüber den Alternativen, speziell im Vergleich zu klassischen virtuellen Maschinen. Aber das Szenario muss eben passen. Container sind keinesfalls eine Universallösung für alles und jeden.
Computerworld: Wann kommen Container in Betracht?
Hertes: Sie sind insbesondere für den Betrieb von Test- und Produktivumgebungen auf Basis von Microservices in der Software-Entwicklung ein passendes Mittel. Von daher ist die Akzeptanz bei Firmen, die selbst Anwendungen entwickeln, deutlich höher als bei denen, die das nicht tun. Bei einem grossen Teil der Firmen, die Cloud-Technologien einsetzen oder dies planen, ist jedoch die Cloud gedanklich nur ein weiterer Data-Center-Standort oder ein Ersatz für den On-Premise-Server-Raum. Hier spielen die traditionellen VMs eine deutlich grössere Rolle als Container.
Computerworld: Sind Virtual Machines und Container somit Rivalen oder ergänzen sich diese Technologien?
Hertes: Beide Technologien ergänzen sich. Virtuelle Maschinen sind flexibler, was die Ausgestaltung angeht, Container dagegen  unabhängiger bezüglich der Betriebsumgebung und leichtgewichtiger. Es gibt somit Szenarien, in denen Container schlecht geeignet sind, zum Beispiel wenn es um die persistente Speicherung von Daten geht. Daher werden VMs wohl mittelfristig weiterhin bestehen bleiben. Eine langfristige Prognose ist aber nicht möglich.
Computerworld: Wo lassen sich Container-Technologien wie Docker und Management-Lösungen wie Kubernetes am besten einsetzen?
Hertes: Ein häufig angeführter Vorteil von Containern ist deren Portabilität. Das Container-Image kann sowohl auf einem Entwickler-PC als auch auf On-Premise-Servern sowie bei verschiedenen Cloud-Anbietern als Container betrieben werden. Dadurch lassen sich Container zum Beispiel bei CI/CD-Pipelines (Continuous Integration/Con­tinuous Delivery) in der Software-Entwicklung sehr gut einsetzen, um von der ersten bis zur letzten Stage dieselbe Art der Paketierung und Bereitstellung von Anwendungen zu verwenden. Der Entwickler muss sich keine grösseren Gedanken über die künftige Betriebsumgebung machen und der Betrieb kann exakt dasselbe Container-Image, das vorher in den früheren Stages getestet wurde, in die finale, produktive Stage heben und dort nutzen.
Computerworld: Welche Rolle spielen denn gemanagte cloudbasierte Plattformen im Zusammenhang mit Container-Services?
Hertes: Der Aufbau und Betrieb von Container-Plattformen ist komplex, weil unterschiedliche Systeme benötigt werden, die aneinander angebunden werden müssen. Neben den eigentlichen Container-Hosts ist beispielsweise eine Orchestrierung durch Kubernetes, DC/OS (Distributed Cloud Operating System) oder auch Docker Swarm erforderlich.
Ausserdem werden Container-Registries benötigt, die die Container-Images bereithalten. Diese Systeme bekommt man bei den meisten Cloud-Providern auch als Platform-as-a-Service-Angebot.



Das könnte Sie auch interessieren