Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
redis sentinel客户端中主服务器复活问题_Redis_Node Redis_Redis Sentinel - Fatal编程技术网

redis sentinel客户端中主服务器复活问题

redis sentinel客户端中主服务器复活问题,redis,node-redis,redis-sentinel,Redis,Node Redis,Redis Sentinel,我开始在设置了主从的情况下使用redis。主机和从机设置在同一台机器上,端口不同。为了处理主/从故障转移,redis似乎有了sentinel。我正试图实施哨兵 Master的My redis.conf: bind 127.0.0.1(local Machine) Port 6379 我的redis1.conf用于从属服务器: bind 127.0.0.1 port 6380 slaveof 127.0.0.1 6379 我的sentinel.conf有: sentinel monitor m

我开始在设置了主从的情况下使用redis。主机和从机设置在同一台机器上,端口不同。为了处理主/从故障转移,redis似乎有了sentinel。我正试图实施哨兵

Master的My redis.conf:

bind 127.0.0.1(local Machine)
Port 6379
我的redis1.conf用于从属服务器:

bind 127.0.0.1
port 6380
slaveof 127.0.0.1 6379
我的sentinel.conf有:

sentinel monitor mymaster 127.0.0.1 6379 1
sentinel down-after-milliseconds mymaster 30000
sentinel failover-timeout mymaster 180000
sentinel parallel-syncs mymaster 1

sentinel monitor resque 127.0.0.1 6380 1
sentinel down-after-milliseconds resque 10000
sentinel failover-timeout resque 180000
sentinel parallel-syncs resque 5
我正在使用sentinel客户端

只有一个sentinel.conf文件用于主服务器和从服务器。我运行了两台服务器,并通过杀死主服务器进行了检查。奴隶如所料成为主人。在《复活主人》一节中,提到了下一位主人将被添加为新当选主人的奴隶。但当我让我的主人倒下时,奴隶变成了主人。但老主人仍然不是新主人的奴隶。这是使用哨兵的正确方法吗

关于如何使用sentinel处理故障转移的任何建议。? 或任何其他用于节点的sentinel客户端包


windows中没有对redis和sentinel的适当支持。当我用最新的redis稳定版本在虚拟ubuntu中检查同样的问题时,一切都很好

使用2.8版本的redis(适用于Windowws 64位),因为2.6版本的sentinel不会恢复主节点。

除了使用2.8之外,sentinel配置应该只监视主节点。将自动检测任何从属设备

因此,sentinel配置中的唯一内容应该是

sentinel monitor mymaster 127.0.0.1 6379 1
sentinel down-after-milliseconds mymaster 30000
sentinel failover-timeout mymaster 180000
sentinel parallel-syncs mymaster 1
就我(redis的新手)而言,sentinel可以获取奴隶主的信息,所以为了方便起见,您可以做如下操作:

  • 主从式设置
  • sentinel monitor master,这意味着从机的信息不在sentinel.conf中(或通过连接到sentinel,并执行命令“sentinel monitor mymaster 127.0.0.1 6379 2”)
  • “redis cli”到sentinel,执行命令“sentinel failover mymaster”(如您所知,“mymaster”是主设备的名称),然后您可以看到主设备和从设备已切换
  • 更重要的是,你必须确保哨兵的数量足够。 e、 g.如果数量为2,则确保哨兵的数量至少为3。 连接到任何sentinel、exec“sentinel sentinel”或exec“sentinel ckquorum”以进行检查