企业版Ceph迁移mon节点
若企业版Ceph需要迁移mon节点,请参考以下步骤进行操作。
Note: 迁移mon节点需要进行以下准备工作:
准备工作完成后,依次执行以下步骤进行mon节点迁移(通过设置角色进行迁移,注意最后迁移master节点):- 在原平添上创建一个测试云主机;
- 将主存储进入维护模式,确保主存储已进入维护模式,并确保所有云主机已经关闭;
- 删除mon前(若全部迁移,那么都需要执行),在ceph.conf的global下面增加mon_client_ping_timeout = 1;
- 登录到每台的xdc节点执行以下命令:
[root@ Ceph-1 ~]# for i in `ls /var/run/ceph/rbd*.asok`; do ceph --admin-daemon $i config set mon_client_ping_timeout 1; done
- 执行命令
xms-manage db list
查看ceph mon 的master数据库节点; - 先迁移一个master节点以外的节点,并确保迁移后存储状态为ok;
- 第一个节点迁移完成后,将ceph.conf里面的mon_client_ping_timeout删除,然后执行以下命令;
[root@ Ceph-1 ~]# ceph tell osd.* injectargs '--mon_client_ping_timeout 7'
- 登录到每台的xdc节点各执行以下命令:
[root@ Ceph-2 ~]# for i in `ls /var/run/ceph/rbd*.asok`; do ceph --admin-daemon $i config set mon_client_ping_timeout 7; done
- 以上步骤完成后,依次迁移其他master节点以外的节点,并确认迁移后存储状态为ok;
- 执行以下命令,手动迁移master
DB,并确保存储状态为ok:
[root@ Ceph-master ~]# xms-manage db switch $新monIP
Note: 新monIP需要填写xms-manage db list
输出的其他mon节点IP(存储IP以外的IP),用于admin访问UI。 - 登录UI界面,使用新的master DB节点IP打开操作设置角色;
- 进行最后一个mon节点迁移(master 节点),并确保存储状态为ok;
- 为主存储设置新mon IP地址,并删除原有mon地址;为镜像服务器设置新mon IP地址,并删除原有mon地址;
- 从维护模式手动恢复主存储,并重连主存储;
- 启动之前创建的测试VM,测试存储是否可用,测试成功后,启动业务云主机,确保正常运行并使用存储数据后,企业版Ceph迁移mon节点完成。
Note:
- 迁移后如果想测试存储重启是否恢复,需要进行逐一重启操作,切勿批量操作。
- 若迁移后导致OSD故障,请在某个故障节点执行以下步骤进行修复:
- 执行命令
ceph osd tree
查看所有osd状态; - 执行命令
ceph osd find XXX
(XXX为故障osd编号)查询osd所在节点; - 通过ssh方式登录,例如:
ssh osd_IP
(osd_IP为第二步查到的osd所在节点IP); - 执行命令
systemctl restart ceph-osd@X
重启osd;
- 执行命令