mongodb 3.4.10 更换集群IP
原有集群配置:
服務器信息:192.168.200.155/156/157
| 服務器155 | 服務器156 | 服務器157 |
| mongos | mongos | mongos |
| config server | config server | config server |
| shard server1 主節點 | shard server1 副節點 | shard server1 仲裁 |
| shard server2 仲裁 | shard server2 主節點 | shard server2 副節點 |
| shard server3 副節點 | shard server3 仲裁 | shard server3 主節點 |
端口信息:
mongos:27001
config:30000
shard1:27101
shard2:27102
shard3:27103
?
現在需要將IP改為正式環境的IP,IP對應關系如下:
192.168.200.155--->10.170.130.93
192.168.200.156--->10.170.130.94
192.168.200.157--->10.170.130.96
?
?
1、停止所有的mongod、mongos實例
ps -ef | grep mongod;查出進程ID后使用kill殺掉
ps -ef | grep mongos;查出進程ID后使用kill殺掉
2、修改三個配置節點信息(config server)
1)以standlone模式啟動第一個config server
./bin/mongod --port 30000 --dbpath /data2/mongodb/config/data
2)到另外一個xshell中登錄config節點
./bin/mongo --port 30000
3)查看并修改副本集信息
> use local
> db.system.replset.find()
?
> cfg = db.system.replset.findOne({_id: 'configs'})
> cfg.members[0].host = "10.170.130.93:30000"
> cfg.members[1].host = "10.170.130.94:30000"
> cfg.members[2].host = "10.170.130.96:30000"
> db.system.replset.update({_id: 'configs'}, cfg)
4)按照以上方法修改其他config server節點配置信息,修改完成后啟動三個節點
./bin/mongod -f conf/configsvr.conf
5)登錄到primary節點,修改分片信息
> use config
> cfg=db.shards.findOne({_id:'shard1'})
> cfg.host="shard1/10.170.130.93:27101,10.170.130.94:27101"
> db.shards.update({_id:'shard1'},cfg)
> cfg = db.shards.findOne({_id: 'shard2'})
> cfg.host = "shard2/10.170.130.94:27102,10.170.130.96:27102"
> db.shards.update({_id: 'shard2'}, cfg)
> cfg = db.shards.findOne({_id: 'shard3'})
> cfg.host = "shard3/10.170.130.94:27103,10.170.130.96:27103"
> db.shards.update({_id: 'shard3'}, cfg)
?
3、修改shard節點信息
1)以standlone模式啟動其中一個節點:
./bin/mongod --port 27101 --dbpath /data2/mongodb/shard1/data(指定的存儲路徑)
2)登錄節點
./bin/mongo --port 27101
3)修改配置服務器信息
> use admin
> db.system.version.find()
> db.system.version.update({"_id" : "shardIdentity"},{"$set":{"configsvrConnectionString" : "configs/10.170.130.93:30000,10.170.130.94:30000,10.170.130.96:30000"}})
4)修改replica set的配置信息, replica set的信息都保存在local數據庫的system.replset集合中
> use local
> cfg = db.system.replset.findOne({_id: 'shard1'})
> cfg.members[0].host="10.170.130.93:27101"
> cfg.members[1].host="10.170.130.94:27101"
> cfg.members[2].host="10.170.130.96:27101"
> db.system.replset.update({_id:'shard1'},cfg)
?
對shard1的其他兩個節點以及shard2、shard3的三個節點做一樣的操作。
5)啟動shard節點
./bin/mongod -f conf/sd1.conf
./bin/mongod -f conf/sd2.conf
./bin/mongod -f conf/sd3.conf
?
4、修改mongos配置信息
1)修改配置文件
修改配置文件中的configdb,改為新IP的configserver
2)啟動mongos節點
./bin/mongos -f conf/mongos.conf
6、驗證是否成功
./bin/mongo --port 27001
總結
以上是生活随笔為你收集整理的mongodb 3.4.10 更换集群IP的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 选取销售订单开发票,控制销售订单中已开票
- 下一篇: ERP - ERP项目实施考核办法