2017-07-17 111 views
0

我正在使用以下簡單設置測試redis故障轉移: 3 Ubuntu服務器16.04 redis和redis-sentinel是在每個盒子上配置的。Redis sentinel故障轉移配置總是接收+ sdown

主機IP:192.168.0.18 Resque IP:192.168.0.16 Resque2 IP:192.168.0.13

數據複製效果很好,但我不能讓故障轉移工作。 當我開始Redis的前哨,我總是在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的前哨配置文件:

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 

綁定指令使用了正確的IP每個盒子。

我跟着redis教程在這裏:https://redis.io/topics/sentinel但我無法讓故障轉移工作。

Redis的服務器版本:3.2.9

回答

1

問題是所有關於Redis的前哨是如何工作的,因爲哨兵不能處理密碼保護Redis的服務器。

在你的redis服務器配置文件(/etc/redis/redis.conf)中,如果你想使用redis-sentinel,不要使用「requirepass」指令。