redis 哨兵模式踩坑

机器 3台

192.168.174.136 主

192.168.174.131 从

192.168.174.135 从

192.168.174.136 

vim /etc/redis.conf 

bind 0.0.0.0

daemon yes

protected-mode no 

slaveof 192.168.174.136 6379 

从机器配置比主多了一个配置 slaveof 192.168.174.136 6379 

redis-server /etc/redis.conf 启动每台redis

vim /etc/redis-sentinel.conf 

bind 0.0.0.0

daemon yes

protected-mode no 

sentinel monitor mymaster 192.168.174.135 6379 2

sentinel monitor mymaster 192.168.174.135 6379 2 代表3台哨兵都监控主节点

redis-sentinel /etc/redis-sentinel.conf 启动每台redis-sentinel

最后,kill掉主节点,一直无法重现切换主节点,查了半天,最后发现是防火墙的问题,26379端口被防火墙屏蔽了,导致哨兵之间无法通信

解决方法为:


查看想开的端口是否已开:firewall-cmd --query-port=26379/tcp
添加指定需要开放的端口:firewall-cmd --add-port=26379/tcp --permanent
重载入添加的端口:firewall-cmd --reload
查询指定端口是否开启成功:firewall-cmd --query-port=26379/tcp
返回yes即可


最后重新演练主节点宕机,以下为成功切换日志

redis 哨兵模式踩坑_第1张图片

你可能感兴趣的:(redis,java,服务器)