前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[pve][ceph]pve+ceph节点重装

[pve][ceph]pve+ceph节点重装

作者头像
用户9314062
发布2022-05-20 14:11:09
2.6K0
发布2022-05-20 14:11:09
举报
文章被收录于专栏:LINUX开源玩家

一个三节点的PVE 6.1+CEPH集群,因为系统损坏,全部重新安装。

代码语言:javascript
复制
注意:
逐一重装系统/重新加入PVE集群/重新加入CEPH集群;
先禁用ceph的recover,避免其因OSD丢失重建:任一节点执行:
for i in noout nobackfill norecover;do ceph osd set $i;done
重新加入pve集群前确保已经从集群中删除

步骤

备份配置和证书

  • 备份到/root/bak/目录下,然后打包拷贝到其他地方保存(别忘了,否则就不能还原了):
代码语言:javascript
复制

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就是节点名:
代码语言:javascript
复制

pvecm nodes
pvecm delnode xxx
pvecm updatecerts

重新安装PVE

  • 尽量和以前一致,尤其主机名/IP地址。

恢复备份的配置和证书

  • 把刚才的备份拷贝回来还原,按照原来的目录
代码语言:javascript
复制

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地址
代码语言:javascript
复制

pvecm add xxx.xxx.xxx.xxx -force
pvecm updatecerts

重新加入ceph集群

  • 安装ceph,直接使用gui上的pveinstall就可以
  1. 在正常ceph节点上删除该节点的mon
代码语言:javascript
复制
ceph mon stat
ceph mon rm xxx
  1. 重建mon
  • 在图形界面里面新建即可,注意选择重装的节点
  1. 激活ceph的osd
代码语言:javascript
复制

ceph-volume lvm activate --all

后附

1. 双节点集群删除节点需要修改expect:

代码语言:javascript
复制
pvecm expected 1
pvecm delete <dead node>
pvecm updatecerts

2. 一般错误

代码语言:javascript
复制
Permission denied (publickey).
TASK ERROR: Failed to run vncproxy.

修改/etc/hosts同步到所有节点,如:

192.168.254.12 node2.cqcq.com node2

192.168.254.13 node3.cqcq.com node3

3. 最后别忘了恢复ceph的自动恢复,同步数据

代码语言:javascript
复制
for i in noout nobackfill norecover;do ceph osd unset $i;done
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-07-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 LINUX开源玩家 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档