Kubermatic exklusiv: Ein Blick voraus und zurück 

Kubermatic ist einer von wenigen Plattformanbietern, die ein hochwertiges und zielgerichtetes Kubernetes Multicluster-Management anbieten. Mit containerisierten Control-Plane, Vanilla Kubernetes-Clustern und einem zentralen Management, das sich um Lifecycle, Berechtigungen und Ausstattung der Cluster kümmert, hebt sich Kubermatic deutlich von vielen Mitbewerbern ab. 

Welche Entwicklung gab es in den vergangenen Monaten auf Ihrer Kubermatic Kubernetes Plattform? Ein Rückblick auf die Release Notes der vergangenen zwei Jahre fasst die Neuerungen und zusätzlichen Features zusammen. 

Installation getrennt vom Internet 

Unabhängig von der Cloud-Umgebung ist der Schutz der Daten und Anwendungen von höchster Wichtigkeit. Demnach wird es immer notwendig sein, sichere Bereiche im Netz zu schaffen, die sehr eingeschränkt erreichbar sind und keinerlei Zugriff ins Internet haben. 

Eine Herausforderung besteht darin, Zonen, die keinen direkten Zugriff auf die im Internet stehenden “Public Registries” haben, Images auf entsprechenden “Private Registries” im eigenen Netz bereitzustellen und von dort zu beziehen. Das ist insbesondere für die Installation der Plattform oder die Bereitstellung von User-Clustern notwendig. Der einfachste Weg hierfür ist das Hinterlegen von Mirror-Repositories in der Container-Runtime. Kubermatic-Cluster, die auf ContainerD als CRI setzen, nutzen genau diesen Ansatz. Hierzu hinterlegt man die eigenen Private Registries, die dann zum Bezugspunkt für Container-Images werden. Für Fälle, in denen absolut keine Verbindung zu öffentlichen Repositories zugelassen ist, wurde ein Image-Loader in der KKP CLI bereitgestellt, der die benötigten Images herunterlädt und in die Container Registry schiebt. 

Operating System Management 

Da für die Bereitstellung von Plattformen und Clustern neben den Container-Images auch Installationspakete für beispielsweise Kubelet oder Container Runtime benötigt werden, wurde im letzten Jahr ein Operating System Manager (OSM) in Form eines Operators integriert. 

Unabhängig davon, ob man ein APT-Repository, einen Red Hat Satellite oder andere OS Management-Tools nutzt, muss man in der Lage sein, Paket Repositories in den Betriebssystemen zu referenzieren. Der OSM ermöglicht es je nach Infrastruktur, Anpassungen am Betriebssystem vorzunehmen. Dazu können Instruktionen in Form von Shell-Skripten in Custom Resources hinterlegt werden. Diese werden später bei der Bereitstellung der Maschine als SystemD Prozess eingerichtet und ausgeführt. 

Konnectivity ersetzt OpenVPN 

Ein weiterer wichtiger Punkt für eingeschränkte Netze betrifft die Konnektivität zwischen Seed- und User-Clustern. OpenVPN, bisher als Tunneling-Technologie für die Kommunikation genutzt, wird durch Konnectivity ersetzt, was Performance- und Skalierungsprobleme des bisherigen Designs löst. 

Cloud Provider- und Cluster-Bereitstellung 

Übliche Anbieter wie vSphere, OpenStack, AWS, GCP, Azure und sogar Hetzner werden von der Kubermatic-Platform für die Provisionierung von Kubernetes-Clustern vollständig unterstützt. Im vergangenen Jahr hat Kubermatic gemeinsam mit Nutanix ein validated Design herausgebracht. Dies ist ein sehr gutes Beispiel dafür, dass nicht einfach wahllos Cloud-Provider angebunden werden. Viel mehr stehen validierte Architekturkonzepte und die dauerhafte Zusammenarbeit mit den Technologiepartnern im Fokus. Neben den bestehenden Cloud-Providern kamen im Laufe der letzten Monate auch VMware Cloud Director und KubeVirt hinzu. Dies unterstreicht die Bemühungen von Kubermatic im Hinblick auf  Infrastrukturbereitstellung und Open-Source-Technologien. 

Eine weitere Neuerung im Zusammenhang mit der Bereitstellung und dem Management von Clustern sind die “External Cluster”, die eine einfache Möglichkeit eröffnen, Managed Cluster bereitzustellen oder einzusammeln. Das trifft auf die Kubernetes-Plattformen, die von den drei großen Hyperscalern offeriert werden, zu. Allerdings lassen sich nun auch KubeOne-Cluster einsammeln, gerade wenn mit KubeOne kleinschrittig begonnen wurde und die wachsende Anzahl ein zentrales Management notwendig macht.   

Kubermatic Release 2.24 

