sentinel支持的redis高可用集群配置详解


Posted in Redis onApril 01, 2022

一、首先配置redis的主从同步集群

1、主库的配置文件不用修改,从库的配置文件只需增加一行,说明主库的IP端口。如果需要验证的,也要加多一行,认证密码。

slaveof 192.168.20.26 5268

masterauth hodge01

sentinel支持的redis高可用集群配置详解

一主多从的话,就启用多个从库。其中,从库都是一样的方案。本次有两个slave。

2、命令检查

/usr/local/redis/bin/redis-cli -p 5257 -a hodge01 info Replication

sentinel支持的redis高可用集群配置详解

二、sentinel高可用

1、概况。sentinel是redis自带的附件,在新的版本redis安装都有sentinel。sentinel是称作哨兵的监控机制,当达到一定数量的sentinel投票支持,redis的master就会切换。本次使用docker容器搭建,主要讲述配置文件。

2、配置文件。注意:每次要抛弃上一次集群都考检查配置文件,因为sentinel是靠更改配置文件实现功能的。

sentinel支持的redis高可用集群配置详解

监听端口。

sentinel支持的redis高可用集群配置详解

第一行最后的那个2,是说明需要两个sentinel确认客观下线,需要切换,才能操作。

sentinel支持的redis高可用集群配置详解

如果有需要密码验证的,要在这里添加密码信息,否则不能通讯。

在配置文件后面几行是启动后系统自动添加。

sentinel支持的redis高可用集群配置详解

3、启动。

启动之后,本实验就是3台redis,三台sentinel,sentinel的配置文件自动填写了sentinel集群和redis集群的信息。因为网络影响,所以单单凭一台sentinel之言就随便切换,所以一般情况需要3台sentinel以上。

确认5268是master,连接两个slave。

sentinel支持的redis高可用集群配置详解

4、测试。

a、关掉5268redis。

sentinel支持的redis高可用集群配置详解

b、检查4157和5257redis。发现master已经转移到5257。

sentinel支持的redis高可用集群配置详解

c、查看转移日志。

+failover-state-reconf-slaves master mymaster

…………

+failover-end master mymaster

sentinel支持的redis高可用集群配置详解

第一行是确认预先的架构复核标准。

第二行认为5268已经客观下线。

第三行表示准备重写主从架构的配置文件。

第四行表示开始重写。

第五行表示故障切换处理5268完毕.。

第六、七行记录在sentinel中已经认为4157和5268作为slave已经追随5257master。

第九行sentinel认为5268已经沦落为slave,但是并不在线。紧接着标记主观下线。

第十行表示5268重启后符合slave标准,用“-”移除主观下线记录。

但是,查了两次5257,并没有发现5268的信息。于是我们查看redis5258的日志,看没有连上master是怎么回事,反正sentinel那边已经认为连上。

sentinel支持的redis高可用集群配置详解

d、恢复后的redis5268的日志。(异常处理)

NOAUTH Authentication required.

sentinel支持的redis高可用集群配置详解

满满的认证不成功,已经很明显告知,5268恢复之后就是slave了,因为此时的5257已经有了密码,而5268没有密码记录,自然没有认证成功连上master5257。

所以在redis5268加上在master面前的认证密码。

masterauth hodge01

sentinel支持的redis高可用集群配置详解

e、重启验证。

重启redis5268

sentinel支持的redis高可用集群配置详解

检查redis master5257,发现5268已经连上。

到此为止,sentinel支持的redis高可用集群就全部完成,IP自动切换方面下次探索。

以上就是sentinel支持的redis高可用集群配置详解的详细内容,更多关于sentinel redis高可用集群配置的资料请关注三水点靠木其它相关文章!

Redis 相关文章推荐
解决redis sentinel 频繁主备切换的问题
Apr 12 Redis
在K8s上部署Redis集群的方法步骤
Apr 27 Redis
浅谈redis缓存在项目中的使用
May 20 Redis
Windows中Redis安装配置流程并实现远程访问功能
Jun 07 Redis
Redis 彻底禁用RDB持久化操作
Jul 09 Redis
Redis高并发防止秒杀超卖实战源码解决方案
Nov 01 Redis
SpringBoot整合Redis入门之缓存数据的方法
Nov 17 Redis
聊聊redis-dump工具安装问题
Jan 18 Redis
redis数据结构之压缩列表
Mar 21 Redis
浅谈Redis的事件驱动模型
May 30 Redis
Redis基本数据类型String常用操作命令
Jun 01 Redis
Redis全局ID生成器的实现
Jun 05 Redis
redis sentinel监控高可用集群实现的配置步骤
redis调用二维码时的不断刷新排查分析
Apr 01 #Redis
基于Redis6.2.6版本部署Redis Cluster集群的问题
Redis分布式锁的7种实现
Redis 哨兵机制及配置实现
Redis如何使用乐观锁(CAS)保证数据一致性
Mar 25 #Redis
Redis 操作多个数据库的配置的方法实现
Mar 23 #Redis
You might like
php循环语句 for()与foreach()用法区别介绍
2012/09/05 PHP
ThinkPHP通过AJAX返回JSON的两种实现方法
2014/12/18 PHP
thinkPHP实现MemCache分布式缓存功能
2016/03/23 PHP
基于PHP+Mysql简单实现了图书购物车系统的实例详解
2020/08/06 PHP
JavaScript 基础问答三
2008/12/03 Javascript
高性能JavaScript模板引擎实现原理详解
2015/02/05 Javascript
JS实现生成会变大变小的圆环实例
2015/08/05 Javascript
JS简单实现无缝滚动效果实例
2016/08/24 Javascript
基于Three.js插件制作360度全景图
2016/11/29 Javascript
jsTree使用记录实例
2016/12/01 Javascript
jQuery设计思想
2017/03/07 Javascript
js实现Tab选项卡切换效果
2020/07/17 Javascript
JS高级技巧(简洁版)
2018/07/29 Javascript
[57:24]LGD vs VGJ.T 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
浅谈MySQL中的触发器
2015/05/05 Python
Python使用MONGODB入门实例
2015/05/11 Python
PyQt5创建一个新窗口的实例
2019/06/20 Python
python3射线法判断点是否在多边形内
2019/06/28 Python
Flask框架学习笔记之使用Flask实现表单开发详解
2019/08/12 Python
Tensorflow的常用矩阵生成方式
2020/01/04 Python
浅谈ROC曲线的最佳阈值如何选取
2020/02/28 Python
PyCharm永久激活方式(推荐)
2020/09/22 Python
HTML5 video播放器全屏(fullScreen)方法实例
2015/04/24 HTML / CSS
Manuka Doctor美国官网:麦卢卡蜂蜜和蜂毒护肤
2016/12/25 全球购物
Club Monaco加拿大官网:设计师男女服装
2019/09/29 全球购物
澳大利亚家居用品零售商:Harris Scarfe
2020/10/10 全球购物
影视艺术学院毕业生自荐信
2013/11/13 职场文书
便利店的创业计划书
2014/01/15 职场文书
经销商培训邀请函
2014/01/21 职场文书
好家长事迹材料
2014/01/23 职场文书
校庆筹备方案
2014/03/30 职场文书
不听老师话的万能检讨书
2014/10/04 职场文书
升职自我推荐信范文
2015/03/25 职场文书
有关朝花夕拾的读书笔记
2015/06/29 职场文书
《给予树》教学反思
2016/03/03 职场文书
Win7/8.1用户可以免费升级到Windows 11系统吗?
2021/11/21 数码科技