发布于 2015-03-27 21:56:10 | 891 次阅读 | 评论: 0 | 来源: PHPERZ

这里有新鲜出炉的Redis 官方指南,程序狗速度看过来!

Redis Key-Value数据库

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。


1.Redis Sentinel描述

Sentinel主要功能就是为Redis M-S(master,slaves)集群提供了
(1)master存活检测

(2)集群中M-S服务监控

(3)自动故障转移,M-S角色转换等能力,从一个方面说是提高了redis集群的可用性.

(4)当master失效后,sentinel可以帮助我们自动将slave提升为master

2.环境配置

  1. 先部署好redis集群的主从复制,在该集群的基础上来配置redis的监控集群
  2. 首先把Redis监控配置文件(Sentinel.conf)拷贝到系统配置 /etc下,每台机器分别拷贝一份
  3. 比如
cp /usr/local/redis/redis-2.8.19/sentinel.conf /etc/redis/sentinel-26379.conf

端口分别为

redis_master:26379

redis_slave1:26479

redis_slave2:26579

3.修改配置文件

(1)主节点监控配置文件修改(192.168.1.110)

vi /etc/redis/sentinel-26379.conf

port 26379

sentinel monitor redis_master 192.168.1.110 6379 1

sentinel down-after-milliseconds redis_master 5000

sentinel parallel-syncs redis_master 1

sentinel failover-timeout redis_master 180000

(2)主节点配置文件修改(192.168.1.111)

vi /etc/redis/sentinel-26479.conf

port 26479

sentinel monitor redis_master 192.168.1.110 6379 1

sentinel down-after-milliseconds redis_master 5000

sentinel parallel-syncs redis_master 1

sentinel failover-timeout redis_master 180000

(3)主节点配置文件修改(192.168.1.112)

vi /etc/redis/sentinel-26579.conf

port 26579

sentinel monitor redis_master 192.168.1.110 6379 1

sentinel down-after-milliseconds redis_master 5000

sentinel parallel-syncs redis_master 1

sentinel failover-timeout redis_master 180000

1.
2.
3.
4.

4.完整切换过程

sentinel发现master下线,则标记master sdown

和其他sentinel协商以确定master状态是否odown

如果master odown,则选出leader

当选为leader的sentinel选出一个slave做为master,并向该slave发送slaveof no one命令以转变slave角色为master

向已下线的master及其他slave发送slaveof xxxx命令使其作为新当选master的slave



最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务