Ubuntu下搭建Redis集群

系统: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的第三方接口:

sudo gem install redis

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(打印集群从节点信息)

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值