当前位置:   article > 正文

Redis集群--故障转移的过程(原理)_故障转移的工作原理

故障转移的工作原理

原文网址:Redis集群--故障转移的过程(原理)_IT利刃出鞘的博客-CSDN博客_redis集群故障转移

简介

本文介绍Redis集群(Cluster)的故障转移的流程。

Redis集群自身实现了高可用。 高可用首先需要解决集群部分失败的场景: 当集群内少量节点出现故障时通过自动故障转移保证集群可以正常对外提供服务。 

故障发现

当集群内某个节点出现问题时, 需要通过一种健壮的方式保证识别出节点是否发生了故障。 Redis集群内节点通过ping/pong消息实现节点通信, 消息不但可以传播节点槽信息, 还可以传播其他状态如: 主从状态、 节点故障等。 因此故障发现也是通过消息传播机制实现的, 主要环节包括: 主观下线(pfail) 和客观下线(fail) 。

  • 主观下线:指某个节点认为另一个节点不可用, 即下线状态, 这个状态并不是最终的故障判定, 只能代表一个节点的意见, 可能存在误判情况。
  • 客观下线:指标记一个节点真正的下线, 集群内多个节点都认为该节点不可用, 从而达成共识的结果。 如果是持有槽的主节点故障, 需要为该节点进行故障转移。

主观下线

集群中每个节点都会定期向其他节点发送ping消息, 接收节点回复pong消息作为响应。 如果在cluster-node-timeout时间内通信一直失败, 则发送节点会认为接收节点存在故障, 把接收节点标记为主观下线(pfail) 状态。 流程如下图所示:

上边只是部分内容,为便于维护,本文已迁移到此地址:Redis集群-故障转移的过程(原理) - 自学精灵

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/433435
推荐阅读
相关标签
  

闽ICP备14008679号