我有一个双节点集群...一个主节点和一个辅助节点。我随机留下了这条消息
错误: no primary server found in set
有什么建议吗?在副本集选项中,我将其设置为以下:
{"read":"secondary", "auto_reconnect":true, safe: true}
我也在使用新的驱动程序
"mongodb": "1.2.13"
"mongoskin": "0.5.0"
是因为它只是两个节点吗?我是否应该增加停止这些节点的数量 随机读取失败?
答案 0 :(得分:0)
您的副本集中需要(至少)三个成员。您的副本集中应始终有奇数个成员,因为如果您的主要成员发生故障,其他成员会投票查看谁将成为新的主要成员。
如果选民人数相等,你将永远保持平局,而且你将永远无法在新的选举中投票。
答案 1 :(得分:0)
虽然不建议在生产环境中使用2个节点,但您可以将两个节点添加为第三个节点 Arbiter (http://docs.mongodb.org/manual/administration/replica-sets/#replica-set-arbiters) - 这将为您提供奇数票(虽然仲裁员实际上没有存储任何数据,但其唯一存在是投票并避免在选举中没有人拥有多数票的情况)。