ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Redis哨兵模式

2022-02-10 19:57:59  阅读:165  来源: 互联网

标签:Redis 模式 哨兵 sentinel 定时 下线 节点


Redis高可用

第一种: 哨兵模式
第二种: 集群

哨兵模式

哨兵,顾名思义,放哨的,监控一些动态 Redis中的哨兵模式也是监控,不过哨兵是一个进程,运行在系统中,通过发送指令监控主从节点是否正常运作,当然除了键控之外,还可以只从自动切换等功能

单哨兵模式

在这里插入图片描述

多哨兵模式

在这里插入图片描述

哨兵模式内部原理

哨兵模式内部是依赖三个定时任务, 主观下线,客观下线 和sentinel Reft选举的
第一个定时任务
问题描述: 因为我们并没有在哨兵配置文件中配置从节点的信息,哨兵会把从节点切换成主节点,那么哨兵是如何知道从节点的信息的?
定时任务: 每隔10秒,每个Sentinel节点会向主节点发送info命令,用于获取最新的主从结构一级从节点信息
第二个定时任务
每隔两秒,每个sentinel都会向一个固定的频道(sentinel:hello) 上发送自己对主节点的判断以及自身的信息
其他的sentinel节点都会订阅这个频道,了解其他的sentinel节点对主节点的判断
第三个定时任务
每隔一秒,每个sentinel都会向主从节点和其他sentinel节点发送心跳(ping命令)用于彼此监测是否可用
主观下线 看图
客观下线 同上

Raft算法
问题说明: 当宕机的主节点被客观下线之后,从节点会变成主节点,那么是谁让从节点变成主节点的呢? 此时有多个 sentinel到底谁说了算 此时sentinel会选举出一个领导者Leader
选举流程: 当sentinel-A 对主节点主观下线之后,会向其他sentinel节点发送sentinel is-master-down-by-addr 命令,要求将自己设置为领导者
每个节点在每个选举轮次中只有一次投票权,接收到这个指令之后,节点将会给sentinel-A投票 同意这个,sentinel-A 成为领导者
如果sentinel-A的票数最高 则sentinel-A将会成为领导者 做故障转移

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

标签:Redis,模式,哨兵,sentinel,定时,下线,节点
来源: https://blog.csdn.net/Aokiji_KUZAN/article/details/122867673

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有