【redis哨兵模式】解决redis哨兵模式无法切换的问题

主从复制和哨兵模式的搭建,请参考其他文章,很简单,而且别人写的很详细,这里主要解决哨兵模式无法切换的问题。
目前我这边的配置为:
一主二从三哨兵
出现的问题主要有:

问题1:没有看到切换master节点的信息:

在这里插入图片描述
解决方法:修改redis-sentinel.conf 配置文件,将最少投票数改为1,(大于3个哨兵的,建议投票数为:哨兵数/2 -1 不为别的,我只怕redis抽风!! ) 注:官方文档并没有说需要【(哨兵数/2)-1 】,是我自己设置并解决我当前的问题的,官方文档只说如果哨兵数过少,则故障转移是不会产生的,也就是说,一两个哨兵,并不是高可用配置,当master挂掉后,不一定会给你进行故障转移。:
详见:https://redis.io/topics/sentinel
在这里插入图片描述

问题二:哨兵选举后,无法真正地切换。

在这里插入图片描述

无法切换,有几种情况:
1-redis保护模式开启了
2-端口没有放开;
3-master密码和从密码不一致。
4-master节点的redis.conf没有添加masterauth

建议处理方法如下:
每一台机子下的:redis.conf配置文件,还有哨兵的redis-sentinel.conf 配置文件修改成:

bind 0.0.0.0
protected-mode no

2-各个哨兵,端口要能相互telnet 对应的ip 端口
查看想开的端口是否已开:firewall-cmd --query-port=26379/tcp
添加指定需要开放的端口:firewall-cmd --add-port=26379/tcp --permanent
重载入添加的端口:firewall-cmd --reload
查询指定端口是否开启成功:firewall-cmd --query-port=26379/tcp
返回yes即可

3–master密码和从密码不一致
由于哨兵配置的时候没有配置从密码,只配置了master的密码,那么问题来了,如果master挂掉了,哨兵sentinel切换master的时候,怎么去修改其他节点的配置信息呢。实际上,哨兵是拿master的密码去认证的,所以,我们在配置redis的时候,建议redis的账号密码一致(至少主账号的master-auth密码和从节点的一致)

4-master节点也要设置masterauth,避免当master重启后无法变成新master节点的从节点

各位参考以上的配置进行操作即可。如果还有其他的配置需要注意的,欢迎留言

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值