본문 바로가기
DevOps

[Kubenetes] 쿠버네티스 완전 삭제 방법

by Jayson Jeong 2024. 2. 22.

쿠버네티스의 문제가 발생하거나 재설치가 필요할 때 유용하게 사용할 수 있는 완전 삭제 방법들을 소개한다.

 

목차

  1. 쿠버네티스 완전 삭제 방법
  2. 워커노드 삭제 및 재등록 방법
  3. 도커 완전 삭제 방법

 

1. 쿠버네티스 완전 삭제 방법

1.1. 쿠버네티스 초기화

#쿠버네티스 초기화
kubeadm reset

1.2. 쿠버네티스, 도커 기동 중지

#쿠버네티스 기동 중지
sudo systemctl stop kubelet

#도커 기동 중지
sudo systemctl stop docker

1.3. 네트워크 설정 삭제

#cni 네트워크 삭제
sudo ip link delete cni0

#flannel 네트워크 삭제
sudo ip link delete flannel.1

#cni가 flannel이 아닌 다른 인터페이스라면 해당하는 cni 삭제 필요

1.4. 쿠버네티스 관련 파일 삭제

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

1.5. 쿠버네티스 패키지 삭제

sudo apt-get purge -y kubeadm
sudo apt-get purge -y kubectl
sudo apt-get purge -y kubelet
sudo apt-get purge -y kubebernetes-cni
sudo apt-get autoremove

1.6. 리눅스 리부트

sudo init 6

 


2. 워커 노드 삭제 & 재등록 방법

2.1. 워커노드 초기화(워커노드에서만 진행)

#쿠버네티스 초기화
kubeadm reset

#cni 삭제
rm -rf /etc/cni/net.d/*
rm -rf /etc/kubernetes/*

2.2. 워커노드 삭제(마스터노드에서만 진행)

#등록된 워커노드 삭제
sudo kubectl delete node [워커노드명]

2.3. 토큰 조회 및 생성(마스터노드에서만 진행)

#현재 토큰 조회
sudo kubeadm token list

#토큰 재생성 및 join 명령어 생성
sudo kubeadm token  create --print-join-command

2.3. 워커노드 등록(워커노드에서만 진행)

#마스터노드에서 재생성된 join 명령어 입력
kubeadm join [MasterNodeIp]:6443 --token ~~~~~

 


3. 도커 완전 삭제 방법

3.1. 도커 컨테이너, 이미지 중지 및 삭제

#도커 컨테이너 중지 및 삭제
docker stop [컨테이너명]
docker rm [컨테이너명]

#도커 이미지 삭제
docker rmi [이미지명]

3.2. 도커 서비스 중지

#도커 서비스 중지
systemctl stop docker.socket
systemctl stop docker.service
systemctl stop containerd.service

3.3. 도커 패키지 삭제

#패키지 삭제
sudo apt-get purge -y docker docker-engine docker.io docker-ce docker* containerd.io*
sudo apt-get autoremove -y --purge docker docker-engine docker.io docker-ce docker* containerd.io*

3.4. 도커 관련 디렉토리 삭제

#/var/lib/docker 디렉토리 삭제
sudo rm -rf /var/lib/docker

#docker.sock, docker.pid 삭제
sudo rm -rf /var/run/docker.sock
sudo rm -rf /var/run/docker.pid

#/etc/docker 디렉토리 삭제
sudo rm -rf /etc/docker

#/etc/apparmor.d/docker 디렉토리 삭제
sudo rm /etc/apparmor.d/docker

#그룹 삭제
sudo groupdel docker