温馨提示×

怎样卸载centos的k8s

小樊
44
2026-10-26 20:52:27
栏目: 智能运维

在 CentOS 上“卸载 k8s”通常指彻底清理 Kubernetes 集群节点(kubeadm 安装方式最常见)。下面按节点角色和清理程度给你说明。


一、如果是 kubeadm 安装的集群(最常见)

1️⃣ 在 Master / Worker 节点上都执行

# 重置 kubeadm
kubeadm reset -f

# 停止 kubelet 和 container runtime
systemctl stop kubelet
systemctl disable kubelet

2️⃣ 清理 Kubernetes 相关文件

# 删除配置和证书
rm -rf /etc/kubernetes
rm -rf ~/.kube
rm -rf /var/lib/kubelet
rm -rf /var/lib/etcd
rm -rf /var/lib/cni
rm -rf /etc/cni

3️⃣ 清理网络(非常重要)

# 删除 iptables 规则
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X

# 如果是 ipvs 模式
ipvsadm --clear 2>/dev/null

4️⃣ 卸载 kubeadm / kubelet / kubectl

yum remove -y kubelet kubeadm kubectl

或(如果用的是 dnf):

dnf remove -y kubelet kubeadm kubectl

5️⃣ 卸载容器运行时(按需)

如果使用 Docker

yum remove -y docker-ce docker-ce-cli containerd.io
rm -rf /var/lib/docker

如果使用 containerd

yum remove -y containerd
rm -rf /var/lib/containerd

二、如果是单节点(如 minikube / kind)

Minikube

minikube delete
rm -rf ~/.minikube

Kind

kind delete cluster

三、从集群中安全移除一个 Worker 节点(不重装系统)

在 Master 节点执行:

kubectl drain <node-name> --ignore-daemonsets --delete-emptydir-data
kubectl delete node <node-name>

然后在 该 Worker 节点执行:

kubeadm reset -f

四、确认是否清理干净

ps aux | grep kube
iptables -L -n
ip link show

五、常见坑提醒 ⚠️

  • 不清理 iptables / CNI → 网络异常
  • 不删 /var/lib/etcd → 重装 master 会失败
  • 多网卡环境注意路由残留

如果你能告诉我:

  • ✅ CentOS 版本(7 / 8 / Stream)
  • ✅ 安装方式(kubeadm / 二进制 / 云厂商)
  • ✅ 单节点还是集群

我可以给你更精确的卸载命令。

0 踩