【发布时间】:2015-02-25 18:56:14
【问题描述】:
我是 Mongo 新手。 我正在尝试使用分片和复制来加速 MongoDB 集群。我要实现的集群模式是:https://github.com/ansible/ansible-examples/raw/master/mongodb/images/site.png 我使用服务器 IP 作为复制集名称。 IE。我正在使用以下命令构建复制集:
rs.initiate()
rs.add("10.148.28.51:27118")
rs.add("10.148.28.52:27118")
rs.add("10.148.28.53:27118")
复制配置正确,因此当我在 PRIMARY 主机 10.148.28.51 上执行 rs.status() 时,我得到“10.148.28.51”作为 repl.set 名称:https://gist.github.com/daniilyar/630bc6fe7723ed06f243
但是当我尝试在 mongos 实例中添加分片时,它给了我 2 个相反的错误(取决于我使用的 addShard() 语法变化):
mongos> sh.addShard("10.148.28.51:27118")
{
"ok" : 0,
"errmsg" : "host is part of set 10.148.28.51, use replica set url format <setname>/<server1>,<server2>,...."
}
mongos> sh.addShard("10.148.28.51/10.148.28.51:27118")
{
"ok" : 0,
"errmsg" : "in seed list 10.148.28.51/10.148.28.51:27118, host 10.148.28.51:27118 does not belong to replica set 10.148.28.51"
}
如果 Mongo 同时告诉“主机 X 在副本集 Y”和“主机 X 不属于副本集 Y”,我该如何添加分片?
任何帮助将不胜感激
【问题讨论】: