KaaS – Installation de Cluster API

1. Outils

Pour installer Cluster API sur un cluster Kubernetes il est nécessaire d’avoir certains outils installés sur votre machine d’administration.

  1. kubectl
  2. clusterctl
  3. git
  4. kctx (optionnel)

Si vous n’avez pas encore installé ces outils, veuillez suivre la page Outils

2. Connexion au cluster

Vérifiez que vous soyez connecté au cluster sur lequel vous souhaitez installer Cluster API.

3. Compte VCD

Cluster API utilise un compte VCD pour communiquer avec l’API de vCloud Director et ceci afin d’automatiser le déploiement et la gestion du cycle de vide de vos clusters.


Vous pouvez utiliser un rôle par défaut ou bien en créer un spécifique, voici les droits à avoir au minimum pour ce compte.

  • User > Manage user’s own API token
  • vApp > Preserve ExtraConfig Elements during OVA Import and Export (follow the KB to enable this right on VCD)
  • Catalog > View Shared Catalogs from Other Organizations
  • Gateway > View Gateway
  • Gateway Services > NAT Configure, LoadBalancer Configure
  • Rights from the default vApp Author role
  • Right ‘Full Control: VMWARE:CAPVCDCLUSTER’
  • Organization VDC > Create a Shared Disk
  • Vous pouvez choisir le CIDR pour vos PODS et vos services.

Installation

Préparez le Provider Cluster API pour vCloud Director

Cluster API a besoin d’un provider afin de pouvoir communiquer avec l’API de vCloud Director afin d’orchestrer le déploiement et de gérer le cycle de vie des clusters.


Ce provider est fourni par VMware et est disponible sur un reposository GIT que l’on va utiliser pour l’installation de Cluster API.

Le principe est le suivant :

  1. Clonez le repository GIT
  2. Récupérez les fichiers de template et de configuration
  3. Déclarez le provider dans la configuration de cluster api

Préparez les templates et fichiers configuration

Déclarer le provider dans la configuration de cluster api

  • Editez le fichier ~/.cluster-api/clusterctl.yaml
  • Modifiez le paramètre url du provider vcd

Exemple :

Exemple :

Installation de Cluster API

  1. Lancez la commande clusterctl init

Vous devez recevoir le message ci-dessous en retour  :

Your management cluster has been initialized successfully!

Appliquez les CRS (ClusterResourceSet)


Le ClusterResourceSet est un objet provenant de cluster api, il permet de créer des ressources automatiquement sur les clusters enfants qui seront déployés. Dans notre cas nous l’utilisons pour déployer automatiquement :

  • Le CNI Antrea
  • Le CSI pour vCloud Director
  • Le CPI pour vCloud Director

Si vous avez copié les fichiers dans un répertoire différent lors des étapes précédentes, vous pouvez modifier la première ligne afin de fournir le bon emplacement.

L’ensemble des PODS et des configurations vont être automatiquement appliqués sur le cluster.


Attendez que l’ensemble de ces PODS soient en status Running

Si une erreur survient, merci de vous référer à la page Dépannage


Etape suivante

Ensuite vous allez devoir déployer vos clusters, cela peut-être soit votre cluster de management ou des clusters de travail.

En fonction de votre besoin, choisissez le lien ci-dessous correspondant :

Déployer un cluster de travail : KaaS – Déployer un cluster de travail

Cluster de Management : KaaS – Cluster de management