
pve + ceph 节点重装
一个三节点的PVE 6.1+CEPH集群,因为系统损坏,全部重新安装。
注意: 逐一重装系统/ 重新加入PVE集群/ 重新加入CEPH集群;
先禁用ceph的recover, 避免其因OSD丢失重建: 任一节点执行:
for i in noout nobackfill norecover;do ceph osd set $i;done
重新加入pve集群前确保已经从集群中删除
备份配置和证书
备份到/root/bak/目录下,然后打包拷贝到其他地方保存(别忘了,否则就不能还原了):
systemctl stop pvestatd.service
systemctl stop pvedaemon.service
systemctl stop pve-cluster.service
tar -czf /root/bak/pve-cluster-backup.tar.gz /var/lib/pve-cluster
tar -czf /root/bak/ssh-backup.tar.gz /root/.ssh
tar -czf /root/bak/corosync-backup.tar.gz /etc/corosync
cp /etc/hosts /root/bak/
cp /etc/network/interfaces /root/bak/
tar cjvf bak-$(hostname).tgz /root/bak
从pve集群删除节点
节点xxx关机,然后在其他节点删除该节点,下面的xxx就是节点名:
pvecm nodes
pvecm delnode xxx
pvecm updatecerts
重新安装PVE
尽量和以前一致,尤其主机名/IP地址。
恢复备份的配置和证书
把刚才的备份拷贝回来还原,按照原来的目录
tar xjvf bak-xxx.tgz
cp /root/bak/hosts /etc/hosts
cp /root/bak/interfaces /etc/network/interfaces
systemctl stop pvestatd.service
systemctl stop pvedaemon.service
systemctl stop pve-cluster.service
cd / ; tar -xvzf /root/bak/ssh-backup.tar.gz
rm -rf /var/lib/pve-cluster
cd / ; tar -xvzf /root/bak/pve-cluster-backup.tar.gz
rm -rf /etc/corosync
cd / ; tar -xvzf /root/bak/corosync-backup.tar.gz
重新加入pve集群
强制加入pve集群,下面的xxx.xxx.xxx.xxx是集群中现存节点的IP地址
pvecm add xxx.xxx.xxx.xxx -force
pvecm updatecerts
重新加入ceph集群
安装ceph,直接使用gui上的pveinstall就可以
在正常ceph节点上删除该节点的mon
ceph mon stat
ceph mon rm xxx
重建mon
在图形界面里面新建即可,注意选择重装的节点
激活ceph的osd
ceph-volume lvm activate --all
后附
双节点集群删除节点需要修改expect:
pvecm expected 1
pvecm delete <dead node>
pvecm updatecerts
一般错误
Permission denied (publickey).
TASK ERROR: Failed to run vncproxy.
最后别忘了恢复ceph的自动恢复,同步数据
for i in noout nobackfill norecover;do ceph osd unset $i;done
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 Dr. KS
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果