【学习笔记】Redis学习笔记——第16章 Sentinel

第16章 Sentinel

监视一个或多个主服务器及其下属服务器,在主服务器故障时,降级主服务器并将某一从服务器选举为新服务器。
这里的Sentinel本质上只是一个运行在特殊模式下的Redis服务器。

16.1 启动并初始化Sentinel

使用命令redis-server启动Sentinel
1>初始化服务器
2>讲普通redis服务器代码转换为Sentinel专用代码
3>初始化Sentinel状态
4>根据给定的配置文件,初始化监视主服务器列表
5>创建与主服务器的网络连接

16.2 获取主服务器信息

每十秒向主服务器获取主服务器及从服务器名单信息

16.3 获取从服务器信息

每十秒向从服务器获取信息,主要信息为连接状态、优先级、偏移量

16.4 向主服务器和从服务器发送信息

每两秒向所有主、从服务器发送自身及主服务器相关信息

16.5 接收来自主服务器和从服务器频道信息

连接同一个服务器的sentinel共享频道信息

16.5.1 更新Sentinels字典

更新从redis服务器上获取的其他Sentinel信息

16.5.2 创建连向其他Sentinel的命令连接

订阅了同一个redis的全部Sentinel都会用命令连接通信

16.6 检测主观下线状态

每个Sentinel每秒向所连接的全部Sentinel、redis发送ping命令,在配置时间内未收到回复,则认为相应实例已下线

16.7 检测客观下线状态

当一个Sentinel认为主服务器已经主观下线了,会询问其他Sentinel是否认为该主服务器已下线,如果认为该主服务器已经下线的Sentinel服务数量超过配置值,会认为该主服务器已经客观下线了

16.8 选举领头Sentinel

1>每个Sentinel申请成为其他Sentinel的领头,先到先得
2>超过半数的Sentinel的领头为同一个时,选举完成,否则重新选举
3>由领头的Sentinel对下线的redis做故障转移

16.9 故障转移

16.9.1 选举出新的主服务器

原则是选择优先级高的,复制偏移量大的从服务器

16.9.2 修改其他从服务器复制目标

16.9.3 将旧的主服务器变为从服务器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值