Skip to content

节点删除

oilbeater edited this page Jun 27, 2022 · 3 revisions

Wiki 下的中文文档将不在维护,请访问我们最新的中文文档网站,获取最新的文档更新。

由于节点上运行的 ovn-controller 组件会定期重连 ovn-sb,chassis 依然会重新注册导致一些网络配置残留,浪费资源并有潜在的规则冲突可能。因此在从 Kubernetes 内删除节点时,请按照下面的步骤来保证网络信息可以正常被清理。

  1. drain 节点
kubectl drain <nodename> --ignore-daemonsets --force
  1. 登录对应节点并停止 kubelet 和 docker 已停止对应 daemonset pod
systemctl stop kubelet
systemctl stop docker
  1. 清理 node 上的 ovs/ovn 残留数据
rm -rf /var/run/openvswitch
rm -rf /var/run/ovn
rm -rf /etc/origin/openvswitch/
rm -rf /etc/origin/ovn/
rm -rf /etc/cni/net.d/00-kube-ovn.conflist
rm -rf /etc/cni/net.d/01-kube-ovn.conflist
rm -rf /var/log/openvswitch
rm -rf /var/log/ovn
  1. 删除 node
kubectl delete no <nodename>
  1. 检查对应节点是否从 ovn-sb 中删除
kubectl ko sbctl show
  1. 如果还存在对应 hostname 的 chassis 手动进行删除
kubectl ko sbctl chassis-del <chassis uuid>
  1. 重启节点,以确保对应的网卡信息,iptable/ipset 规则得以清除
Clone this wiki locally