KaaS – Suppression du bootstrap cluster

Afin de réduire le nombre de clusters utilisés, il est envisageable de transférer les objets Cluster API (Cluster, MachineDeployment, etc.) d’un cluster de management vers un autre.

Cela permet de déplacer les objets Cluster API qui se trouvent actuellement dans le cluster de bootstrap vers votre cluster de management .


Ainsi, vous n’aurez plus qu’un seul cluster de management qui gérera à la fois vos clusters de travail et lui-même.

Prérequis

Avant de continuer la procédure, vous devez vous assurer que :

  • Le cluster de management cible soit correctement installé et fonctionnel.
  • Aucune opération de scaling ou de mise à jour soit en cours.
  • Les versions doivent être identiques sur le cluster source et cible, que ce soit celle de Cluster API ou du Provider CAPVCD.
    • Version du provider VCD : kubectl get pod -n capvcd-system  -l cluster.x-k8s.io/provider=infrastructure-vcd -o=jsonpath='{range .items[*]}{.status.containerStatuses[0].image}{"\r\n"}{end}'
    • Version du provider Cluster API : kubectl get pod -n capi-system  -l cluster.x-k8s.io/provider=cluster-api -o=jsonpath='{range .items[*]}{.status.containerStatuses[0].image}{"\r\n"}{end}'

Vous pouvez, en complément, vous référer à la procédure officielle de Cluster API : ICI

Cluster move

Se connecter au cluster de bootstrap.


Vous pouvez vérifier en faisant un kubectl get nodes pour vérifier que vous êtes bien connecté au cluster de bootstrap.


Aussi, si vous faites un kubectl get cluster vous devez voir votre cluster de management, c’est entre autres cet objet qui va être déplacé.

#kubectl get nodes

#kubectl get cluster

Le provider CAPVCD utilise un secret (capi-user-credentials) présent dans le namespace default qui n’est pas migré par la commande clusterctl.


Nous allons donc copier ce secret sur le cluster de destination.


Modifiez la variable DST en pointant vers le fichier kubeconfig du cluster de management de destination.

Repérez le fichier kubeconfig de connexion à votre cluster de management (cluster de destination)


puis lancer la commande :


clusterctl move --to-kubeconfig=/chemin/vers/kubeconfigCible

Suite à cette commande, vous ne devriez plus avoir d’objet Cluster sur votre cluster de bootstrap.


En revanche,, vous devriez voir l’objet Cluster correspondant à votre cluster de management sur votre cluster de management.