环境: proxmox ve 6.0.1

最近公司添加服务器,把新的主机添加到原先pve集群中,刚开始还是不错的,突然一天发现集群的状态不对了,图标上部署绿色的打钩图案,而是都是灰色或者红色的打叉
proxmox ve(PVE)不删除虚拟机重建集群(非官方)_第1张图片
但是新的主机上已经部署好应用了,如果重新安装很麻烦,官方给的建议是重装,但是也没有说清楚只能重装
于是自己测试了两天,终于搞定了。记录一下方便自己

步骤如下:
1.备份配置文件,任一节点都可以(备份目录为/etc/pve和/etc/corosync),恢复是需要里面的一些文件
tar zcvf pve-bak.tar.gz /etc/pve /etc/corosync

2.上传 proxmox ve 6.0.1的iso文件,并复制出deb包到/data下(目录根据自己的要求来)

3.停止pve服务(不影响kvm虚拟机)

systemctl stop pvestatd.service
systemctl stop pvedaemon.service
systemctl stop pve-cluster.service
systemctl stop corosync

4.清理原来数据和配置文件(按官方的说法是要pxmcfs -l,但是实验后发现清理不干净)
touch '/please-remove-proxmox-ve' #这个必须写,不然提示不能卸载
apt purge -y pve-cluster corosync
rm -rf /etc/pve
rm -rf /etc/corosync
rm -rf /var/lib/pve-cluster
5 .重新安装pve(不想重建deb依赖关系,就直接用dpkg安装了)
cd /data
dpkg -i corosync_3.0.2-pve2_amd64.deb pve-cluster_6.0-4_amd64.deb
dpkg -i libpve-access-control_6.0-2_amd64.deb libpve-guest-common-perl_3.0-1_all.deb \
libpve-storage-perl_6.0-5_all.deb librados2-perl_1.1-2_amd64.deb pve-ha-manager_3.0-2_amd64.deb \
pve-container_3.0-3_all.deb pve-firewall_4.0-5_amd64.deb qemu-server_6.0-5_amd64.deb
dpkg -i pve-manager_6.0-4_amd64.deb

6.修正配置文件
解压备份文件
复制备份文件中etc/pve/priv 和 etc/pve/pve-www.key 到/etc/pve下
cp -r pathbak/etc/pve/priv /etc/pve
cp -r pathbak/etc/pve/pve-www.key /etc/pve
这时候管理界面就可以打开了

7.重新创建集群
点Datacenter图标---》cluster-----》create cluster----》输入集群名称(按自己喜好)
proxmox ve(PVE)不删除虚拟机重建集群(非官方)_第2张图片

8.恢复虚拟机的配置文件
这个时候pve是好了,但是看不到虚拟机

复制备份文件中对于的node名称(如pve254)的qemu-server下的conf文件到对应的文件夹下
cp /pathcbak/etc/pve/nodes/pve254/qemu-server/ /etc/pve/nodes/pve254/qemu-server/
重新刷新页面就可以看到虚拟机的运行情况

到此第一台主机已经恢复了,剩下的主机就是先加入集群,在恢复配置文件(第6和第8步)
重建后的集群
proxmox ve(PVE)不删除虚拟机重建集群(非官方)_第3张图片

如果路径不一样就自行更改

  • 如果集群名称一样可以直接使用备份恢复
    恢复方法
    复制备份文件中 etc/corosync下的authkey和corosync.conf到/etc/corosync下
    复制备份文件中etc/pve 下的所有文件到/etc/pve下
    重启corosync和pve-cluster服务就可以了