Von Michael West, Technical Product Manager, VMware
Die digitale Transformation ist längst nicht mehr nur in aller Munde, sondern steht auf der To-do-Liste von IT-Teams. Das bedeutet für diese eine Erweiterung ihrer Zuständigkeiten. Die Mindestanforderungen an Engineering-Teams für Plattformen sind grundlegende Kenntnisse von Containern und entsprechenden Orchestrierungstechnologien. Des Weiteren ein umfassendes Know-how in den Bereichen Storage-, Netzwerk- und Computing-Virtualisierung. Denn Container müssen jetzt als On-Demand-Services für Entwickler bereitgestellt werden.
Die Relevanz von Kubernetes
Entwickler erwarten eine zuverlässige, sichere und hochverfügbare Plattform. Diese muss nach Bedarf nutzbar und skalierbar sein. Das bietet Kubernetes-as-a-Service. “Relevanz” bedeutet für die Plattform-Operations-Teams, dass das Serviceniveau und die Störungsfreiheit von Kubernetes das Angebot in der Public Cloud übertrifft. Eine wichtige Hürde ist die steile Lernkurve. Plattformentwickler müssen in der Lage sein, die Plattform bereitzustellen und zu verwalten. Und zwar auch dann, wenn sie nicht jede einzelne Komponente des Systems im Detail kennen.
Am 12. Februar 2018 kündigten Pivotal und VMware die allgemeine Verfügbarkeit von VMware Pivotal Container Service (PKS) an. PKS nutzt eine Kombination aus Open Source- und Closed Source-Technologien zur Bereitstellung einer sicheren Plattform für Tag-1- und Tag-2-Operationen auf Kubernetes-Clustern. Diese erfordert keine speziellen Kubernetes-Kenntnisse. Was bedeutet das? Da wären zunächst die Vorteile von Kubernetes. Entwickler können damit Anwendungen ganz einfach bereitstellen und skalieren. Workloads werden (mithilfe von Pods) über mehrere Infrastrukturknoten verteilt.
Kubernetes bietet einen anwenderfreundlichen Mechanismus zur Erhöhung von Verfügbarkeit und Skalierbarkeit, weil mehrere Replikate von Anwendungs-Pods überwacht werden können. Somit kann sichergestellt werden, dass der gewünschte Zustand (Anzahl der Replikate) mit dem Ist-Zustand der Anwendung übereinstimmt. Darüber hinaus ermöglicht Kubernetes die Reduzierung der Anwendungsausfallzeit durch unterbrechungsfreie Upgrades der Anwendungs-Pods. PKS stellt ähnliche Funktionen für die Kubernetes-Cluster bereit.
PKS als neueste Version von Kubernetes
Mit PKS können Plattformentwickler Kubernetes-Cluster über einen einzigen API-Aufruf oder CLI-Befehl bereitstellen. Die Überwachung des Systemzustands erfolgt automatisch. PKS erkennt Serviceausfälle oder VM-Abstürze und erstellt den Cluster neu. Und bei Ressourcen-Engpässen lassen sich die Cluster entsprechend skalieren. Ohne PKS ist die Aktualisierung der auf dem Cluster ausgeführten Anwendungs-Pods einfacher als die Aktualisierung von Kubernetes. PKS bietet unterbrechungsfreie Upgrades der Kubernetes-Cluster.
Die Plattform ist in das VMware vSphere-System integriert, sodass die Plattformentwickler die neuen Umgebungen mit vertrauten Tools verwalten können. PKS umfasst Lizenzen und Support für Kubernetes, Harbor (eine Container-Registry der Enterprise-Klasse) und VMware NSX-T. Der Service ist auf vSphere und Public Cloud-Plattformen verfügbar.
Fassen wir noch einmal zusammen: Mit PKS erhalten Sie die neueste Version von Kubernetes. VMware und Pivotal haben sich verpflichtet, die Kompatibilität mit Google Kubernetes Engine (GKE) kontinuierlich zu gewährleisten, sodass Sie immer auf dem neuesten Stand sind. Sie profitieren von einer anwenderfreundlichen Oberfläche zur Bereitstellung von Kubernetes-Clustern, horizontaler Skalierbarkeit, Systemüberwachung und automatischer Fehlerbehebung. Zusätzlich profitieren Sie von unterbrechungsfreien Upgrades und einer Container-Registry der Enterprise-Klasse mit sicherem Signaturservice für Images und Clair-Schwachstellenanalyse. Für die gesamte Bereitstellung werden die logischen Netzwerke von NSX-T genutzt – von den VMs bis hin zu den Kubernetes-Pods.
In den folgenden Produktdemos sehen Sie, wie diese Komponenten in PKS funktionieren:
PKS – Übersicht
Kubernetes-Cluster lassen sich mit einfachen CLI-Befehlen erstellen und skalieren. Die Überwachung des Systemzustands der Clusterkomponenten erfolgt vollautomatisch. Dieses Video gibt einen Überblick über PKS. Es zeigt, wie ein Cluster erstellt und skaliert wird und wie die automatische Fehlerbehebung funktioniert.
Persistent Volumes in PKS
Container sind kurzlebig. Im Kontext von Kubernetes heißt das, dass die auf den Datenträgern des Pods gespeicherten Daten verloren gehen, wenn ein Pod ausfällt oder neu gestartet wird. Persistent Volumes ermöglichen zustandsgebundene Anwendungen. Anwendungs-Pods müssen mit Persistent Volumes definiert werden, die auf einer persistenten Storage-Infrastruktur gemountet sind. Die Schnittstellen für den zugrunde liegenden Storage sind plattformspezifisch und müssen in der Regel manuell konfiguriert werden. Mit PKS bereitgestellte Kubernetes-Cluster wurden bereits vom vSphere-Storage-Anbieter konfiguriert. Das heißt, Anwendungsentwickler können die zugrunde liegenden Persistent Volumes als Teil der Kubernetes-Pod-Spezifikationen definieren und erstellen, ohne das Storage-Team hinzuziehen zu müssen. In diesem Video sehen Sie, wie Sie Storage-Klassen und Persistent Volume-Anforderungen erstellen, das Volume auf einem Pod mounten und Persistenz in einer ansonsten zustandsfreien Anwendung ermöglichen.
Container-Registry (Harbor)
Eine Container-Registry ist mehr als ein Image-Speicherort. Die Kernfunktion ist ein organisierter Satz von Image-Repositorys, aber von einer Registry der Enterprise-Klasse erwarten wir mehr. Images müssen mithilfe von rollenbasierter Zugriffskontrolle geschützt werden, ihr Ursprung muss anhand einer digitalen Signatur überprüfbar sein und Sicherheitslücken bei Paketen müssen erkannt werden. PKS umfasst Harbor, eine Open Source-Container-Registry der Enterprise-Klasse. Dieses Video bietet einen Überblick über Harbor. Eine Anleitung zeigt Ihnen, wie Sie die Vertrauenswürdigkeit von Inhalten gewährleisten und Sicherheitslücken erkennen. Somit werden nur signierte Images ohne kritische Sicherheitslücken in Ihren Kubernetes-Clustern bereitgestellt.
Container-Netzwerke mit NSX-T
PKS umfasst Software-Defined Networking mit NSX-T. NSX-T unterstützt logische Netzwerke zwischen den VMs im Kubernetes-Cluster und den eigentlichen Pods. So können Sie Ihre containerbasierten Anwendungen über eine einzige Steuerungsebene verwalten. Die Integration über das Kubernetes-CNI-Plug-in-Framework ermöglicht die automatische Erstellung von Netzwerkkomponenten in NSX-T bei der bereitstellung der Kubernetes-Spezifikationen. Dieses Video bietet eine Übersicht über die Integration von NSX-T in Kubernetes. Sie erfahren, wie Sie einen Namespace erstellen und bestätigen, dass logische Router und Switches gemäß Ihrem Auftrag erstellt werden. Informieren Sie sich über die Integration von Netzwerkrichtlinien mit der verteilten Firewall von NSX-T. Erfahren Sie, wie Sie mit dem Traceflow-Utility die Wege der Pakete von den logischen Schnittstellen auf VMs oder Pods durch den gesamten Infrastruktur-Stack bis hin zu den Ziel-VMs bzw. -Pods nachverfolgen können.
Diese Videos basieren auf Szenarios, die Sie direkt in unseren VMware Hands-on Labs ausprobieren können. Gehen Sie zu http://labs.hol.vmware.com und wählen Sie das Lab HOL-1832-01-CNA aus.
Im Blog zu nativen Anwendungen in der Cloud finden Sie regelmäßig aktuelle Informationen zu Kubernetes. Folgen Sie uns auch auf Twitter (@cloudnativeapps).
Sie möchten bei VMware immer up to date sein? Dann folgen Sie VMware auf Twitter, XING, LinkedIn & Youtube