温馨提示×

怎么在centos卸载k8s

小樊
39
2026-10-15 03:07:54
栏目: 智能运维

在 CentOS 上“卸载 K8s”通常指彻底清理 kubeadm 安装的集群环境(包括节点和组件)。下面按常见场景给你说明。


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

1. 在 Master / Worker 节点上执行清理

# 重置 kubeadm(会停掉 kubelet、删除 CNI、etcd 等)
sudo kubeadm reset -f

# 停止 kubelet
sudo systemctl stop kubelet
sudo systemctl disable kubelet

2. 清理 iptables / IPVS 规则

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

# 如果使用 IPVS
sudo ipvsadm --clear

3. 删除相关目录和配置

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 ~/.kube

4. 卸载 k8s 相关软件包

sudo yum remove -y kubeadm kubelet kubectl kubernetes-cni
sudo yum autoremove -y

5. 卸载容器运行时(可选)

如果你不再用 Docker / containerd:

# Docker
sudo yum remove -y docker-ce docker-ce-cli
sudo rm -rf /var/lib/docker

# containerd
sudo yum remove -y containerd.io
sudo rm -rf /var/lib/containerd

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

minikube

minikube delete
sudo yum remove -y minikube

kind

kind delete cluster
sudo rm -rf ~/.kind

三、确认是否卸载干净

kubectl get nodes   # 应提示命令不存在
ps -ef | grep kube
sudo netstat -lntp | grep 6443

四、注意事项

  • ⚠️ 数据不可恢复:etcd 数据删除后集群状态就没了
  • 如果是生产环境,先确认:
    • 是否还有业务 Pod
    • 是否做了备份(etcd snapshot)
  • 多节点集群:每个节点都要执行上述步骤

如果你能告诉我:

  • 是 单节点还是多节点
  • 用的 kubeadm / 二进制 / 云厂商
  • CentOS 7 还是 8 / Stream

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

0 踩