【问题标题】:Redis on Windows - Sentinels not communicatingWindows 上的 Redis - 哨兵不通信
【发布时间】:2015-03-10 22:06:36
【问题描述】:

我正在设置我的第一个 Redis 框架,到目前为止,我有以下内容:

Server1: 
  - Redis master
  - 3 Redis Sentinels (quorum set to 2)
Server2:
  - Redis slave
  - 3 Redis Sentinels (quorum set to 2)

主机和从机似乎工作正常,数据正在从主机同步到从机。当我安装并启动哨兵时,它们似乎也运行良好,因为如果我连接到其中任何一个并运行 sentinel masters,它将显示哨兵指向我的 Redis 主服务器,并且正在显示各种属性。

但是,实际的故障转移似乎不起作用。例如,如果我连接到我的 Redis 主服务器并运行 debug segfault 使其失败,则不会发生故障转移到从服务器。没有任何哨兵记录任何内容,因此看起来它们实际上并未连接。这是我的哨兵的配置:

port 26381
sentinel monitor redismaster ServerName 26380 2
sentinel down-after-milliseconds redismaster 10000
sentinel failover-timeout redismaster 180000
sentinel parallel-syncs redismaster 1
logfile "nodes/sentinel1/sentinel.log"

如您所见,此哨兵在 26381 上运行(随后的哨兵在 26382 和 26383 上运行)。我的 Redis 主机在 26380 上运行。所有端口都是开放的,名称/IP 解析正确等,所以我认为这不是基础设施问题。如果有用,我正在运行从 MS Open Tech 页面下载的 Redis (2.8.17)。

是否有人对可能出现的问题有任何想法,或对如何排除故障有任何建议?我很难找到建立 H.A. 的准确文档。 Windows 上的 Redis 实例,因此对于解决这些类型的问题有用的任何命令将不胜感激。

【问题讨论】:

    标签: windows redis sentinel


    【解决方案1】:

    我想通了。我在问题中忽略的一件事是我的 Redis 主配置文件中指定了 ma​​sterauth 配置,因此我的客户必须提供密码才能连接。我在我的哨兵配置中错过了这个,并且没有提供密码。哨兵日志没有表明这一点,所以对我来说并不明显。一旦我添加了这个:

    sentinel auth-pass redismaster <myPassword>
    

    对于我的哨兵配置文件,一切都开始正常工作。

    【讨论】:

      猜你喜欢
      • 2013-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多