Suppression/Reset d'un cluster K8S

Introduction

Lors de ses premières expérimentations sous Kubernetes, il n’est pas rare de rater son déploiement.

Avec l’usage de kubeadm, il peut parfois arriver que l’installation échoue en plein milieu d’une étape, laissant des serveurs en partie configurés.

Dans ces cas, il est préférable de s’assurer de supprimer toute trace de paramètres pour pouvoir refaire un nouvel essai à partir d’une configuration vierge

L’idéal étant de ne pas avoir à redéployer ses serveurs, mais simplement d’effacer ce qui aurait pu être réalisé lors de la tentative d’installation avec kubeadm.

Voici donc la démarche à suivre pour reprendre un déploiement à zéro et supprimer toute trace d’un précédent cluster ou d’un début d’installation.

Procédure

Toutes les commandes sont à réaliser en root. Attention cette procédure est associé à l'usage de kubeadm. Si vous avez utilisé d'autres solutions de déploiement, il se peut que la procédure diverge.

Sur tous les nodes

Faire un reset du cluster avec la commande:

kubeadm reset
Commande de reset avec kubeadm

Cliquez sur l'image pour l'agrandir.

Supprimer votre configuration dans votre profil utilisateur standart:

rm -rf /home/mon_user/.kube/

Supprimer votre configurations kubernetes globale:

rm -rf /etc/kubernetes/

Supprimer vos paramètres réseau:

rm -rf /etc/cni/net.d

Sur tous les control plane (master)

Supprimez votre base ETCD:

rm -rf /var/lib/etcd

add-on réseau (optionnel)

Fonction de votre add-on réseau il peut être nécessaire de supprimer les interfaces associées sur tout vos nodes.

ip link set cni0 down
ifconfig cni0 down
brctl delbr cni0
rm -rf /opt/cni/bin

Suppression des packets (optionnel)

Vous pouvez aller jusqu'à la suppression des paquets associée à Kubernetes. Dans ce cas cela dépend de votre distribution. Par exemple sur des OS de type Debian

apt-get remove --purge kubelet kubeadm kubectl