Ubuntu下、Redis集群

来源:互联网 发布:c语言break语句的用法 编辑:程序博客网 时间:2024/04/27 19:37

系统:Ubuntu14.04.1(服务器版)

Redis版本:3.0.7

机器:test2:192.168.56.102:7000(主节点)、192.168.56.102:7001(不一定是192.168.56.102:7000的从节点)

           test3:192.168.56.103:7000(主节点)、192.168.56.103:7001(不一定是192.168.56.103:7000的从节点)

   test4:192.168.56.104:7000(主节点)、192.168.56.104:7001(不一定是192.168.56.104:7000的从节点)


搭建步骤:

1.在test2机器上创建文件夹,用于存放节点文件:

sudo mkdir cluster-test

2.修改创建文件的权限:

sudo chmod -R 777 /cluster-test/

3.在cluster-test文件夹下创建以端口号命名的子文件夹:

mkdir 7000 7001

4.在7000文件中创建redis.conf文件:

vim redis.conf

5.将以下内容拷贝到redis.conf文件中:

port 7000

cluster-enabled yes

cluster-config-file nodes.conf

cluster-node-timeout 5000

appendonly yes

6.将7000目录下的redis.conf文件拷贝到7001目录下,并修改里面的端口号为7001:

cp ./redis.conf /cluster-test/7001/redis.conf

7.将test2上的cluster-test文件通过ssh拷贝到test3和test4上,在test2上执行命令:

scp -r /cluster-test/ test3://home/test3

scp -r /cluster-test/ test4://home/test4

8.分别在test2、test3和test4上下载并安装Redis,然后,编译(见另一文章,注:本人的redis安装目录在根目录下,权限为777):

http://blog.csdn.net/u012810317/article/details/51064059

9.在test2、test3和test4上分别从redis安装目录下的src文件中将编译好的redis-server拷贝到cluster-test目录下:

cp /redis-3.0.7/src/redis-server /cluster-test/

10.在test2、test3和test4上分别进入7000和7001目录,启动节点:

./redis-server ./redis.conf 

11.在test2(也可以选择其他机器)上安装ruby环境:

sudo apt-get update

sudo apt-get install ruby

12.在test2(根据上一步而定)上安装ruby程序和redis的第三方接口:

注意:需要上传该文件( redis-3.0.0.gem )下载地址:http://download.csdn.net/download/liu976180578/10134135

sudo gem install redis-3.0.0.gem

13.在test2上的redis安装目录的src下输入命令创建集群:

./redis-trib.rb create --replicas 1 192.168.56.102:7000 192.168.56.103:7000 192.168.56.104:7000 192.168.56.103:7001 192.168.56.104:7001 192.168.56.102:7001

14.使用命令查看集群状态:

./redis-trib.rb check 192.168.56.102:7000

15.成功状态如下图:


Redis集群测试:

1.重新分片:

./redis-trib.rb reshard 192.168.56.102:7000

2.集群故障:

./redis-cli -p 7000 debug segfault

3.删除节点:

./redis-trib.rb del-node 192.168.56.103:7000 节点ID

注意:删除主节点时,主节点必须没有哈希槽。

4.添加新节点:

a.添加主节点:

按照前面创建节点的方法,创建一个新节点,端口号为7002,并运行。

添加新节点到集群:

./redis-trib.rb add-node 192.168.56.102:7002 192.168.56.103:7000

为新节点分配哈希槽:

./redis-trib.rb reshard 192.168.56.103:7000

b.添加从节点:

添加前面删除的从节点:

./redis-trib.rb add-node --slave --master-id 主节点ID 192.168.56.104:7001 192.168.56.103:7000

5.其他命令:

./redis-trib.rb check 192.168.56.103:7000(检查集群状态)

./redis-cli -p 7000 cluster nodes | grep master(打印集群主节点信息)

./redis-cli -p 7000 cluster nodes | grep slave(打印集群从节点信息)






备注:第12步,执行sudo gem install redis-3.0.0.gem前  需要上传该文件( redis-3.0.0.gem 

下载地址:http://download.csdn.net/download/liu976180578/10134135

原创粉丝点击