Sentinel 是Redis的高可用性解决方案:由一个或多个Sentinel实例组成的Sentinel系统可以监视任意多个主服务器以及它们的下属从服务器。

1、Sentinel基本监视原理

如下图显示,Sentinel系统监视了一个主服务器server1和它的三个从服务器server2、3、4.

当server1因为某种情况下线时,Sentinel系统会对server1做出 故障转移 处理,将server1的三个从服务器之一作为新的主服务器,并将其他从服务器当作新的主服务器的slave。


此时,Sentinel系统还会继续监视之前的server1,当server1恢复工作状态之后,Sentinel系统会把它设置为server2的从服务器。

2、Sentinel的启动与使用

当Sentinel启动之后,就不能使用一般的Redis服务器命令了,只能使用这7个sentinel命令:ping、sentinel、info、subscribe、unsubscribe、psubscribe和punsubscribe。

命令连接 监视
Sentinel会与服务器建立命令连接,使Sentinel可以向服务器发送指令。
创建命令连接之后:
1、Sentinel默认以10秒一次的频率向与其连接的主从服务器 通过命令连接 发送INFO命令,通过分析INFO命令的回复来获取服务器当前的信息和拓扑结构。
2、Sentinel默认以2秒一次的频率 通过 命令连接 向特定频道发送命令(以发布-订阅方式),服务器会通过 订阅连接 向频道返回信息,这样通过频道的方式会使所有订阅了该频道的其他sentinel也接收到相关信息。
订阅连接
Sentinel除了与连接的服务器建立 命令连接 之外,还会建立 订阅连接,多个sentinel可以和同一个服务器建立 订阅连接,这样当一个sentinel通过频道向服务器发送一条消息的时候,其他sentinel都可以发现,这种方式可以加强sentinel之间的交流。

主观下线
默认情况下,Sentinel以每秒一次的频率向所有与它建立连接的实例(包括主、从服务器、其他Sentinel)发送ping命令,并根据回复判断实例是否在线。如果不在线,就认定该实例为主观下线状态(仅这个Sentinel的判定)。

可观下线
当一个Sentinel判定一个主服务器为主观下线之后(但这只是它一个人的判断),为了确认这个主服务器是否真的下线,它会询问其他监视该主服务器的Sentinel,如果这个Sentinel从其他Sentinel那里得到了足够数量的证据证明该服务器下线,就判定该服务器为客观下线。

选举领头Sentinel
当一个主服务器被判断为客观下线时,监视该服务器的所有Sentinel会进行协商,选举出一个领头Sentinel,让该领头来对下线的主服务器进行故障转移操作。

Redis哨兵Sentinel相关推荐

  1. Redis哨兵(sentinel)

    Redis哨兵(sentinel) [目标] 掌握解决主从复制故障的解决方案 掌握哨兵监控的搭建 掌握哨兵监控机制及故障的自动转移 [理论知识] 哨兵监控架构设计 主观和客观下线 Leader选举流程 ...

  2. Redis 哨兵Sentinel 文档

    Redis 的 Sentinel 系统用于管理多个 Redis 服务器(instance), 该系统执行以下三个任务: 监控(Monitoring): Sentinel 会不断地检查你的主服务器和从服 ...

  3. Redis哨兵Sentinel的搭建和原理说明

    原文地址:http://www.cnblogs.com/zhoujinyi/p/5570024.html 背景: Redis-Sentinel是Redis官方推荐的高可用性(HA)解决方案,当用Red ...

  4. redis哨兵模式没有切换主机_Redis哨兵(Sentinel)模式

    Redis哨兵(Sentinel)模式 在这里插入图片描述 一.主从复制高可用 当我们使用主从复制出现的问题 手动故障转移 写能力和存储能力受限 主从复制 -master 宕机故障处理 主从切换技术的 ...

  5. redis logfile 只读_docker 配置redis主从,哨兵sentinel

    注释:docker自行安装,主从使用一主两从,然后使用sentinel进行高可用配置,当主服务器挂掉,从服务器自动升为主服务器. 主从模式介绍 主从模式是三种模式中最简单的,在主从复制中,数据库分为两 ...

  6. redis 系列25 哨兵Sentinel (高可用演示 下)

    原文:redis 系列25 哨兵Sentinel (高可用演示 下) 一. Sentinel 高可用环境准备 1.1 Sentinel 集群环境 环境 说明 操作系统版本 CentOS  7.4.17 ...

  7. redis 哨兵模式 cluster模式区别_Redis哨兵(Sentinel)模式快速入门

    当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工干预,费事费力,还会造成一段时间内服务不可用. 所以更多时候,我们优先考虑哨兵(sentinel) 模式. Redis sentin ...

  8. Redis哨兵模式(sentinel)学习总结及部署记录(主从复制、读写分离、主从切换)

    Redis的集群方案大致有三种:1)redis cluster集群方案:2)master/slave主从方案:3)哨兵模式来进行主从替换以及故障恢复. 一.sentinel哨兵模式介绍 Sentine ...

  9. Redis 哨兵(sentinel)模式集群配置(5.0.3版本)

    一.准备工作 1.系统环境:centos6.4 2.服务器六台(1主5从): 192.168.1.161(master) 192.168.1.162(slave) 192.168.1.163(slav ...

最新文章

  1. 为什么不记录慢速查询?
  2. 转投AI?英国这所大学决定裁掉数学系,激怒了菲尔兹奖得主
  3. C语言字符串操作常用库函数
  4. HTTP1.1 Keep-Alive到底算不算长连接?
  5. WPF 反编译后错误处理
  6. servlet中的数据存储
  7. 【设计模式】工厂模式 Factory Pattern
  8. 架构设计 —— 性能选型、高可用
  9. mysql排序规则英文 数字_如何在MySQL中为日语设置模式排序规则
  10. 使用linux内核,打造自己的linux
  11. paip.图形化编程厉器.net vs2010 工作流WF4 hello word
  12. 【机器学习系列】聊聊决策树
  13. [Mac 硬件相关] Mac日常拆卸及相关维护(更换电池/清风扇/更换硅脂)
  14. XML报表打印出错,乱码问题
  15. ThinkPad 连接无线网络几分钟后无线自动关闭
  16. 术业有专攻,让我们回归本位
  17. 从零开始写游戏引擎(一) - 工程创建以及目录设置还有版本控制
  18. 路由器交换机:配置命令
  19. 框架64位插间_cad海龙工具箱64位下载
  20. 地铁调色,打造金属质感

热门文章

  1. Android自定义仿Siri曲线View
  2. RTL8139的linux源代码分析
  3. 2022-2028年中国度假村行业发展动态及投资规划分析报告
  4. 日期与天数互转的实现代码(VS2022 C++)
  5. 解决[服务器证书无效, 连接伪装服务器]问题
  6. Python 将pdf转成图片
  7. TensorFlow搭建VGG-Siamese网络
  8. 可视化编排云服务,工作流 ASW 开始公测!
  9. Jupyter Notebook 安装+配置环境 总结
  10. golang iris mysql_golang iris使用