ceph 多mon 挂掉后的快速恢复

# ceph -s
cluster 0fbf2746-8132-4944-af64-e29e24e871bb
health HEALTH_WARN
1 mons down, quorum 1,2 ceph01,ceph03
monmap e3: 3 mons at {ceph01=172.28.13.58:6789/0,ceph02=172.28.13.59:6789/0,ceph03=172.28.13.60:6789/0}
election epoch 616, quorum 1,2 ceph01,ceph03
…….

上面看出ceph02挂掉了.

移除该mon
# ceph mon remove ceph02

清理该mon的文件
# rm -rf /var/lib/ceph/mon/ceph-ceph02

为ceph02 mon 初始化数据库 store.db
# ceph-mon –mkfs -i ceph02 –keyring /etc/ceph/ceph.mon.keyring

补充done空文件
# touch /var/lib/ceph/mon/ceph-ceph02/done

添加ceph02 mon的keyring
# ceph auth get-or-create mon.ceph02 mon ‘allow rwx’ osd ‘allow *’ -o /var/lib/ceph/mon/ceph-ceph02/keyring

补充服务相关空文件:
如果是sysvinit来管理的用这个:
# touch /var/lib/ceph/mon/ceph-ceph02/sysvinit
如果是systemctl来管理的用这个:
# touch /var/lib/ceph/mon/ceph-ceph02/systemd

修改文件权限
# chown -R ceph:ceph /var/lib/ceph/mon/ceph-ceph02

添加mon到集群
# ceph mon add ceph02 172.28.13.59:6789

重启服务
# systemctl restart ceph-mon@ceph02.service

报错了:
Apr 26 17:14:48 ceph02 systemd[1]: ceph-mon@ceph02.service failed.
Apr 26 17:14:48 ceph02 polkitd[741]: Unregistered Authentication Agent for unix-process:29956:253026270 (system bus name :1.10026, object path /org/freedesktop/PolicyKit1/AuthenticationAg
Apr 26 17:14:54 ceph02 polkitd[741]: Registered Authentication Agent for unix-process:29988:253026886 (system bus name :1.10027 [/usr/bin/pkttyagent –notify-fd 5 –fallback], object path
Apr 26 17:14:54 ceph02 systemd[1]: start request repeated too quickly for ceph-mon@ceph02.service
Apr 26 17:14:54 ceph02 systemd[1]: Failed to start Ceph cluster monitor daemon.
— Subject: Unit ceph-mon@ceph02.service has failed

reload下,再次重启正常
# systemctl daemon-reload
# systemctl restart ceph-mon@ceph02.service

# ceph -s
cluster 0fbf2746-8132-4944-af64-e29e24e871bb
health HEALTH_OK
monmap e7: 3 mons at {ceph01=172.28.13.58:6789/0,ceph02=172.28.13.59:6789/0,ceph03=172.28.13.60:6789/0}
election epoch 626, quorum 0,1,2 ceph01,ceph02,ceph03
fsmap e98: 1/1/1 up {0=ceph01=up:active}
osdmap e280: 6 osds: 6 up, 6 in
flags sortbitwise,require_jewel_osds
pgmap v41214: 594 pgs, 16 pools, 2197 MB data, 854 objects
7669 MB used, 592 GB / 599 GB avail
594 active+clean

验证下是否有文件丢失
# ceph osd pool ls
# rados -p rbd ls
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Ceph集群中的单个Mon节点失败时,可以采取以下步骤进行恢复: 1.检查Mon节点的状态:使用命令“ceph mon_status”检查所有Mon节点的状态。如果某个节点的状态为down,则说明该节点出现了故障。 2.启动备用Mon节点:如果Ceph集群中有多个Mon节点,则可以将一个备用Mon节点启动,以替代故障节点。使用命令“ceph mon daemon start {备用节点名}”启动备用节点。 3.添加新的Mon节点:如果Ceph集群中没有备用节点,则需要添加一个新的Mon节点。首先需要在新节点上安装Ceph软件,并为其配置一个新的Mon节点。然后使用命令“ceph mon add {新节点名} {新节点IP地址}”将其添加到集群中。 4.重新启动Ceph集群:一旦备用节点或新节点添加完成,可以使用命令“systemctl restart ceph-mon.target”重新启动Ceph集群。这将使新节点成为活动的Mon节点,取代故障节点。 5.检查Mon节点状态:使用命令“ceph mon_status”检查所有Mon节点的状态,确保新节点已成为活动的Mon节点。 6.重启OSD节点:如果Ceph集群中的OSD节点也受到了故障的影响,需要重启这些节点以确保它们能够重新连接到集群。使用命令“systemctl restart ceph-osd.target”重启OSD节点。 7.检查Ceph集群状态:在完成所有步骤后,使用命令“ceph status”检查Ceph集群的状态,确保所有节点都已成功加入集群并正常运行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值