首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Windows上的Redis -哨兵不通信

Windows上的Redis -哨兵不通信
EN

Stack Overflow用户
提问于 2015-03-09 22:00:48
回答 1查看 461关注 0票数 0

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

代码语言:javascript
复制
Server1: 
  - Redis master
  - 3 Redis Sentinels (quorum set to 2)
Server2:
  - Redis slave
  - 3 Redis Sentinels (quorum set to 2)

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

然而,实际的故障转移似乎不起作用。例如,如果我连接到我的Redis主服务器并运行调试分段故障以使其失败,则不会发生到从服务器的故障转移。没有一个哨兵会记录任何信息,所以看起来它们并没有真正的连接。以下是我的哨兵的配置:

代码语言:javascript
复制
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上)。我的红宝石大师在26380上运行。所有的端口都是开放的,名称/ it解析正确,等等,所以我不认为这是一个基础设施问题。如果有用的话,我正在运行Redis (2.8.17),这是我从MS页面下载的。

有没有人对什么可能是问题有任何想法,或者对如何排除故障有任何建议?对于在Windows上设置Redis的H.A.实例,我很难找到准确的文档,因此,任何有助于解决这类问题的命令都将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-10 14:06:36

我想出来了。我在问题中忽略了一件事,那就是我的主配置文件中指定了配置,所以我的客户端必须提供一个密码才能连接。在我的哨兵配置中,我漏掉了这个,并且没有提供密码。哨兵的记录并没有说明这一点,所以对我来说并不明显。一旦我加了这个:

代码语言:javascript
复制
sentinel auth-pass redismaster <myPassword>

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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28952553

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档