我正在使用这个简单的设置测试redis故障转移:
3 Ubuntu server 16.04
redis and redis-sentinel are configured on each box.
Master ip : 192.168.0.18
Resque ip : 192.168.0.16
Resque2 ip : 192.168.0.13
数据复制工作正常但我无法使故障转移工作。当我启动redis-sentinel
时,我总是在60秒后收到+sdown
消息:
14913:X 17 Jul 10:40:03.505 # +monitor master mymaster 192.168.0.18 6379 quorum 2
14913:X 17 Jul 10:41:03.525 # +sdown master mymaster 192.168.0.18 6379
这是redis-sentinel
的配置文件:
bind 192.168.0.18
port 16379
sentinel monitor mymaster 192.168.0.18 6379 2
sentinel down-after-milliseconds mymaster 60000
sentinel failover-timeout mymaster 6000
loglevel verbose
logfile "/var/log/redis/sentinel.log"
repl-ping-slave-period 5
slave-serve-stale-data no
repl-backlog-size 8mb
min-slaves-to-write 1
min-slaves-max-lag 10
bind指令为每个框使用适当的IP。
我在这里遵循redis教程:https://redis.io/topics/sentinel但我无法使故障转移工作。
Redis服务器版本:3.2.9
问题在于redis-sentinel是如何工作的,因为sentinel无法处理受密码保护的redis-server。
在redis-server配置文件(/etc/redis/redis.conf)中,如果要使用redis-sentinel,请不要使用“requirepass”指令。