开发者社区> 问答> 正文

mongodb使用新的服务器代替原有的 mongos 和config 服务功能的问题

目前有已搭好的mongodb 分片集群状况为:三台 服务器 每台上运行 一个路由进程(mongos) 一个config_sever 和三个分片,其中三台服务器上的每一个相同shard搭建了副本集例子:
`config = { _id:"shard1", members:[
{_id:0,host:"192.168.30.136:22001"},
{_id:1,host:"192.168.30.137:22001"},
{_id:2,host:"192.168.30.138:22001",arbiterOnly:true}
]
}`
集群架构如下 根据 http://www.lanceyan.com/tech/arch/mongodb_shard1.html 搭建
`sever1 server2 sever3
mongos mongos mongos
config_sever config_sever config_sever
shard1 shard1 shard1
shard2 shard2 shard2
shard3 shard3 shard3`
现在 我想要把mongos(路由) 和config 分离出来,成为三台单独的服务器,即每台上面 一个mongos 一个config原本的三台作为分片重新接入新的服务器。
问题一: 新的在串联新路由和已有的分片时,出现错误,我只能串联三台服务器中的一个副本集,例如我串联了shard1 那么串联shard2时就会出现
"errmsg" : "can't add shard 'shard2/172.31.6.3:22002,172.31.14.250:22002,172.31.14.252:22002' because a local database 'lycamplus' exists in another shard1"
问题二: 在上述情况下,我又选择了拷贝原有的config_server 文件到新的config服务器,这样我就不用去串联副本集了,但是却出现了字符串冲突的问题。即在配置文件中 mongos 的新旧IP冲突。
请问各位朋友如何解决?

展开
收起
落地花开啦 2016-02-29 11:26:19 3799 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
如何运维千台以上游戏云服务器 立即下载
网站/服务器取证 实践与挑战 立即下载
ECS快储存加密技术 立即下载