您是否有过因为大意将Ceph Monitor地址配置错的经历? 我曾经就因为马大哈,将Ceph Monitor的地址配置成了管理网络地址,而且是在使用了2天后才发现。(⊙﹏⊙)b
您是否有过由于公司网络重新规划需要修改Ceph Monitor地址的需求? 我在QQ群中就有遇到网友咨询相关处理办法。
直接修改ceph.conf
配置不就行了么?真有这么简单!要知道Ceph是将Monitor配置信息存储在monmap
中的,修改ceph.conf中的配置后,重新启动Monitor,读取monmap
时必然会出现信息不匹配,该Monitor就无法加入仲裁,也就没法与其他的Monitor通信,整个操作就是失败的!
既然直接修改ceph.conf
配置不行,那遇到这种情况,该怎么处理呢? 请看下文::)
在不破坏原有集群的情况下,需要按如下方式动态修改Monitor的地址配置:
下文的操作方法在CentOS7.1 上安装的Hammer 0.94.1上验证有效;配置信息来自真实的环境,为保证安全,抹去了具体地址信息
获取monmap
转储当前Ceph集群的monmap
到/tmp/monmap文件
[root@ceph-xxx-xxx ~]# ceph mon getmap -o /tmp/monmap
got monmap epoch 4
查看monmap
内容
我的示例Ceph集群中包含三个Monitor节点
root@ceph-xxx-xxx ~]# monmaptool --print /tmp/monmap
monmaptool: monmap file /tmp/monmap
epoch 4
fsid 1ee20ded-caae-419d-9fe3-5919f129cf55
last_changed 2016-02-26 17:10:47.603764
created 0.000000