温馨提示×

如何卸载Debian的K8s

小樊
47
2026-08-28 01:42:08
栏目: 智能运维

在 Debian 系统上卸载 Kubernetes(K8s)通常需要分步骤清理:kubeadm、kubelet、kubectl、CNI 插件、容器运行时(如 containerd 或 Docker)以及 iptables / 路由规则等。下面给你一套通用、较彻底的卸载流程,适用于 kubeadm 安装的集群节点(控制面或工作节点)。


一、在节点上执行(所有节点)

1️⃣ 重置 Kubernetes 集群(关键步骤)

如果是 kubeadm 安装的集群,先在每个节点执行:

sudo kubeadm reset

该命令会:

  • 停止 kubelet
  • 清理 iptables / IPVS 规则
  • 删除 /etc/kubernetes 里的配置
  • 卸载 CNI 网桥

如果提示需要加 --force

sudo kubeadm reset --force

2️⃣ 清理 iptables / IPVS(防止网络残留)

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

如果是 IPVS 模式:

sudo ipvsadm --clear

3️⃣ 卸载 Kubernetes 软件包

sudo apt remove -y kubeadm kubelet kubectl
sudo apt purge -y kubeadm kubelet kubectl

清理依赖:

sudo apt autoremove -y

4️⃣ 删除 Kubernetes 目录

sudo rm -rf \
  /etc/kubernetes \
  /var/lib/kubelet \
  /var/lib/etcd \
  /var/lib/cni \
  /etc/cni \
  /opt/cni

二、卸载容器运行时(按需)

✅ 如果你用的是 containerd

sudo systemctl stop containerd
sudo apt remove -y containerd
sudo apt purge -y containerd

清理数据:

sudo rm -rf /var/lib/containerd

✅ 如果你用的是 Docker

sudo systemctl stop docker
sudo apt remove -y docker.io docker-ce docker-ce-cli
sudo apt purge -y docker.io docker-ce docker-ce-cli

清理数据(⚠️会删除所有容器和镜像):

sudo rm -rf /var/lib/docker

三、删除 Kubernetes apt 源(可选)

sudo rm -f /etc/apt/sources.list.d/kubernetes.list
sudo rm -f /etc/apt/keyrings/kubernetes-apt-keyring.gpg
sudo apt update

四、如果是多节点集群(重要)

控制节点先执行:

kubectl drain <node> --ignore-daemonsets
kubectl delete node <node>

然后再在对应节点上执行上面的卸载步骤。


五、验证是否已卸载

which kubectl
which kubelet
which kubeadm
systemctl status kubelet

如果都没有输出或状态不存在,说明已卸载干净。


六、快速一键清理(⚠️仅用于测试环境)

sudo kubeadm reset -f
sudo apt purge -y kubeadm kubelet kubectl docker.io containerd
sudo rm -rf /etc/kubernetes /var/lib/kubelet /var/lib/etcd /var/lib/cni /etc/cni /opt/cni /var/lib/containerd /var/lib/docker
sudo iptables -F && sudo iptables -t nat -F

七、常见场景说明

场景 建议
单节点测试 直接 kubeadm reset
生产节点 先 drain 再 delete node
想重装 卸载后可直接重新 kubeadm init
k3s / microk8s 卸载方式不同(需单独告诉我)

如果你愿意,可以告诉我:

  • ✅ 是 apt 安装 还是 二进制
  • ✅ 单节点还是多节点
  • ✅ 用的是 containerd / docker / CRI-O
  • ✅ 是否要 完全重装

我可以给你精确到命令级别的定制方案

0