MongoDB 主节点的选举原则

MongoDB的副本集中,当主节点故障或网络不可达时会触发选举。选举规则基于票数和大多数成员支持,优先级高的节点更可能获胜。如果票数相同则考虑操作日志的新旧。可以通过修改优先级参数影响选举,优先级0的节点不具备选举权但有投票权。
摘要由CSDN通过智能技术生成

每日一句

Life is like a shower. One wrong turn and you're in hot water. 生活就像淋浴,方向转错,水深火热。

概述

MongoDB在副本集中,会自动进行主节点的选举,主节点选举的触发条件:

  • 主节点故障
  • 主节点网络不可达(默认心跳信息为10秒)
  • 人工干预(rs.stepDown(600)

选举规则

一旦触发选举,就要根据一定规则来选主节点。

选举规则是根据票数来决定:

  • 票数最高,且获得了“大多数”成员的投票支持的节点获胜。“大多数”:假设复制集内投票成员数量为N,则大多数为 N/2 + 1。例如:3个投票成员,则大多数的值是2。当复制集内存活成员数量不足大多数时,整个复制集将无法选举出Primary,复制集将无法提供写服务,处于只读状态。
  • 若 票数相同,且都获得了“大多数”成员的投票支持的,数据新的节点获胜。数据的新旧是通过操作日志oplog来对比的。

优先级

在获得票数的时候,优先级(priority)参数影响重大。

可以通过设置优先级(priority)来设置额外票数。优先级即权重,取值为0-1000,相当于可额外增加0-1000的票数,优先级的值越大,就越可能获得多数成员的投票(votes)数。指定较高的值可使成员更有资格成为主要成员&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值