我需要在2个数据中心分发mongo节点。
我对容错表感到困惑:
会员人数= 4
选举新主要人员所需的多数= 3
4号是否意味着我需要总共5名投票成员,或者我可以拥有3名投票成员+ 1名优先级0隐藏成员?
如果DC1关闭,DC2会选择主要吗?
如果DC2关闭,我是否需要将H转换为仲裁者,否则它将保持为主?
基本上,如果某人可以为2个DC提供一些推荐的复制集配置,以确保在DC故障时自动进行主要选择(以最少的手动操作进行选择),那将会很棒。
提前致谢, Kaniska
答案 0 :(得分:0)
数字4是否意味着我需要总共4个投票成员,或者我可以拥有3个投票成员+ 1个优先级0隐藏成员
优先级为0的成员是投票成员。优先级0表示节点不能成为主节点(并且不能触发选举)。
您的示例设置仅显示在两个数据中心之间平均分配的4个总节点。大多数仍然是3,因此,如果任一数据中心发生故障,副本集将不健康并变为只读(无主要)。
要创建2 DC设置,其中一个DC的故障将导致自动故障转移到另一个DC中的主设备,则必须在任一数据中心之外存在节点。由于所有节点在两个数据中心(以及奇数个节点)之间分配,因此至少一个数据中心具有大多数节点。如果该数据中心发生故障,则在占多数的数据中心关闭时,副本集无法自动恢复正常状态。鉴于这种情况,一种常见的模式是在两个数据中心之间平均分割节点,并且在两者之外都有一个仲裁器。