vSphere IaaS Control Plane bzw. vSphere Kubernetes Service: Installation einer neuen TKG Service Version

Reading Time 3 Minutes

Mit dem Release von vSphere 8U3 wurde vSphere with Tanzu nicht nur (mehrmals) umbenannt, sondern ein Schritt der „Entkopplung“ von TKGs von der vCenter Version vorgenommen.

Bis dahin war es so, dass TKGs und vSphere with Tanzu als eine Einheit und damit als Synonym füreinander standen.
Ein Nachteil davon war, dass die verfügbaren Kubernetes-Versionen für die Tanzu Kubernetes Cluster (also die „Kinder“-Cluster des Supervisor Clusters) von der Version des vCenter-Servers abhingen.

Wollte man ein aktuelles k8s Release einsetzen, musste man im ersten Schritt gezwungenermaßen das vCenter updaten.

Seit vSphere 8U3 gibt es hier nun zusätzlich zur IaaS Control Plane vSphere Kubernetes Service, die uns den Supervisor zur Verfügung stellt, auch einen TKGs Service, der für die Tanzu Kubernetes Cluster (TKC) zuständig ist. Da man diesen unabhängig aktualisieren kann, erhält man dadurch schneller/einfacher Zugriff auf aktuelle k8s Releases 🥳🥳🥳

Im folgenden will ich kurz zeigen, wie man das dolle Ding aktualisiert.

Schauen wir doch erstmal, welche TKGs Service Version am Laufen ist.
Hierzu im vCenter durchhangeln, unter Workload Management >> Supervisors >> den entsprechenden Supervisor >> Configure >> Supervisor Services >> Overview

In meinem Fall läuft der TKGs Service bereits auf v3.1.1, die mit vCenter 8U3b kam.
Nun wurde aber unabhängig vom vCenter mittlerweile eine neue Version (v3.2.0) veröffentlicht, die man sich manuell herunterladen und hinzufügen kann.

Warum ist das cool?
Weil diese neue Version unabhängig von ein paar Bug Fixes natürlich auch neue Features und Optionen ermöglicht, wie z.B. den Einsatz von Kubernetes 1.31, Windows Server als Worker Nodes (WTF?!), Anpassungen an die API (bye bye Tanzu-naming convention) usw…
(Hier die Release Notes, schau selbst nach!)

Schönes Beispiel: Es gibt zwar Release 1.31.1, aber ohne das Service Update kann ich sie nicht nutzen:

Wie oben bereits erwähnt muss ich dazu jetzt nicht extra das vCenter aktualisieren, sondern lediglich den Service.
Damit ich die neue Version installieren kann, geht’s erstmal im Workload Management zu den Services >> Tanzu Kubernetes Grid Service

Jetzt erstmal schauen, welche Versionen wir überhaupt nutzen können, unter „Manage Versions“:

Wie man sieht, gibt es hier zwei Versionen. Version 3.1.1 kam automatisch zur Auswahl nach dem vCenter Update auf v8U3b, die ist bei mir bereits aktiv.

Die neue Version 3.2.0 taucht hier zur Auswahl noch nicht, die muss man sich selbst laden, und zwar gibts die alles hier:
vSphere Supervisor Services

Also lade ich mir das Stück YAML runter…

…und lade es hier unter „Add New Version“ hoch:

…“Upload„…

…“Finish„.

Ein süßer kleiner grüner Kasten bestätigt mir, dass ich nun die neue Version auf meine Supervisor anwenden kann:

Wenn ich nun noch mal unter „Manage Versions“ nachschaue, ist sie auch dort zu sehen:

Also, zurück zu meinem Supervisor >> Configure >> Supervisor Services Overview, rechts dann den Tanzu Kubernetes Grid Service auswählen und „Manage“ klicken:

…und die neue Version für meinen Supervisor auswählen…

…kurz „reviewen“, aha ja, sieht gut aus, Finish:

Es macht jetzt irgendwas und hat meinen Service sogar zu „Kubernetes Service“ umbenannt:

Dann kam kurz dieser Fehler hier *schluck*:

Doch ein paar Minuten später war er wieder weg (vermutlich lag es an der Hyper Performance meines Labs) und war kurz darauf fertig:

In „Manage Version“ können wir jetzt noch ein wenig aufräumen und die Versionen, auf die wir keine Lust mehr haben, zuerst Deaktivieren, dann Löschen:

Und nun kann ich z.b auf das aktuellste Kubernetes Release (hier 1.31.1) für meine Workload Cluster zugreifen, OHNE vorher das vCenter oder meinen Supervisor Cluster aktualisieren zu müssen 👍. Und (aufgrund der API Änderungen) werde ich auch schon darauf hingewiesen, dass „tanzukubernetesrelease“ Schnee von gestern ist und nicht mehr genutzt werden sollte.

Fazit:
VMware by Broadcom zieht sein Ding durch und baut seine Kubernetes Integration flexibler und unabhängiger von der Tanzu Division in vSphere/VCF ein.

Waren bisher immer vCenter Updates notwendig, um an neue Features, Funktionen und Versionen des Supervisor Clusters und der Workload Cluster zu kommen, reicht es nun aus, ein TKG Service Update durchzuführen.