故障表现

哨兵只存在两个的时候,当哨兵模式的redis主节点挂掉以后,业务组件不能切换到新主节点

故障原因

redis哨兵依旧认为旧主为主节点,没有触发failover

故障原因定位

哨兵集群部署方式:

1主1从,3哨兵

哨兵初始配置项:

这里主要关注sentinel monitor投票数为2
代表必须有两个哨兵都认为主节点不在线了,即两个主节点认为主观下线(即sdown)才会触发客观下线(即odown)

解决过程

1.后台指定日志文件启动哨兵 /usr/bin/redis-sentinel /etc/redis-sentinel.conf > /data/thirdAssembly/redis/log/17000/17000.log>&1 & ,查看日志

2.发现日志显示不能正确判断139机器的哨兵状态

telnet 139的哨兵端口,发现报错信息如下:

-DENIED Redis is running in protected mode because protected mode is enabled, no bind address was specified, no authentication password is requested to clients. In this mode connections are only accepted from the loopback interface. If you want to connect from external computers to Redis you may adopt one of the following solutions: 1) Just disable protected mode sending the command 'CONFIG SET protected-mode no' from the loopback interface by connecting to Redis from the same host the server is running, however MAKE SURE Redis is not publicly accessible from internet if you do so. Use CONFIG REWRITE to make this change permanent. 2) Alternatively you can just disable the protected mode by editing the Redis configuration file, and setting the protected mode option to 'no', and then restarting the server. 3) If you started the server manually just for testing, restart it with the '--protected-mode no' option. 4) Setup a bind address or an authentication password. NOTE: You only need to do one of the above things in order for the server to start accepting connections from the outside.
Connection closed by foreign host.
复制代码

分析:

这个表示139开了保护模式,当开启保护模式的时候默认只能本机连

原因定位:

设置的2个以上哨兵主观认为master宕机,但是现在的情况是挂掉一个,另外两个有一个开启了保护模式不能获取它的主观状态,所以不能触发主从切换

故障恢复

在139这台机器的哨兵配置项上加上

protected-mode no
复制代码

再次尝试,OK了

redis踩坑:redis哨兵开启了保护模式导致主从切换不同步相关推荐

  1. Redis哨兵模式实现主从切换

    redis简介: Redis是一个开源的内存中的数据结构存储系统, 它可以用作:数据库.缓存和消息中间件 为什么要使用redis? 性能和并发 #性能? 我们在碰到需要执行耗时特别久,且结果不频繁变动 ...

  2. 联想v15笔记本开启电池保护模式,防止电池充鼓:

    联想v15开启电池保护模式,防止电池充鼓:

  3. 厚积薄发打卡Day55 :[狂神]Redis详细教程(上)<从Nosql 概述到WSL安装Redis踩坑记录>

    视频教程:[狂神说Java]Redis最新超详细版教程通俗易懂 Nosql概述 时代背景: 1.单机数据库时代 90年代:一个基本的网站访问量一般不会太大,单个数据库完全足够! 那个时候,更多的去使用 ...

  4. Redis 高级特性(5)— 集群模式(主从模式、哨兵模式、cluster 集群模式)

    Redis 是如何做到高可用的呢? 它主要通过支持主从模式.哨兵模式.集群模式这三种模式,来满足不同业务特点和可用等级的需求. 其中,主从模式部署最简单,用得也最多,集群模式比较复杂,但可用性最高. ...

  5. redis的单机、哨兵、集群模式对比

    redis作为集中式的数据库中间件,它具有持久化的能力,但是需要容许少量数据的丢失. 单机版 生成环境不建议使用,有单点故障风险.一旦单台结点出现故障,可能会导致整个服务不可用 sentinal哨兵模 ...

  6. 【踩坑】360安全浏览器“极速模式”和“兼容模式”,套路还是bug?

    分享踩坑点: 项目中需要兼容360安全浏览器,大家当然都希望用极速模式打开网站,但是发现总是被兼容模式打开 网址类似 aa.xx.dd.com 网上找了很多地方,有以下两种方法 1.<meta ...

  7. 《操作系统真象还原》第四章 ---- 剑指Loader 刃刺GDT 开启新纪元保护模式 解放32位

    文章目录 专栏博客链接 相关查阅博客链接 本书中错误勘误 看到第四章的一些很有趣的话 想记录下来 修改MBR.S 更新配置文件boot.inc 忽生疑惑(怎么是平坦模型?) 编写Loader.S 调用 ...

  8. 【故障演练】 Redis Cluster集群,当master宕机,主从切换,客户端报错 timed out

    大家好,我是Tom哥 性能不够,缓存来凑 一个高并发系统肯定少不了缓存的身影,为了保证缓存服务的高可用,我们通常采用 Redis Cluster 集群模式. 描述: 集群部署采用了 3主3从 拓扑结构 ...

  9. gorm踩坑 事务中Row/Rows未关闭导致panic

    现象 web服务有个接口,service层开启事务,调用dao层两个接口.发现第二个dao层接口返回Error,在service层事务回滚时panic,该panic无法被recover. 代码详情 事 ...

最新文章

  1. 浅谈 PHP 与手机 APP 开发(API 接口开发)
  2. 探索MySQL高可用架构之MHA(6)
  3. CV之IC: 图像描述(Image Captioning) 的简介、使用方法、案例应用之详细攻略
  4. Dapr + .NET 实战(十-终篇)K8S运行Dapr
  5. 当今互联网从业者必看书籍 -- 《自传播》
  6. Adobe Illustrator的教程:使用渐变网格工具创建矢量插图
  7. 直播笔记 | Unity中路径的疑难杂症剖析
  8. mongodb、mysql、redis的性能对比
  9. 2009我的lamp之路
  10. 一本关于 Total Commander 的书
  11. Java实现手机号码、邮箱账号加密
  12. ctf中压缩包隐写经验总结
  13. oracle的oca证书,Oracle三大认证考试及其含金量解析
  14. 【转自杨建荣博客】通过执行计划中的CONCATENATION分析sql问题
  15. MYSQL基础之浅聊 变量
  16. i9 9900k和i9 9900ks有什么区别
  17. android 陀螺仪滤波_Arduino+mpu6050陀螺仪运用卡尔曼滤波姿态解算实验
  18. 化工行业动态:华峰化学业绩超预期,新增推荐标的_中泰化学(20210117).PDF
  19. 【收藏】十款免费BT下载神器
  20. PHP2020语言排行榜,TIOBE公布了2020年12月编程语言排行榜

热门文章

  1. TapTap 算法平台的 Serverless 探索之路
  2. L1-003 个位数统计 (15 分)
  3. 网络安全学习小结--kali基本工具、webshell、代码审计
  4. 让机器学习助力医疗领域
  5. 华为牛人在华为工作十年的感悟!
  6. 发一些收藏的收费MD5
  7. JS 将对象拆开拼接成 URL
  8. 张俊 中国科技大学 计算机,张俊-中国科学院大学-UCAS
  9. 2017.11.21 软件工程概论第一节课
  10. 数藏行业公众号裂变,单日拉新8w+,实现低成本获客?