温馨提示×

如何删centos上的k8s

小樊
38
2026-09-24 14:45:23
栏目: 智能运维

在 CentOS 上删除 Kubernetes(k8s)通常分为正常卸载强制清理两种情况。下面给你一套通用、可操作的步骤(适用于 kubeadm 安装的集群)。


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

1. 重置 kubeadm(每个节点都要执行)

kubeadm reset -f

2. 停止并禁用 kubelet

systemctl stop kubelet
systemctl disable kubelet

3. 卸载 Kubernetes 相关软件包

yum remove -y kubelet kubeadm kubectl kubernetes-cni

或(CentOS 8 / Stream):

dnf remove -y kubelet kubeadm kubectl

4. 删除配置和数据目录

rm -rf /etc/kubernetes
rm -rf /var/lib/kubelet
rm -rf /var/lib/etcd
rm -rf /var/lib/cni
rm -rf /etc/cni
rm -rf ~/.kube

5. 清理网络(很重要)

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

如果用了 flannel / calico:

ip link delete cni0
ip link delete flannel.1

6. 删除容器运行时(可选)

如果你不再用 Docker / containerd:

Docker:

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

containerd:

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

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

minikube

minikube delete
rm -rf ~/.minikube

kind

kind delete cluster

三、彻底清理(重装前推荐)

reboot

重启后确认:

kubectl get nodes   # 应提示 command not found
ps aux | grep kube  # 应无进程

四、常见问题

1. 端口还被占用?

ss -lntp | grep 6443

2. 想完全重装?

建议:

  • 清空上面所有目录
  • 重启系统
  • 再执行 kubeadm init

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

  • master 还是 node
  • 用的是什么方式(kubeadm / 二进制 / Rancher / k3s)
  • CentOS 版本

我可以给你更精确的命令

0