1. 异常信息: All sentinels down, cannot determine where is mymaster master is running...

通过测试:

   @Test
public void testSentinel(){
HashSet<String> sentinels = new HashSet<>();
sentinels.add("192.168.72.129:26379");
JedisSentinelPool pool = new JedisSentinelPool("mymaster", sentinels);
Jedis jedis = pool.getResource();
jedis.set("hello", "world");
System.out.println(jedis.get("hello"));
}

报出错误:

警告: Cannot get master address from sentinel running @ 192.168.72.129:26379. 
Reason: redis.clients.jedis.exceptions.JedisConnectionException:
Failed connecting to host 192.168.72.129:26379. Trying next one.
redis.clients.jedis.exceptions.JedisConnectionException:
All sentinels down, cannot determine where is mymaster master is running...
(哨兵宕机, 不能确定主机位置)

还原报错现场:

  学习搭配redis过程中, 在linux虚拟机上配置完redis-sentinel( 即启用redis哨兵配置搭建1主2从的redis服务器 )

  开启了redis-sentinel服务, ip和port号为: 192.168.72.129:26379

  首先, 能确定的是, linux防火墙已然关闭, sentinel.conf 的配置中, (注释掉bind)开放了不同主机的访问, 同时, redis的保护模式也已经关闭!!!

但是jedis连接还是出现了问题, 那么既然不是redis服务器方配置或者防护的问题, 那么问题只能出在了我的操作系统win7中!!!

  在此基础上猜测, 是否是ip 连接 或者 是端口未开放呢?

  于是通过以下操作:

  cmd ->

  telnet 192.168.72.129:26379

  显示错误: 正在连接192.168.72.129:26379...无法打开到主机的连接。 在端口 23: 连接失败

 ------- 附win7中开启telnet的方法: 站内他人博文链接:https://www.cnblogs.com/ylcms/p/7250129.html, 博主:云龙笔记

  看样子应该是linux的端口未开放导致无法连接.

  继续, 查看linux服务端:

  通过 netstat 查看与26379相关的端口信息, 查询到:

  怎么回事? 端口好好地, 已经被redis服务监听了!!!

  哎, 这时脑袋升起一丝不详的感觉, 难道是我的主从redis都没有启动, 而我直接加载了哨兵的配置吗?

 

  哇的一声哭了出来, 忙活了这么久, 居然是我并没有启动主从机. 导致了这一系列bug!!!!

  开启, 然后跑一下测试类, 再看看结果, 如下

  

  连接正常...

  虽然导致bug的问题如此"脑残", 不过从这过程之中, 我也对redis的分片, 乃至哨兵有了一个全面的认识, 算是祸福相依啦. 如果你也有连接redis的错误, 不妨跟我的思路来思考, 相信不难解决!

---记录2019年7月29日12:31:11

那些年踩过的坑之Redis报错:All sentinels down, cannot determine where is mymaster master is running...的更多相关文章

  1. mac brew install redis 报错

    mac brew install redis 报错 /usr/local/opt/php55/bin/phpize /usr/local/opt/php55/bin/phpize: line 61: ...

  2. redis报错Windows error 0x70(a large memory)

    redis报错Windows error 0x70 redis 嫌弃你内存不够了,就给你不开第二个实例. The Windows version of Redis allocates a large ...

  3. filebeat output redis 报错 i/o timeout

    filebeat output  redis 报错 i/o timeout 先把报错内容贴出来. ERROR redis/client. go: Failed to RPUSH to redis li ...

  4. window下安装redis报错: creating server tcp listening socket 127.0.0.1:6379: bind No error

    window下安装redis报错: creating server tcp listening socket 127.0.0.1:6379: bind No error 解决: 如果没有配置环境,在安 ...

  5. Redis报错 : (error) NOAUTH Authentication required.

    原文:Redis报错 : (error) NOAUTH Authentication required. 这个错误是因为没有用密码登陆认证 , 先输入密码试试 . 127.0.0.1:6379> ...

  6. Windows安装redis报错处理(转!)

    要谈则谈,要打便打! ---2019.5.9,贸易战 转自:http://www.yayihouse.com/yayishuwu/chapter/1297 安装redis报错信息 [9204] 15 ...

  7. redis报错解决

    1.Connecting to node 127.0.0.17000 [ERR] Sorry, can't connect to node 192.168.1.917000 redis集群:Conne ...

  8. 安装Redis-cluster-gem install redis报错的解决方案

    错误描述: [root@eshop-cache01 local]# gem install redis ERROR: Loading command: install (LoadError) cann ...

  9. docker启动redis报错 oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo

    docker启动redis报错 1:C 17 Jun 08:18:04.613 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo1:C 17 Jun 08 ...

随机推荐

  1. BZOJ 2178: 圆的面积并 (辛普森积分)

    code #include <set> #include <cmath> #include <cstdio> #include <cstring> #i ...

  2. HDU 6073 - Matching In Multiplication | 2017 Multi-University Training Contest 4

    /* HDU 6073 - Matching In Multiplication [ 图论 ] | 2017 Multi-University Training Contest 4 题意: 定义一张二 ...

  3. 【Android Studio】 加载so文件异常

    AS无法加载so包异常 android studio导入so包异常:Couldn't load DeviceAPI from loader dalvik.system.PathClassLoader[ ...

  4. 关于dll注入

    例如:     有一个游戏修改器:其中有一个按钮“自动打怪”:点击时游戏会实现相应的功能:     对于游戏程序来说,自动打怪操作本质上就是call调用一个函数:     但是修改器和游戏是两个独立的 ...

  5. 001_C/C++笔试题_考察C/C++语言基础概念

    (一)文章来自:C/C++笔试题-主要考察C/C++语言基础概念.算法及编程,附参考答案 (二)基础概念 2. 头文件中的ifndef/define/endif的作用? 答:防止该头文件被重复引用. ...

  6. webpack给目录起别名

    1. 配置文件目录: build>webpack.base.config.js: resolve: { alias: { '@': resolve('src'), 'styles': resol ...

  7. PAT 甲练习 1003 Emergency

    1003 Emergency (25 分) As an emergency rescue team leader of a city, you are given a special map of y ...

  8. oracle的事务

    一.事务 保证数据的一致性,有一组相关的dml语句组成,该组的dml语句要么全部成功,要么全部失败 如:网上转账就是典型的要用事物来处理,用以保证数据的一致性 二.事务和锁 当执行事物操作时(dml语 ...

  9. 函数柯里化与偏函数+bind

    简单理解: 1,函数柯里化就是把多参数函数分解为多return的单参数函数: 举个例子(伪代码): function func (a, b, c){ return } 柯里化为 function fu ...

  10. HDU 4496 D-City —— (并查集的应用)

    给出n个点和m条边,一条一条地删除边,问每次删除以后有多少个联通块. 分析:其实就是并查集的应用,只是前一阵子一直做图论思路一直囿于tarjan了..方法就是,记录每一条边,然后从最后一条边开始不断的 ...