今天搭redis哨兵做小demo的时候出了点小问题,当master挂了之后,主从不进行切换。
多台从服务器一直重复出现如下日志:
15507:S 30 Apr 00:19:47.216 * Connecting to MASTER 127.0.0.1:6379
15507:S 30 Apr 00:19:47.216 * MASTER <-> SLAVE sync started
15507:S 30 Apr 00:19:47.216 # Error condition on socket for SYNC: Connection refused
15507:S 30 Apr 00:19:48.248 * Connecting to MASTER 127.0.0.1:6379
15507:S 30 Apr 00:19:48.248 * MASTER <-> SLAVE sync started
15507:S 30 Apr 00:19:48.248 # Error condition on socket for SYNC: Connection refused
然后每台哨兵只是出现如下日志:
15521:X 30 Apr 00:18:50.832 # +sdown master mymaster 127.0.0.1 6381
后来还出现了这样的日志:
try-failover failover-abort-not-elected
并没有进行主从切换。
网上很多人说的一个解决方案:
将redis的bind
改为0.0.0.0
而不是127.0.0.1
。你们可以尝试一下是否是这个问题,反正我的不是。
我哨兵测试搭建的是1主2从
配置文件如下:
6379(主):
bind 0.0.0.0
port 6379
#logfile "6379.log"
dir "/root/redis-4.0.11/data"
daemonize no
appendonly yes
appendfsync everysec
appendfilename "appendonly-6379.aof"
6380(从):
bind 0.0.0.0
port 6380
#logfile "6380.log"
dir "/root/redis-4.0.11/data"
daemonize no
appendonly yes
appendfsync everysec
appendfilename "appendonly-6380.aof"
slaveof 127.0.0.1 6379
6381(从):
bind 0.0.0.0
port 6381
#logfile "6381.log"
dir "/root/redis-4.0.11/data"
daemonize no
appendonly yes
appendfsync everysec
appendfilename "appendonly-6381.aof"
slaveof 127.0.0.1 6379
问题不是在上面,是在下面:
26379(哨兵一):这个配置文件是没有问题的
port 26379
dir "/root/redis-4.0.0/data"
sentinel monitor mymaster 127.0.0.1 6379 2
sentinel down-after-milliseconds mymaster 30000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 180000
26380(哨兵二):问题就在这里!!!!!!
port 26380
dir "/root/redis-4.0.0/data"
sentinel monitor mymaster 127.0.0.1 6380 2 # 这里连接的应该是 6379!!而不是6380
sentinel down-after-milliseconds mymaster 30000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 180000
26382(从):这里也是一样的问题!!!!
port 26381
dir "/root/redis-4.0.0/data"
sentinel monitor mymaster 127.0.0.1 6381 2 # 这里连接的应该是 6379!!而不是6382
sentinel down-after-milliseconds mymaster 30000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 180000
哨兵我经常搭,可能是加班到太晚了吧~,人都有点恍恍惚惚的。写完这篇睡觉了。
不知道各位是不是出现和我一样的问题。
关于哨兵的搭建以及原理,大家可以看我这篇文章:Redis哨兵机制
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/131837.html