redis哨兵模式
学习redis哨兵模式中发现的一些问题
我基于docker搭建了三个redis实例,其中一个master,两个slave。
同时搭建一个sentinel 监视 master
然后开始测试下线
master下线
docker stop master 之后,sentinel切换了master,同时修改的配置文件里的 sentinel monitor 对应的ip地址
测试全部下线
将所有实例全部下线,sentinel 需要花很长时间才能确定实例odown
再将实例全部启动,三台实例之间很容易就构成了最开始的主从结构。
此时sentinel在经过非常多的时间后,终于发现了现在的主从结构。
同时执行sentinel slaves 发现发现的实例数量在逐渐增多,由3个变4个,再变5个,多出来的两个处在 s_down,slave,disconnected状态
初步猜测问题可能出在docker的网络模式上,我在最早的配置中写的是物理机的ip,但是在通信过程中,redis获取到的都是容器在虚拟网卡里的ip地址
更换网络模式
把docker网络模式换成host之后,实例数量正常了。 同时检查更新的频率为五分钟,相当漫长
redis哨兵模式
http://blog.inkroom.cn/2021/06/01/5K01J8.html