12.清理集群

清理 Node 节点

停相关进程:

  1. $ sudo systemctl stop kubelet kube-proxy flanneld docker kube-proxy
  2. $

清理文件:

  1. $ # umount kubelet 挂载的目录
  2. $ mount | grep '/var/lib/kubelet'| awk '{print $3}'|xargs sudo umount
  3. $ # 删除 kubelet 工作目录
  4. $ sudo rm -rf /var/lib/kubelet
  5. $ # 删除 docker 工作目录
  6. $ sudo rm -rf /var/lib/docker
  7. $ # 删除 flanneld 写入的网络配置文件
  8. $ sudo rm -rf /var/run/flannel/
  9. $ # 删除 docker 的一些运行文件
  10. $ sudo rm -rf /var/run/docker/
  11. $ # 删除 systemd unit 文件
  12. $ sudo rm -rf /etc/systemd/system/{kubelet,docker,flanneld}.service
  13. $ # 删除程序文件
  14. $ sudo rm -rf /opt/k8s/bin/*
  15. $ # 删除证书文件
  16. $ sudo rm -rf /etc/flanneld/cert /etc/kubernetes/cert
  17. $

清理 kube-proxy 和 docker 创建的 iptables:

  1. $ sudo iptables -F && sudo iptables -X && sudo iptables -F -t nat && sudo iptables -X -t nat
  2. $

删除 flanneld 和 docker 创建的网桥:

  1. $ ip link del flannel.1
  2. $ ip link del docker0
  3. $

清理 Master 节点

停相关进程:

  1. $ sudo systemctl stop kube-apiserver kube-controller-manager kube-scheduler kube-nginx
  2. $

清理文件:

  1. $ # 删除 systemd unit 文件
  2. $ sudo rm -rf /etc/systemd/system/{kube-apiserver,kube-controller-manager,kube-scheduler}.service
  3. $ # 删除程序文件
  4. $ sudo rm -rf /opt/k8s/bin/{kube-apiserver,kube-controller-manager,kube-scheduler}
  5. $ # 删除证书文件
  6. $ sudo rm -rf /etc/flanneld/cert /etc/kubernetes/cert
  7. $

清理 etcd 集群

停相关进程:

  1. $ sudo systemctl stop etcd
  2. $

清理文件:

  1. $ # 删除 etcd 的工作目录和数据目录
  2. $ sudo rm -rf /var/lib/etcd
  3. $ # 删除 systemd unit 文件
  4. $ sudo rm -rf /etc/systemd/system/etcd.service
  5. $ # 删除程序文件
  6. $ sudo rm -rf /opt/k8s/bin/etcd
  7. $ # 删除 x509 证书文件
  8. $ sudo rm -rf /etc/etcd/cert/*
  9. $