PVE集群中的节点如果想修改IP,会出现一些意外错误。最典型的就是虽然网络设置中IP已经更新,但集群节点仍然会连接旧的IP。研究了一下,发现PVE GUI中没有考虑这个问题,问题出在节点缓存上。
网上的中文内容都声称要把节点踢出集群重新加进来,这不方便也不安全。经过查找了一番外文资料,解决方案其实很简单,因为PVE的 /etc/pve/priv/known_hosts (集群节点位置的缓存)——没有更新,所以出错。修改 /etc/pve/priv/known_hosts 下对应节点的IP,重启集群服务即可。
如果你是在已经建立集群后才修改IP的话,可能也需要修改 /etc/pve/corosync.conf
另外每个节点的hosts应该没有关于其他节点的信息,如果有多余的内容需要去除。
重启集群服务后检查状态
pvecm status