Redis哨兵模式

来源:互联网 发布:php与java对比 编辑:程序博客网 时间:2024/06/06 01:31

使用场景:当实现了redis的主从分离,即使redis的master的挂掉,slave还是可以正常的工作,但是只能有读取操作了,redis写操作只能在master上执行。哨兵模式是redis官网提供的高可用的解决方案,它会监控master的状态,如果挂掉,会在salve里面从新选举一个master,其他salve也会成为该master的slave。当重启master,他会做为salve的角色。

哨兵模式配置:

首先需要一个Redis主从模式,这个在上一篇已经介绍过了。现在主要说哨兵模式的配置

1:在redis的安装目录和src下找到sentinel.conf和redis-sentinel,分别复制到usr/redis/conf和usr/redis下面,命令如下:

 cp redis-sentinel /usr/redis

 cp sentinel.conf /usr/redis/conf

2:修改sentinel.conf



 mymaster:服务器名称,这个可以随意

127.0.0.1 6380: 是master的地址,这个地址只需要初始化一次,后期会自动修改

数字1,表示主机挂掉后salve投票看让谁接替成为主机,得票数多少后成为主机

3:执行命令

./redis-sentinel conf/sentinel.conf &

测试:

查看redis的进程,表示sentinel已经启动


kill掉master主机


查看info信息,看是不是有一个master了



重启已经kill掉的主机看看会有什么变化


kill掉的master再次重启,会变成slave。