问题描述
我有3个节点1个主节点和2个辅助节点,例如mongo1.com
,mongo2.com
和mongo3.com
。
一切正常。当我关闭任何节点时,例如mongo1.com
,我的应用运行正常。我再次关闭第二个节点,例如mongo3.com
,然后应用停止运行。如果我启用了任何节点,则启用该应用,然后再次正常运行。
简而言之,单节点应用程序无法正常工作。寻找行为准则/答案。
我使用rs.status()
检查了状态,两个节点显示了health: 0
和message: unreachable node
。
处于活动状态的第三个节点显示health: 1
和"infoMessage" : "Could not find member to sync from"
解决方法
我进行了多次研究,发现如果关闭2个节点,则可以手动将运行中的节点设置为主节点。
要在3个节点的副本集中拥有一个主节点,至少必须有2个节点可以运行。