12.清理集群
清理 Node 节点
停相关进程:
sudo systemctl stop kubelet kube-proxy flanneld docker
清理文件:
# umount kubelet 挂载的目录
mount | grep '/var/lib/kubelet'| awk '{print $3}'|xargs sudo umount
# 删除 kubelet 工作目录
sudo rm -rf /var/lib/kubelet
# 删除 docker 工作目录
sudo rm -rf /var/lib/docker
# 删除 flanneld 写入的网络配置文件
sudo rm -rf /var/run/flannel/
# 删除 docker 的一些运行文件
sudo rm -rf /var/run/docker/
# 删除 systemd unit 文件
sudo rm -rf /etc/systemd/system/{kubelet,docker,flanneld}.service
# 删除程序文件
sudo rm -rf /opt/k8s/bin/*
# 删除证书文件
sudo rm -rf /etc/flanneld/cert /etc/kubernetes/cert
清理 kube-proxy 和 docker 创建的 iptables:
$ sudo iptables -F && sudo iptables -X && sudo iptables -F -t nat && sudo iptables -X -t nat
$
删除 flanneld 和 docker 创建的网桥:
ip link del flannel.1
ip link del docker0
清理 Master 节点
停相关进程:
sudo systemctl stop kube-apiserver kube-controller-manager kube-scheduler
清理文件:
# 删除 kube-apiserver 工作目录
sudo rm -rf /var/run/kubernetes
# 删除 systemd unit 文件
sudo rm -rf /etc/systemd/system/{kube-apiserver,kube-controller-manager,kube-scheduler}.service
# 删除程序文件
sudo rm -rf /opt/k8s/bin/{kube-apiserver,kube-controller-manager,kube-scheduler}
# 删除证书文件
sudo rm -rf /etc/flanneld/cert /etc/kubernetes/cert
清理 etcd 集群
停相关进程:
sudo systemctl stop etcd
清理文件:
# 删除 etcd 的工作目录和数据目录
sudo rm -rf /var/lib/etcd
# 删除 systemd unit 文件
sudo rm -rf /etc/systemd/system/etcd.service
# 删除程序文件
sudo rm -rf /opt/k8s/bin/etcd
# 删除 x509 证书文件
sudo rm -rf /etc/etcd/cert/*