Redis的哨兵机制

主从高可用的问题

  • 故障转移问题

基本架构的说明

  • 客户端先从sentinel 哪里获取那个是master,或者说是 slave ;
  • 然后客户端才会对redis 进行直连操作;
  • 流程:
    在这里插入图片描述
  • 故障转移流程,选举新的master
    在这里插入图片描述
    注意 一套哨兵机制可以监控多个redis体系

redis sentinel 的安装

模拟部署

在这里插入图片描述

Sentinel 的主要配置
  • port ${port}
  • dir “/opt/soft/redis/data/”
  • logfile “${port}.log”
  • sentinel monitor masterName 127.0.0.1 7000 2 ------>标明了那个是你的主master,2 代表如果有两个的哨兵发现机器有故障才会进行故障转移;
  • sentinel down-after-milliseconds masterName 30000; ----->如果30秒始终ping 不通 ,则证明有故障
  • sentinel parallel-sync masterName 1 ; ------>并行复制的时候只能有一个进行;
  • sentinel failover-timeout masterName 180000 ; ------>进行故障转移的时间;

客户端的链接流程

  • 配置好sentinel节点的集合,和 masterName 的名字;
    1. 遍历 sentinel节点集合 获取一个可用的sentinel 节点(能够ping通)
      在这里插入图片描述
  • 2.通过sentinel获取主节点的地址;
    在这里插入图片描述
  • 验证获取到的节点的地址是否是想要的角色
    在这里插入图片描述
  • 客户端实时更新主从节点的角色变化;(通过消息订阅的模式实现)
    在这里插入图片描述

sentinel的三个定时任务

  • 每一秒每个sentinel对sentinel和redis执行ping ,(观察是否有人下线了)
    在这里插入图片描述
  • 每两秒sentinel相互之间交互信息(对redis节点的看法和自身信息)(通过消息订阅模式(通过master节点的channel))
    在这里插入图片描述
  • 每十秒sentinel对master,slave执行info ,观察主从关系

sentinel判定的主观下线和客观下线

在这里插入图片描述

sentinel 领导者选举

在这里插入图片描述

sentinel进行故障转移

在这里插入图片描述

合适的节点

在这里插入图片描述

节点上线

在这里插入图片描述

实现原理

常见的运维开发问题的梳理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值