自己测试的时候用的是虚拟机,在调试过程中遇到切换环境换IP的情况。
那么ceph应该怎样换IP呢?
目录
修改步骤:
1.导出mon的配置;
2.修改mon的配置;
3.修改ceph配置文件
4.关闭ceph集群
5.修改服务器IP,/etc/hosts对应的ip等:
6.导入修改后的mon配置;
7.重启集群
修改步骤如下
1.导出mon配置
ceph mon getmap -o monmap.bin
2.修改mon配置
#打印查看原来的mon配置
monmaptool --print monmap.bin
#删除原来mon配置(多个节点直接在后面加"--rm xxxx"即可)
monmaptool --rm node1 monmap.bin
#添加新的mon配置(多个就多家几个"--add nodeX xxxxx"即可)
monmaptool --add node1 192.168.17.15:6789 monmap.bin
#修改后打印一下,验证是否修改正确
monmaptool --print monmap.bin
3.修改ceph的配置文件
将/etc/ceph.conf文件中原来的ip地址替换为新的ip地址(每一台都必须修改)
如果是用ceph-deploy安装的,可将安装目录下的ceph.conf修改掉,然后将配置文件同步到其他节点。
ceph-deploy --overwrite-conf admin node1
如果ceph-deploy命令已经失效,那么就手动把配置文件拷贝到其他节点。
4.关闭ceph集群(建议将集群内的所有节点中的ceph都关闭)
systemctl stop ceph.target
5.修改服务器IP
修改/etc/sysconfig/network-scripts/ifcfg-XXXX
将原来/etc/hosts内的域名配置中原来的ip替换成新的ip;
重启网卡systemctl restart network
6.导入修改后的mon
ceph-mon -i node1 --inject-monmap monmap.bin
7.重启集群
systemctl restart ceph.target
8.查看集群状态是否正常
ceph -s
如果发现子部件没有启动,则以下面命令为例,先将服务标志删除再启动
systemctl reset-failed ceph-mon@node1.service
systemctl reset-failed ceph-mds@node1.service
systemctl reset-failed ceph-osd@0.service
systemctl reset-failed ceph-osd@1.service
参考文献:
https://blog.csdn.net/signmem/article/details/80312345
注:网上很多人的操作方法并不严谨,操作时注意备份。
转载请注明来源:https://www.cnblogs.com/bugutian/