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 相关文章推荐
Redis5之后版本的高可用集群搭建的实现
Apr 27 Redis
分布式锁为什么要选择Zookeeper而不是Redis?看完这篇你就明白了
May 21 Redis
Java Socket实现Redis客户端的详细说明
May 26 Redis
浅谈Redis中的RDB快照
Jun 29 Redis
Redis Stream类型的使用详解
Nov 11 Redis
Redis之RedisTemplate配置方式(序列和反序列化)
Mar 13 Redis
Redis分布式锁的7种实现
Apr 01 Redis
muduo TcpServer模块源码分析
Apr 26 Redis
Redis基本数据类型哈希Hash常用操作命令
Jun 01 Redis
Redis实现分布式锁的五种方法详解
Jun 14 Redis
浅谈Redis变慢的原因及排查方法
Jun 21 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临时文件的安全性分析
2014/07/04 PHP
PHP中strpos、strstr和stripos、stristr函数分析
2016/06/11 PHP
PHP生成静态HTML文档实现代码
2016/06/23 PHP
PHP入门教程之操作符与控制结构流程详解
2016/09/09 PHP
脚本安需导入(装载)的三种模式的对比
2007/06/24 Javascript
juery框架写的弹窗效果适合新手
2013/11/27 Javascript
jQuery中wrapInner()方法用法实例
2015/01/16 Javascript
详解javascript跨浏览器事件处理程序
2016/03/27 Javascript
js中数组结合字符串实现查找(屏蔽广告判断url等)
2016/03/30 Javascript
纯JavaScript手写图片轮播代码
2016/10/20 Javascript
JS实现倒计时(天数、时、分、秒)
2016/11/16 Javascript
JS实现DIV高度自适应窗口示例
2017/02/16 Javascript
Vue获取DOM元素样式和样式更改示例
2017/03/07 Javascript
使用AngularJS编写多选按钮选中时触发指定方法的指令代码详解
2017/07/24 Javascript
vue19 组建 Vue.extend component、组件模版、动态组件 的实例代码
2019/04/04 Javascript
[49:08]Secret vs VP 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
浅析python 中__name__ = '__main__' 的作用
2014/07/05 Python
在Python中使用NLTK库实现对词干的提取的教程
2015/04/08 Python
Python pickle模块用法实例分析
2015/05/27 Python
Using Django with GAE Python 后台抓取多个网站的页面全文
2016/02/17 Python
Python黑魔法@property装饰器的使用技巧解析
2016/06/16 Python
python win32 简单操作方法
2017/05/25 Python
python实现剪切功能
2019/01/23 Python
Python list与NumPy array 区分详解
2019/11/06 Python
解决python3插入mysql时内容带有引号的问题
2020/03/02 Python
浅谈Python中文件夹和python package包的区别
2020/06/01 Python
python能否java成为主流语言吗
2020/06/22 Python
英国领先的电视购物零售商:Ideal World
2019/03/18 全球购物
锐步英国官网:Reebok英国
2019/11/29 全球购物
地质灾害防治方案
2014/05/14 职场文书
法人代表证明书
2014/09/18 职场文书
反对四风自我剖析材料
2014/10/07 职场文书
小学新课改心得体会
2016/01/22 职场文书
秀!学妹看见都惊呆的Python小招数!【详细语言特性使用技巧】
2021/04/27 Python
Java 常见的限流算法详细分析并实现
2022/04/07 Java/Android
MySQL8.0 Undo Tablespace管理详解
2022/06/16 MySQL