On se retrouve aujourd’hui pour déployer Kubernetes sur notre environnement Holodeck.
Retrouver tous les articles en rapport avec VCF Holodeck ici :

https://jbroberjot.com/category/holodeck/
vSphere Kubernetes Service alias vKS permet aux administrateurs vSphere de fournir des clusters Kubernetes en libre-service aux développeurs, tout en conservant un contrôle centralisé sur les ressources et la sécurité. L’offre a été renommé plusieurs fois, de son commencement avec le projet pacific, puis appelé TKGs (Tanzu Kubernetes Grid Service) ou encore vSphere with Tanzu.
Peu importe son nom, retenez une chose : avec vKS, il devient possible de transformer une infrastructure vSphere traditionnelle en une plateforme moderne pour exécuter des workloads conteneurisés et virtualisés de manière unifiée.
Dans une implementation classique K8S, il faut dissocier le runtime qui est installé sur chaque noeud et le control plane qui gère l’état général du cluster.
Voici un peu de doc si vous découvrez Kubernetes : https://kubernetes.io/docs/concepts/overview/components/
Lorsqu’on implémente Kubernetes sur vSphere on va utiliser chaque ESXi comme worker node (runtime) et le Supervisor Cluster (control plane) sera installé dans 3 machines virtuelles pour la redondance. C’est grâce à lui qu’on accédera aux API et donc au fameux CLI kubectl.

le spherelet est une implémentation du kubelet pour ESX : il va veiller à ce que les pods tournent correctement. Il est déployé sur chaque ESX au moment du déploiement de vKS
Passons au déploiement ! Nous allons déployer dans un premier temps une Content Library dédié pour notre environnement Tanzu. C’est ici que les images Virtual Machine Service Images seront stockées, notamment pour les Supervisor Cluster et les Tanzu Kubernetes Grid (TKG) clusters.

Ca se passe dans le vCenter, on clique sur create :






Notre content library étant crée, nous allons passer au déploiement de vKS :

Cliquer sur DEPLOY

Vous pouvez faire un Select All et passer à l’étape suivante

Nous allons déployer vKS sur notre management domain, vous devez donc le sélectionner dans l’interface.
Une fois l’étape de validation passée, vous êtes redirigé vers le vCenter :

Choisissez la stack réseau NSX.

Choisissez un déploiement sur un seul cluster.

Sélectionner la vSAN Default Storage Policy

On paramètre les IPs du supervisor cluster (le control plane de 3 VMs)

Renseigner les différents réseaux qui seront utilisés par les différents services de K8S. Si vous voulez en savoir plus, voici un lien qui explique en détail à quoi correspondent les différents CIDR.

Choisir un environnement small qui suffit amplement pour un lab.

L’installation se lance et peut durer plusieurs dizaines de minutes.
Le cluster vKS est maintenant déployé, la première chose que nous allons faire c’est de créer un vSphere Namespace.

ATTENTION : Le vSphere Namespace n’est pas la même chose qu’un Namespace Kubernetes. Le Namespace côté vSphere est un tenant à qui on assigne de la ressource CPU, RAM et STORAGE. On s’en sert pour isoler des applications, des projets différents ou mêmes des clusters K8s différents. On peut donc aussi séparer son environnement de prod, de dev et de staging.
Pour créer un namespace, rien de plus simple, on clique sur create Namespace et on lui assigne un nom

Ensuite nous allons lui attribuer des permissions pour permettre à notre compte administrator@vpshere.local d’y accéder.


On donne accès à la vSAN default storage policy

On peut aussi lui donner une limite CPU, RAM et/ou de volumétrie STORAGE.

Cliquer sur Open pour ouvrir la page web qui va nous permettre de se connecter au supervisor cluster K8s :


On télécharge le plugin et on le déplace dans notre répertoire
C:\Users\Administrator\bin

Lancer une console Windows ou PowerShell
kubectl.exe vsphere login –server=10.80.0.2 –insecure-skip-tls-verify

On sélectionne le namespace01 précédemment crée.

Ca y’est vous êtes prêt à déployer des pods avec plein de containers dans votre namespace mais ça sera dans un prochain chapitre ! Nous sommes toujours en VCF 5.1.1 et la version 5.2 apporte de nombreux changements surtout pour vKS avec le passage en vSphere 8 U3
https://vsphere-tmm.github.io/Supervisor-Services/

On va donc mettre à jour notre environnement avant de déployer des services vKS.







Laisser un commentaire