自己测试的时候用的是虚拟机,在调试过程中遇到切换环境换IP的情况。 那么ceph应该怎样换IP呢?
[TOC]
修改步骤: 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 注:网上很多人的操作方法并不严谨,操作时注意备份。
来源:oschina
链接:https://my.oschina.net/u/4308934/blog/3365727