Redis Sentinel的配置和使用
2015-09-28 18:06
891 查看
来源:http://www.zhizhihu.com/html/y2014/4600.html
Redis主从系统,除了做数据冗余,开可以做高可用性灾备。Reids提供了Sentinel工具来监控各Master的状态,如果Master异常,则会做主从切换,将slave作为master,将master作为slave。主从切换之后,master_redis.conf、slave_redis.conf和sentinel.conf的内容都会发生改变。master_redis.conf中会多了一句slaveof的配置,sentinel.conf的监控目标也随之调换,这一点要注意。
如果要监控两个redis实例,可以进行如下配置 sentinel.conf:
帮助
启动:
redis-sentinel sentinel.conf
需要注意的几个地方:
1、注意第一行最后一个2,意思是当有两个sentinel实例同时检测到redis异常时,才会有反应。
2、主从切换后,redis.conf、sentinel.conf内容都会改变,主要还想要原来的主从架构,要再修改配置文件;
3、master挂掉,sentinel已经选择了新的master,但是还没有将其改成master,但是已经将old master改成了slave。那么这时候如果重启old master,就会处于无主状态。所以一方面要等sentinel稳定后再启动old master,或者重新人工修改配置文件,重新启动集群。
4、sentinel只是在server端做主从切换,app端要自己开发,例如Jedis库的SentinelJedis,能够监控sentinel的状态。这样才能完整的实现高可用性的主从切换。
Redis主从系统,除了做数据冗余,开可以做高可用性灾备。Reids提供了Sentinel工具来监控各Master的状态,如果Master异常,则会做主从切换,将slave作为master,将master作为slave。主从切换之后,master_redis.conf、slave_redis.conf和sentinel.conf的内容都会发生改变。master_redis.conf中会多了一句slaveof的配置,sentinel.conf的监控目标也随之调换,这一点要注意。
如果要监控两个redis实例,可以进行如下配置 sentinel.conf:
帮助
redis-sentinel sentinel.conf
[43023] 17 Jun 14:49:55.189 # Sentinel runid is 7b2f26a9633b9ec07f76ab6efba7508c235bf75d [43023] 17 Jun 14:49:55.189 # +monitor master master-7000 1.0.0.1 7000 quorum 1 [43023] 17 Jun 14:49:55.189 # +monitor master master-7001 1.0.0.1 7001 quorum 1 [43023] 17 Jun 14:49:55.190 * +slave slave 1.0.0.2:7000 1.0.0.2 7000 @ master-7000 1.0.0.1 7000 [43023] 17 Jun 14:49:55.191 * +slave slave 1.0.0.2:7001 1.0.0.2 7001 @ master-7001 1.0.0.1 7001 [43023] 17 Jun 14:52:55.815 * +fix-slave-config slave 1.0.0.2:7000 1.0.0.2 7000 @ master-7000 1.0.0.1 7000 [43023] 17 Jun 14:52:55.816 * +fix-slave-config slave 1.0.0.2:7001 1.0.0.2 7001 @ master-7001 1.0.0.1 7001
需要注意的几个地方:
1、注意第一行最后一个2,意思是当有两个sentinel实例同时检测到redis异常时,才会有反应。
2、主从切换后,redis.conf、sentinel.conf内容都会改变,主要还想要原来的主从架构,要再修改配置文件;
3、master挂掉,sentinel已经选择了新的master,但是还没有将其改成master,但是已经将old master改成了slave。那么这时候如果重启old master,就会处于无主状态。所以一方面要等sentinel稳定后再启动old master,或者重新人工修改配置文件,重新启动集群。
4、sentinel只是在server端做主从切换,app端要自己开发,例如Jedis库的SentinelJedis,能够监控sentinel的状态。这样才能完整的实现高可用性的主从切换。
相关文章推荐
- centos6.5安装redis
- 查看Linux服务器上的Redis版本号
- 使用GO语言开发 Redis数据监控程序
- Redis 禁用FLUSHALL FLUSHDB KEYS 命令
- redis php扩展安装
- Redis 内存数据库
- linux 下安装redis
- mac下redis的安装
- Redis介绍 && Java客户端操作Redis
- linux下安装redis
- Redis的安装和启动
- Sentinel模式下的主从切换
- Redis 使用.net实际教程
- Redis 宕机之后 启动失败 启动不了 原因之一 aof 文件出错 以及持久化介绍
- Java下利用Jedis开发Redis
- 【推荐】redis的主从复制配置
- redis在.net架构中的应用
- Redis 在线测试
- redis.conf配置详细解析
- Redis 作为多个Windows服务运行配置方法