需求概述:有时候需要修改 PVE 集群中的某个节点的 IP 地址,直接修改会导致一系列问题,以下方法为成功实践。
注意:适用于 PVE 版本 7.4.1
目标:修改 node3 节点的 IP地址,从192.168.50.3 修改为 10.10.50.3 (举例)
一、设置节点为本地模式
以 node3 为例,在需要修改 IP 的节点中运行以下命令:
### 停止 PVE 相关服务
systemctl stop pve-cluster.service
systemctl stop corosync.service
### 设置集群系统文件为本地模式,否则无法修改配置
pmxcfs -l
### 删除 corosync 相关配置
rm /etc/pve/corosync.conf
rm -rf /etc/corosync/*
### 重启相关服务
killall pmxcfs
systemctl start pve-cluster.service
### 删除其他节点配置信息(假设有node1 node2 node3)
cd /etc/pve/nodes
rm -rf node1 node2
二、修改节点 IP
### 以下两个文件需要修改 IP
vim /etc/network/interfaces
vim /etc/hosts
### 修改完成建议重启
reboot
三、集群中踢出指定节点
在主节点上运行以下命令,
pvecm delnode node3
rm -rf /etc/pve/nodes/node3
systemctl restart pve-cluster.service
此时,在 PVE Web 页面已经看不到 node3 节点的信息了
四、重新加入集群
清除虚拟机配置信息,加入集群前不能有任何虚拟机运行在节点上,此举是为了防止虚拟机id冲突。先移动配置文件到备份目录,加入集群后再移回去,没有任何影响。
### 在 node3 节点中执行以下命令
mkdir /tmp/qemu-server
mv /etc/pve/nodes/node3/qemu-server/* /tmp/qemu-server/
打开集群的 WEB 控制台,在 数据中心——集群——加入信息 中复制加入信息到 node3 中,重新加入集群,加入成功后在执行以下命令:
mv /tmp/qemu-server/* /etc/pve/nodes/node3/qemu-server/
过一会儿,node3 上的虚拟机就会重新加载出来,此时修改IP的操作已经完成!