Wie sieht es mit dem gegenwärtigen Stand aus? Vor ca. einem Monat hatte ich die Gelegenheit, mit einem Kollegen von Kubermatic einen umfassenden Einblick in die neuesten Entwicklungen zu erhalten. Die Version 2.24 ist seit einigen Wochen verfügbar und beinhaltet sogar mehr, als ich aus dem Gespräch mitgenommen hatte. 

  • Application-Catalog 

Die Möglichkeit, einen Application-Catalog für User-Cluster zu hinterlegen, besteht schon länger. Bisher musste man jedoch selbst für eine Auswahl an Apps sorgen. Der Standard-App-Katalog bringt inzwischen eine sinnvolle Auswahl an Komponenten mit, die für den Betrieb von Clustern notwendig sind. Wer GitOps einsetzt und Tools benötigt, findet hier beispielsweise ArgoCD oder FluxCD, für Loadbalancing Metallb oder Kube-VIP. Sollte Bedarf an einem Service Mesh bestehen, ist Istio bereits im Katalog vorkonfiguriert. Auch Betriebssicherheit wird durch den optionalen Einsatz von Falco für Runtime und Trivy für Security Scanning adressiert. Ingress und ein wirkungsvoller Cert-Manager für Cluster werden im Application-Catalog vorkonfiguriert aufgeführt. 

  • Image Tar Ball für Air-Gapped Environments 

Wie anfangs erwähnt, besteht nun die Möglichkeit, Images in die eigene Registry zu schieben. Mit Kubermatic 2.24 ist es so auch möglich, die notwendigen Images in einem Tar-Archiv zu bündeln und nach Bedarf bereitzustellen. Das ist besonders vorteilhaft in Umgebungen, in denen kein Zugang zu öffentlichen Repositories besteht und man möglicherweise mit einem USB-Stick arbeiten muss. 

Darf es noch ein bisschen mehr sein? 

Auch was die Anmeldeseite angeht, gibt es nun Möglichkeiten, etwas zu individualisieren, da nun auch die Dex-Anmeldeseite individuell angepasst werden kann. Diese Option ist insbesondere im Bereich des Provider-Brandings interessant. 

Bei Kubernetes-Clustern auf vSphere ist es inzwischen möglich, mehrere Netze anzugeben. Dies ist besonders nützlich in speziellen Konstrukten, die aufgrund regulatorischer Auflagen komplexe Kommunikationsketten benötigen oder in speziellen Architekturen, z.B. für die Anbindung von Speicherlösungen. 

Hinsichtlich des bereitgestellten CNI (Container Network Interface) hat sich mit der aktuellen Version das Blatt ein wenig gewendet. Cilium ist mittlerweile das Standard-CNI. Das ist gerade in puncto Sicherheit eine sehr gute Wahl. 

Bezüglich KubeVirt kann dank der neuen Version nun statt des HTTP-Pfades auch der OCI-Pfad mit docker:// für die Bereitstellung von VMs verwendet werden. Es gibt bereits eine Auswahl an Images, auf die man zurückgreifen kann: https://quay.io/organization/kubermatic-virt-disks

All das und noch mehr kann man von der aktuellen Version 2.24 erwarten. Weiterführende Details sind unter folgendem Link zu finden: https://github.com/kubermatic/kubermatic/blob/main/docs/changelogs/CHANGELOG-2.24.md 

Wie geht es im nächsten Jahr weiter? 

Tiefere Einblicke in die zukünftigen Entwicklungen der Kubermatic Kubernetes Plattform wurden seitens Kubernetes bereits mitgeteilt. Obwohl vieles noch hinter verschlossenen Türen bleibt, gab es einige spannende Details, die an dieser Stelle bereits genannt werden dürfen. 

Die Implementierung des Cloud-Directors von VMware birgt natürlich Potenzial. So kann man davon ausgehen, dass es perspektivisch möglich sein wird, einen eigenen Cluster über mehrere Availability Zonen zu stretchen – sehr vorteilhaft für zum Beispiel Georedundanzen. 

Besonders zu erwähnen ist an dieser Stelle, dass es in nächster Zeit eine Backup-Implementierung auf Basis von Velero geben wird. Auch wenn es hierfür bereits Lösungen von Enterprise-Herstellern gibt, kann dies eine gute Lösung für Unternehmen sein, die noch frisch in dem Thema sind und noch kein vorhandenes Ökosystem für Container-Technologien haben, Applikationen und ihre Persistenzen zu sichern. 

Fazit 

Abschließend ist zu sagen, dass hier ein beispielhafter Weg gegangen wird – sehr fokussiert auf das Wesentliche und gut abgestimmt. Ich freue schon sehr auf das, was 2024 noch kommt und werde berichten, wenn es Neues für die nächsten größeren Releases gibt.