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

    1. drain 节点
    1. kubectl drain <nodename> --ignore-daemonsets --force
    1. 登录对应节点并停止 kubelet 和 docker 已停止对应 daemonset pod
    1. systemctl stop kubelet
    2. systemctl stop docker
    1. 删除 node
    1. kubectl delete no <nodename>
    1. 检查对应节点是否从 ovn-sb 中删除
    1. kubectl ko sbctl show
    1. 如果还存在对应 hostname 的 chassis 手动进行删除
    1. kubectl ko sbctl chassis-del <chassis uuid>