KaaS – Installation de Cluster API
Prérequis
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.
- kubectl
- clusterctl
- git
- 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 :
- Clonez le repository GIT
- Récupérez les fichiers de template et de configuration
- 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
- 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