代码之家  ›  专栏  ›  技术社区  ›  Manas Saxena

无法使用绝地连接redis sentinel

  •  2
  • Manas Saxena  · 技术社区  · 6 年前

    我正试图用绝地圣池连接到redis sentinel

    private static final JedisSentinelPool pool = new JedisSentinelPool("mymaster", getSentinels());
    
    private static Set<String> getSentinels(){
    
        Set<String> mysentinels = new HashSet<>();
        mysentinels.add(new HostAndPort("localhost", 26379).toString());
        return mysentinels;
    }
    

    这给了我以下错误:

    原因:redis。客户。绝地武士。例外。绝地连接异常:所有哨兵都倒下了,无法确定我的主人在哪里。。。

    然而,我可以看到我的哨兵正在奔跑。参考这篇帖子: https://github.com/luin/ioredis/issues/64 我在我的redis主服务器上尝试了以下命令

    ./redis-cli -h redis-1 -p 26379
    

    我犯了以下错误:

    无法在Redis-1:26379:nodename或servname上连接到Redis,或者未知

    这里有什么问题?

    2 回复  |  直到 6 年前
        1
  •  4
  •   softwarevamp    6 年前

    使用localhost而不是127.0.0.1对我来说很有用。

    默认情况下,无法从不同于的接口访问Sentinel localhost,或者使用“bind”指令绑定到网络 接口,或通过“保护模式否”禁用保护模式 将其添加到此配置文件。

        2
  •  1
  •   Shubham damnabit    6 年前

    确保 protected-mode 即将 no 在里面 sentinel.conf 文件这个问题为我解决了。