Redis3.0.7cluster集群安装配置教程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Redis3.0.7cluster集群安装配置教程
1、前⾔
环境:CentOS-6.7-i386-LiveDVD 安装的CentOs系统
节点: 6个节点,3个主节点、3个从节点(由于redis默认需要3个主节点,如果想每个主节点有⼀个从节点,这是最低配要求)
配置:端⼝都采⽤默认的6379
redis版本:⽬前官⽹最新的redis stable版本为:3.0.7(时间点:2016年3⽉10⽇)。

3、修改配置
执⾏命令 tar -xvf redis-3.0.7.tar.gz 解压得到redis-3.0.7⽂件夹,修改其下的redis.conf,主要修改下⾯⼏项:
daemonize yes # redis默认不是后台启动,这⾥修改成后台启动
cluster-enabled yes # 允许redis⽀持集群模式
cluster-config-file nodes.conf # 节点配置⽂件
cluster-node-timeout 15000 # 节点超时毫秒
appendonly yes
#port 7000 #如果你需要⾃定义端⼝可以⽤这个选项
注意:6个节点下的redis.conf都需要修改,可以修改⼀个之后拷贝过去。

4、编译源码
然后在6个节点的redis-3.0.7⽬录下执⾏ make 命令,编译源码,编译好后会在src⽂件夹⽣成redis-server等⼆进制⽂件
5、启动实例
在6个节点的redis-3.0.7⽬录下分别执⾏命令 src/redis-server,默认会使⽤redis.conf配置,这样每个节点就启动了⼀个实例。

6、搭建redis集群(在其中⼀个节点操作就可以了)
通过使⽤ Redis 集群命令⾏⼯具 redis-trib 创建集群, redis-trib 位于 Redis 源码的 src ⽂件夹中,它是⼀个 Ruby 程序,这个程序通过向实例发送特殊命令来完成创建新集群,检查集群,或者对集群进⾏重新分⽚(reshared)等⼯作。

请先来到redis解压⽬录,cd src 进⼊src⽬录,然后执⾏下⾯命令:
./redis-trib.rb create --replicas 1 xxx.xxx.xxx.1:6379 xxx.xxx.xxx.2:6379 xxx.xxx.xxx.3:6379 xxx.xxx.xxx.4:6379 xxx.xxx.xxx.5:6379 xxx.xxx.xxx.6:6379
注意ip修改成⾃⼰的~~
命令的意义如下:
给定 redis-trib.rb 程序的命令是 create ,这表⽰我们希望创建⼀个新的集群。

选项 --replicas 1 表⽰我们希望为集群中的每个主节点创建⼀个从节点。

之后跟着的其他参数则是实例的地址列表,我们希望程序使⽤这些地址所指⽰的实例来创建新集群。

简单来说,以上命令的意思就是让 redis-trib 程序创建⼀个包含三个主节点和三个从节点的集群。

接着, redis-trib 会打印出⼀份预想中的配置给你看,如果你觉得没问题的话,就可以输⼊ yes , redis-trib 就会将这份配置应⽤到集群当中:
>>> Creating cluster
Connecting to node xxx.xxx.xxx.1:6379: OK
Connecting to node xxx.xxx.xxx.2:6379: OK
Connecting to node xxx.xxx.xxx.3:6379: OK
Connecting to node xxx.xxx.xxx.4:6379: OK
Connecting to node xxx.xxx.xxx.5:6379: OK
Connecting to node xxx.xxx.xxx.6:6379: OK
>>> Performing hash slots allocation on 6 nodes...
Using 3 masters:
xxx.xxx.xxx.1:6379
xxx.xxx.xxx.2:6379
xxx.xxx.xxx.3:6379
xxx.xxx.xxx.1:6379 replica #1 is xxx.xxx.xxx.4:6379
xxx.xxx.xxx.2:6379 replica #1 is xxx.xxx.xxx.5:6379
xxx.xxx.xxx.3:6379 replica #1 is xxx.xxx.xxx.6:6379
M: 9991306f0e50640a5684f1958fd754b38fa034c9 xxx.xxx.xxx.1:6379
slots:0-5460 (5461 slots) master
M: e68e52cee0550f558b03b342f2f0354d2b8a083b xxx.xxx.xxx.2:6379
slots:5461-10921 (5461 slots) master
M: 393c6df5eb4b4cec323f0e4ca961c8b256e3460a xxx.xxx.xxx.3:6379
slots:10922-16383 (5462 slots) master
S: 48b728dbcedff6bf056231eb44990b7d1c35c3e0 xxx.xxx.xxx.4:6379
S: 345ede084ac784a5c030a0387f8aaa9edfc59af3 xxx.xxx.xxx.5:6379
S: 3375be2ccc321932e8853234ffa87ee9fde973ff xxx.xxx.xxx.6:6379
Can I set the above configuration? (type 'yes' to accept): yes
7、测试集群
redis-cli -c -h xxx.xxx.xxx.1(集群中任意⼀个ip) -p 6379
8、附
好吧,最后我承认我是⽤虚拟机测试的,并且在单台虚拟机机器上启动6个实例,⽽以上是接近⽣产的配置流程,⽅便参考。

下⾯配上⼀些图,是我当时测试的实际情况,如下
启动集群:
让各个节点开始互相通讯:
测试集群:
官⽅⽂档中⽂版(翻译):
官⽅英⽂版请看:
相关:。

相关文档
最新文档