Skip to main content

Rocky Linux 彻底删除 Kubernetes 和 Containerd 的完整指南

1. 删除 Kubernetes 集群

1.1 首先重置 kubeadm

sudo kubeadm reset -f

1.2 删除所有 Kubernetes 相关文件和目录

sudo rm -rf /etc/kubernetes/
sudo rm -rf /var/lib/kubelet/
sudo rm -rf /var/lib/etcd/
sudo rm -rf /var/lib/cni/
sudo rm -rf /etc/cni/
sudo rm -rf $HOME/.kube

2. 卸载 Kubernetes 软件包

2.1 卸载 kubeadm、kubelet 和 kubectl

sudo dnf remove -y kubeadm kubelet kubectl

2.2 删除残留配置文件

sudo rm -f /etc/yum.repos.d/kubernetes.repo

3. 删除 Containerd 容器运行时

3.1 停止并卸载 Containerd

sudo systemctl stop containerd
sudo dnf remove -y containerd.io

3.2 清理 Containerd 数据

sudo rm -rf /var/lib/containerd
sudo rm -rf /etc/containerd

4. 清理网络配置

4.1 删除 CNI 插件

sudo rm -rf /opt/cni/bin/

4.2 清理 iptables 规则

sudo iptables -F
sudo iptables -t nat -F
sudo iptables -t mangle -F
sudo iptables -X

4.3 清理 IPVS 规则

sudo ipvsadm --clear

5. 删除 Docker(如果安装)

sudo dnf remove -y docker-ce docker-ce-cli
sudo rm -rf /var/lib/docker
sudo rm -rf /etc/docker

6. 清理系统残留

6.1 删除相关日志

sudo rm -rf /var/log/containers/
sudo rm -rf /var/log/pods/

6.2 清理临时文件

sudo rm -rf /var/run/kubernetes
sudo rm -rf /var/run/containerd

7. 重启系统(可选)

sudo reboot

8. 验证卸载是否彻底

8.1 检查进程

ps aux | grep -E 'kube|containerd|docker'

8.2 检查安装的软件包

dnf list installed | grep -E 'kube|containerd|docker'

8.3 检查剩余文件

sudo find / -name "*kube*" 2>/dev/null
sudo find / -name "*containerd*" 2>/dev/null
sudo find / -name "*docker*" 2>/dev/null

9. 额外清理(如果需要完全干净的系统)

9.1 删除所有容器镜像

sudo crictl rmi --all

9.2 清理 dnf 缓存

sudo dnf clean all

注意事项

  1. 执行这些命令将永久删除所有 Kubernetes 集群数据和容器
  2. 确保已备份重要数据
  3. 某些目录可能需要 root 权限才能删除
  4. 如果计划重新安装,可以跳过某些清理步骤

完成上述步骤后,您的 Rocky Linux 系统将完全清除 Kubernetes 和 Containerd 的所有组件和配置。