Redis集群配置笔记
本博文采用 Sentinel + Redis方式实现Redis高可用集群搭建。
Sentinel 是Redis官方提供的Redis Server监控程序。我们可以通过部署Sentinel监控各个Redis Server,当Master Server失效时,通过选举,将Slave提升为Master,继续为客户端提供服务。在使用Sentinel之前,首先要确定客户端是否支持,如不支持,请选择其他第三方方案。
架构图:
10.166.224.36 运行 redis-server master,而10.166.224.33和10.166.224.35上的redis-server 作为其slave。
三台机子均运行sentinel作为监控以及投票选择新的master,在配置集群时,通常我们选择奇数,是为了投票选出新的master.
运行sentinel:
sentinel采用读取配置文件启动,因此在运行sentinel服务时,一定要指定配置文件位置。
在安装最新版redis后,在/etc/redis目录下有两个配置文件。一个是redis.conf,一个是sentinel.conf。
前者是用来配置redis-server,而后一个就是我们用来配置加载sentinel。
redis-sentinel /etc/redis/
sentinel.conf :
这里简单介绍一下配置三节点集群时需要用到的参数,其余额外参数可以阅读官网文档。
http://redis.io/topics/sentinel
port 26379 #sentinel监听的端口号 sentinel monitor mymaster 10.166.224.36 6379 2
- mymaster是master一个名字,用来区分多个master,sentinel可以同时监控多个master。
- 10.166.224.36是该master IP地址。
- 6379是该master上redis server监听的地址。
- 2 的参数名字是quorum,是用来决定选择的。3节点配置,有2个节点决定选择时则进行选举。
三个节点的sentinel.conf均按照上述配置即可,至此redis监控已经配置完成。我们启动三个节点的sentinel可以看到如下图:
redis 主从配置:
根据上述架构图,我们将三节点 redis配置为一主,两从。过程如下:
修改redis.conf文件,在目录/etc/redis/
bind 127.0.0.1 10.166.224.33 #添加本机ip地址 slaveof 192.168.9.18 6379 #添加从属哪个master,如果为master,不写此行
配置完成后,重新启动三节点redis server。
从图中可以看到该主节点下有两个从属。
其余配置信息可根据项目需求去官网查询。
测试:
1.启动三节点redis server 和 sentinel。
查看当前主从信息,当前10.166.224.35是master。
2.关闭master
关闭10.166.224.35上的redis server服务。可以看到sentinel重新进行选举新的master10.166.224.36。
此时查看新的主从信息:
10.166.224.36已经成为新的master。
至此三节点集群搭建已经实现,客户端访问10.166.224.36 : 6379获取服务。
下面关于Redis的文章您也可能喜欢,不妨参考下:
Redis 的详细介绍:请点这里
Redis 的下载地址:请点这里