redis的哨兵模式测试

上篇文章我们说到,一主二从的模式,如果主机挂掉,从机等待主机连上之后,继续成为主机的slave。

但是这样会影响我们业务的正常运转呀,我们怎么来做呢?

目前的我的服务器:

192.128.116.128 6379为主:

192.128.116.129 6380为从:

192.128.116.130 6381为从:

现在我们让主机挂掉

另外两台从机在等待,我们在一台从机6380上执行命令 SLAVEOF no one,

让他中断主从关系,成为master

让另外一台从机 6381 SLAVEOF 192.168.116.129 6380

这样的话,6380和6381两台机器之间成为主从关系,即使6379重连上了,也和80 81没关系。


这样的话,一主二从,主机挂了,从机执行相关命令反客为主,原来的两台从机之间形成一个主从关系。

但是这样需要我们手动去操作,不是自动化的,当然不可取啦,下面引入redis的哨兵模式,哨兵模式的文档看这里

恢复之前的一主二从模式

1、我们分别进入三台机器 cd /usr/local/src/redis-4.0.9

cp sentinel.conf sentinel_bak.conf

rm -rf sentinel.conf

vim sentinel.conf

sentinel monitor mymaster 192.168.116.128 6379 2
sentinel down-after-milliseconds mymaster 60000
sentinel failover-timeout mymaster 180000
sentinel parallel-syncs mymaster 1
#sentinel auth-pass mymaster 123456  #如果你的redis集群有密码

把上面这个给写进去 sentinel.conf 里,注意

192.168.116.128是我的主机的ip,这个因人而异了,当然你可以写127.0.0.1

三台服务器做一样的工作,当然可以用scp。

准备工作都完成之后,三台机器都启动redis,

 ./redis-server ../redis.conf ,启动完成之后,就是

一主(192.168.116.128 6379)二从(192.168.116.128 6380   192.168.116.128 6381)

然后再分别启动sentinel服务,./redis-sentinel ../sentinel.conf


可以看到master是192.168.116.128 6379


这里也能看到,master是128,下面有两个slave,分别是129 130,这时我们把主机停掉


观察sentinel里日志的变化,稍微等待一会


发现经过重新选举之后,192.168.116.129 6380 为master了。

我们来看下 6380 和 6381里的 info replication 信息

6380:可以看到,这台从机经过选举变成了 master了。


接下来的测试有问题,正在解决。。。




猜你喜欢

转载自blog.csdn.net/qq_33101675/article/details/80640176