CEPH集群更换ip(更换ip前的防范和更换ip后的恢复)
文章目錄
- 修改`/etc/hosts`中的ip設(shè)置
- 修改`ceph.conf`中的ip地址
- 獲取monmap
- 將`monmap`注入到集群
最近測試部在測試一些功能,在我們不知情得情況下更換了集群內(nèi)外網(wǎng)ip,之后直接甩鍋到我這里(大哭)
接手到的集群是ceph各個組件之間無法成功通信,不能正常運(yùn)行,該情根據(jù)網(wǎng)上的恢復(fù)方法已經(jīng)不可行。因?yàn)閏eph mon 命令無法使用,所以不能夠通過該命令獲取到monmap了。
經(jīng)過對monmaptool工具的調(diào)研,發(fā)現(xiàn)它可以直接從/etc/ceph/ceph.conf中獲取到monmap
所以我的恢復(fù)過程如下
修改/etc/hosts中的ip設(shè)置
將如下ip映射關(guān)系更改為 當(dāng)前設(shè)備ip即可
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost4 localhost4.localdomain4
10.193.56.91 node1
10.193.56.92 node2
10.193.56.93 node3
修改完成之后scp同步到集群其他節(jié)點(diǎn)
修改ceph.conf中的ip地址
其中包括如下ip,全部更改為當(dāng)前集群設(shè)備ip
mon_host = 10.193.56.91,10.193.56.92,10.193.56.93
public)_network = 10.193.0.0/16
cluster_network = 10.193.0.0/16
修改完成后執(zhí)行ceph-deploy --overwrite-conf config push node1 node2 node3
獲取monmap
monmaptool --create --generate -c /etc/ceph/ceph.conf ./monmap 在當(dāng)前目錄生成monmap文件
這里如果是集群 ip還未更改,可以通過
ceph mon getmap -o ./monmap來在當(dāng)前目錄下生成monmap文件
使用monmaptool --print monmap查看集群monmap如下
[root@node1 ~]# monmaptool --print monmap
monmaptool: monmap file monmap
epoch 0
fsid fb4a710d-7b1e-4efe-9482-e46f590a8dcf
last_changed 2019-05-21 13:57:37.783971
created 2019-05-21 13:57:37.783971
0: 10.193.56.91:6789/0 mon.node1 #主要是更改這一部分,將我們新集群的集群網(wǎng)絡(luò)ip寫入到這里
1: 10.193.56.92:6789/0 mon.node2
2: 10.193.56.93:6789/0 mon.node3
使用monmaptool --rm node1 --rm node2 --rm node3 ./monmap刪除對應(yīng)mon.id的配置
[root@node1 ~]# monmaptool --rm node1 --rm node2 --rm node3 monmap
monmaptool: monmap file monmap
monmaptool: removing node1
monmaptool: removing node2
monmaptool: removing node3
monmaptool: writing epoch 0 to monmap (0 monitors)
再次查看monmap內(nèi)容如下
[root@node1 ~]# monmaptool --print monmap
monmaptool: monmap file monmap
epoch 0
fsid fb4a710d-7b1e-4efe-9482-e46f590a8dcf
last_changed 2019-05-21 13:57:37.783971
created 2019-05-21 13:57:37.783971
將我們當(dāng)前設(shè)備的ip加入到monmap中即可,執(zhí)行命令monmaptool --add mon.id 10.112.101.141:6789 --add mon.id 10.112.101.143:6789 --add mon.id 10.112.101.142:6789 monmap
這里填寫清楚當(dāng)前mon的名稱即可,如下
[root@node1 ~]# monmaptool --add node1 10.112.101.141:6789 --add node2 10.112.101.143:6789 --add node3 10.112.101.142:6789 monmap
monmaptool: monmap file monmap
monmaptool: writing epoch 0 to monmap (3 monitors)
[root@node1 ~]# monmaptool --print monmap
monmaptool: monmap file monmap
epoch 0
fsid fb4a710d-7b1e-4efe-9482-e46f590a8dcf
last_changed 2019-05-21 13:57:37.783971
created 2019-05-21 13:57:37.783971
0: 10.112.101.141:6789/0 mon.node1
1: 10.112.101.142:6789/0 mon.node3
2: 10.112.101.143:6789/0 mon.node2
此時我們已成功完成修改monmap內(nèi)容,我們將修改后的monmap 通過scp 同步到集群所有節(jié)點(diǎn)
將monmap注入到集群
注入之前請先停止集群內(nèi)所有的ceph服務(wù),systemctl stop ceph.service 因?yàn)樾枰械慕M件重新讀配置文件,主要是mon重新加載monmap來更改集群通信ip
每個節(jié)點(diǎn)執(zhí)行命令ceph-mon -i node1 --inject-monmap ./monmap,集群都執(zhí)行結(jié)束后每個節(jié)點(diǎn)再將所有ceph服務(wù)重新拉起即可
總結(jié)
以上是生活随笔為你收集整理的CEPH集群更换ip(更换ip前的防范和更换ip后的恢复)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 整微,整形一般要多少钱
- 下一篇: ceph-deploy rpm包的制作