前述
本文对redis集群架构的原理不做讲解,只陈述搭建过程。因为此集群架构的ping-pong机制,需要至少三个节点,为了保证集群的高可用,还需要相应的备份节点,所有总共至少需要6个节点,即需要6台服务器。当然我没有那么多机器啦,所以本文采用的是伪分布式搭建,即使用虚拟机的不同端口实现。
搭建步骤
-
搭建环境准备
使用到了ruby脚本,所以需要有ruby的运行环境。#安装ruby $ yum install ruby $ yum install rubygems
安装ruby脚本运行使用的包redis-3.0.0.gem
$ gem install redis-3.0.0.gem $ cd redis-3.0.0/src $ ll *.rb $ cp *.rb /usr/local/redis-cluster/
-
搭建过程
先停掉该机器上的redis;#复制redis/bin到集群文件夹下的redis01 $ cp -r redis/bin/ redis-cluster/redis01 $ cd redis-cluster/redis01/ #删除redis之前使用过的快照文件rdb $ rm -rf dump.rdb
修改配置文件:端口和集群模式
- port 7001
- cluster-enabled yes$ cd .. $ cp -r redis01/ redis02 $ cp -r redis01/ redis03 $ cp -r redis01/ redis04 $ cp -r redis01/ redis05 $ cp -r redis01/ redis06 #修改配置文件,端口依次7002-7006 $ vim redis02/redis.conf [修改端口7002]
写启动脚本:
$ vim start-all.sh #脚本内容 cd redis01 ./redis-server redis.conf cd .. cd redis02 ./redis-server redis.conf cd .. cd redis03 ./redis-server redis.conf cd .. cd redis04 ./redis-server redis.conf cd .. cd redis05 ./redis-server redis.conf cd .. cd redis06 ./redis-server redis.conf cd .. #赋予执行权限 $ chmod +x start-all.sh #启动 $ ./start-all.sh #查看redis进程状态 $ ps aux|grep redis #搭建集群(Ip为当前机器的IP) $ ./redis-trib.rb create --replicas 1 192.168.20.138:7001 192.168.20.138:7002 192.168.20.138:7003 192.168.20.138:7004 192.168.20.138:7005 192.168.20.138:7006
至此,redis-cluster就搭建完成了。