Skip to main content

Как полностью удалить Kubernetes

2 min read
#devops #docker #kubernetes #linux #macos
Как полностью удалить Kubernetes

Я установил кластер kubernetes с помощью kubeadm, следуя этому руководству . Через некоторое время я решил переустановить K8s, но столкнулся с проблемами с удалением всех связанных файлов и не нашел на официальном сайте никакой документации, как удалить кластер, установленный через kubeadm.

Немного погуглив я нашел информацию на разных сайтах и решил ее выложить у себя. Для чего это нужно? Если появилась задача переустановить кубер нужно сначало удалить все, чтобы не помешали остатки кубера новой установке.

Нужно удалить:

- kubectl

- kubeadm

- kebrlet

kubeadm reset 

sudo apt-get purge kubeadm kubectl kubelet kubernetes-cni kube* 

sudo apt-get autoremove 

sudo rm -rf ~/.kube

так же нужно почистить оставшиеся файлы и паки и исправить правила в iptables

kubeadm reset -f 

rm -rf /etc/cni /etc/kubernetes /var/lib/dockershim /var/lib/etcd /var/lib/kubelet /var/run/kubernetes ~/.kube/* 

iptables -F && iptables -X
iptables -t nat -F && iptables -t nat -X
iptables -t raw -F && iptables -t raw -X
iptables -t mangle -F && iptables -t mangle -X 

systemctl restart docker

затем нужно проверить через docker ps -a какие контейнеры остались и удалить их

docker system prune -a

Затем вам необходимо переустановить docker.io, kubeadm, kubectl и kubelet, прежде чем повторно инициализировать кластер.

Обнаружено, что калико добавляет правила брандмауэра в таблицу raw, поэтому также необходимо очистить.

Есть еще один сценарий для дистрибутивов основанных на debian

все примерно тоже самое

sudo kubeadm reset 

sudo apt purge kubectl kubeadm kubelet kubernetes-cni -y 

sudo apt autoremove 

sudo rm -fr /etc/kubernetes/ 

sudo rm -fr ~/.kube/
sudo rm -fr /var/lib/etcd
sudo rm -rf /var/lib/cni/ 

sudo systemctl daemon-reload
 
sudo iptables -F && sudo iptables -t nat -F && sudo iptables -t mangle -F && sudo iptables -X 

docker rm -f `docker ps -a | grep "k8s_" | awk '{print $1}'`

This article was updated on 25 января 2023