1.故障切换恢复
副本集能够自动进行故障切换恢复。如果primary掉线或者无反应且多数的副本集成员能够相互连接,则选出一个新的primary。
在多数情况下,当primary宕机、不可用或者是不适合做primary时,在没有管理者干预的几秒后会进行故障切换。
如果MongoDB部署没有如预期那样进行故障切换,则可能是下面的问题:
剩余的成员个数少于副本集的一半
没有成员有资格成为primary
2.Rollback
多数情况下,回滚操作可以优雅的对不能进行故障切换恢复的情况进行恢复。
Rollbacks操作发生在primary处理写操作,但其它成员没有成功的进行复制之前primary掉线时。当先前的primary恢复工作,开始复制时,则表现出rollback。如果操作复制到其它成员,该成员可用,并且可以和大多数的副本集连接,则没有rollback。
Rollbacks删除了那些没有进行复制的操作,以保证数据集的一致性。
3.选举机制
当任意的故障切换发生,都会伴随着选举的出现,以此来决定哪个成员成为primary。
选举提供了一种机制,用于副本集中的成员无需管理员的干预,自动的选出一个新的primary。选举可以让副本集快速和坚决的从故障中恢复。当primary变为不可达时,secondary成员发起选举,第一个收到大多数选票的成员成为新的primary。
前提:每个成员自能要求自己被选举成为主节点,只能为申请成为主节点的候选人投票
当一个备份节点无法与主节点联通时 她就行联系并请求其他成员将自己选举为主节点,其他成员做几项理性的检查
自身是否能够与主节点联通
希望被选举为主节点的备份节点的数据是否是最新
有没有其他
mongodb副本集的机制
最新推荐文章于 2025-03-12 15:18:51 发布