需求概述:有时候需要修改 PVE 集群中的某个节点的主机名,直接修改后发现管理控制台的主机名并没有发生改变,以下方法为成功实践。
注意:仅在 PVE 版本 7.4.1 上进行了测试
目标:修改 pve01 的主机名为 pve02
一、操作步骤
1.1 主节点上备份配置文件
mkdir /tmp/pve01
cp -R /etc/pve/nodes/pve01/* /tmp/pve01/
1.2 需要修改的机器上操作步骤
### 修改 /etc/hosts 中的主机名
sed -i "s#pve01#pve02#g" /etc/hosts
pve01 改成 pve02 ....
### 修改主机名
hostnamectl set-hostname pve02
### 重启
reboot
1.3 主节点操作步骤
### 在主节点上备份配置文件
mkdir /tmp/pve01
cp -R /etc/pve/nodes/pve01/* /tmp/pve01/
### 在主节点上修改 /etc/pve/ 中的文件
#### /etc/pve/priv/known_hosts 替换 pve01 为 pve02
sed -i "s#pve01#pve02#g" /etc/pve/priv/known_hosts
#### /etc/pve/priv/authorized_keys 替换 pve01 为 pve02
sed -i "s#pve01#pve02#g" /etc/pve/priv/authorized_keys
#### /etc/pve/corosync.conf 替换 pve01 为 pve02
sed -i "s#pve01#pve02#g" /etc/pve/corosync.conf
#### 还原配置文件
cp -R /tmp/pve01/* /etc/pve/nodes/pve02/
### 重启 pve-cluster
systemctl restart pve-cluster.service
二、注意事项
修改完成后如果 web 控制台上还有老节点的信息,请清除浏览器缓存或者使用无痕模式试试