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在直播场景的实践方案
Apr 27 Redis
redis 限制内存使用大小的实现
May 08 Redis
为Java项目添加Redis缓存的方法
May 18 Redis
详解Redis瘦身指南
May 26 Redis
详解Redis复制原理
Jun 04 Redis
了解Redis常见应用场景
Jun 23 Redis
redis客户端实现高可用读写分离的方式详解
Jul 04 Redis
分布式Redis Cluster集群搭建与Redis基本用法
Feb 24 Redis
解决Redis启动警告问题
Feb 24 Redis
Redis基本数据类型Set常用操作命令
Jun 01 Redis
Redis基本数据类型List常用操作命令
Jun 01 Redis
redis lua限流算法实现示例
Jul 15 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 操作符与控制结构
2012/03/07 PHP
深入php self与$this的详解
2013/06/08 PHP
详解WordPress中调用评论模板和循环输出评论的PHP函数
2016/01/05 PHP
基于jQuery的仿flash的广告轮播代码
2010/11/04 Javascript
40个有创意的jQuery图片和内容滑动及弹出插件收藏集之二
2011/12/31 Javascript
innerText和textContent对比及使用介绍
2013/02/27 Javascript
node.js中的fs.writeFile方法使用说明
2014/12/14 Javascript
Angular2内置指令NgFor和NgIf详解
2016/08/03 Javascript
Vue.js 表单校验插件
2016/08/14 Javascript
jQuery可见性过滤选择器用法示例
2016/09/09 Javascript
自己封装的一个简单的倒计时功能实例
2016/11/23 Javascript
微信小程序开发一键登录 获取session_key和openid实例
2016/11/23 Javascript
关于在vue-cli中使用微信自动登录和分享的实例
2017/06/22 Javascript
基于Swiper实现移动端页面图片轮播效果
2017/12/28 Javascript
详解在React.js中使用PureComponent的重要性和使用方式
2018/07/10 Javascript
vue渲染方式render和template的区别
2020/06/05 Javascript
js重写alert事件(避免alert弹框标题出现网址)
2020/12/04 Javascript
JS实现纸牌发牌动画
2021/01/19 Javascript
[01:33]一分钟玩转DOTA2第三弹:DOTA2&DotA快捷操作大对比
2014/06/04 DOTA
[06:09]辉夜杯主赛事开幕式
2015/12/25 DOTA
python实现dnspod自动更新dns解析的方法
2014/02/14 Python
Python pickle模块用法实例
2015/04/14 Python
举例讲解Python中metaclass元类的创建与使用
2016/06/30 Python
python解析json串与正则匹配对比方法
2018/12/20 Python
如何利用Pyecharts可视化微信好友
2019/07/04 Python
python GUI库图形界面开发之PyQt5信号与槽基础使用方法与实例
2020/03/06 Python
Python抓包并解析json爬虫的完整实例代码
2020/11/03 Python
Famous Footwear加拿大:美国多品牌运动休闲鞋店
2018/12/05 全球购物
英国在线玫瑰专家:InterRose
2019/12/01 全球购物
中专自荐信
2013/10/13 职场文书
房产公证书范本
2014/04/10 职场文书
百日安全活动总结
2014/05/04 职场文书
汽车服务工程专业自荐信
2014/09/02 职场文书
在HTML5 localStorage中存储对象的示例代码
2021/04/21 Javascript
python 提取html文本的方法
2021/05/20 Python
golang内置函数len的小技巧
2021/07/25 Golang