我已经能够使用docker创建一个分片集群,它有3个分片,每个分片都是一个副本集,副本集的每个成员都有持久存储,我已经测试并工作过了。
问题是,当我停止并删除docker容器,然后再次启动它们以使用相同的持久性存储时,分片不会附加到集群,在googling之后,我认为这是因为它们之前已经附加到了集群。
sh.status( { verbose :1})的输出未显示碎片
sh.addShard("a/mongo-shard-a0:27017")输出如下:
"errmsg" : "E11000 duplicate key error collection: admin.system.version index: _id_ dup key: { : \"shardIdentity\" }"我天真地假设,当docker容器返回并指向相同的数据目录时,集群将与删除容器之前一样。
在这方面的任何帮助都非常感谢,谢谢。
https://stackoverflow.com/questions/47652151
复制相似问题