1. Redis结构图
1. 安装必须要软件
>service iptables stop 关闭防火墙避免不必要的麻烦
>yum install –y gcc* 安装GCC
>yum install –y ruby 安装ruby
>yum install –y ruby-rdoc 安装rubydoc
>yum install rubygems
2. 下载redis
到这个页面找连接地址:
3. 创建集群的根目录
>mkdir /usr/local/cluster
> wget http://download.redis.io/releases/redis-3.0.1.tar.gz
> tar xzf redis-3.0.1.tar.gz
> make
>make install
4. 创建集群需要的其他目录
>cd /usr/local/cluster
>mkdir 7000
>mkdir 7001
>mkdir 7002
>mkdir 7003
5. 修改配置文件
cp默认的配置文件redis.conf到cluster到根目录
>cp /usr/local/cluster/redis-3.0.1/redis.conf /usr/local/cluster
>vi redis.conf
##修改配置文件中的下面选项
port 7000
cluster-enabled yes
cluster-config-file nodes.7000.conf
cluster-node-timeout 5000
appendonly yes
appendfilename "appendonly.7000.aof"
deamonize yes
pidfile /var/run/redis.7000.pid
logfile “/usr/local/cluster/log/7000.log”
##修改完redis.conf配置文件中的这些配置项之后把这个配置文件分别拷贝到7000/7001/7002/7003目录下面
>cp /usr/local/cluster/redis.conf /usr/local/cluster/7000
>cp /usr/local/cluster/redis.conf /usr/local/cluster/7001
>cp /usr/local/cluster/redis.conf /usr/local/cluster/7002
>cp /usr/local/cluster/redis.conf /usr/local/cluster/7003
##红色的字体为不同端口需要单独进行修改
6. 安装集群文件
利用rubygem安装redis,因为集群通过这个完成的。
>gem install redis
7. 编写启动脚本
>vi startRedis.sh
7000/redis-server 7000/redis.conf
7001/redis-server 7001/redis.conf
7002/redis-server 7002/redis.conf
#7003/redis-server 7003/redis.conf
##注释掉7003是要测试addnode
8. 编写停止脚本
>vi stopRedis.sh
ps –ef|grep redis|egrep –v grep|awk ‘{print $2}’|xargs kill -9
9. 执行启动脚本
>sh startRedis.sh
10. 开始配置节点,创建集群
>cd /usr/local/cluster/redis3.0.1/src
>./redis-trib.rb create 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002
屏幕会显示设置成功的信息
./redis-trib.rb create 192.168.0.30:7000 192.168.0.30:7001 192.168.0.30:7002 192.168.0.30:7003
11. 执行测试指令。
>./redis-cli –c –h 127.0.0.1 –p 7000
127.0.0.1:7000>set hello world
OK
127.0.0.1:7000>set foo bar
会提示设置到另外一个shard
127.0.0.1:7001>get hello
127.0.0.1:7000>get foo
提示到7001这个shard上,打印出 bar
12. 接下来添加一个新的节点
>cd redis-3.0.1/src
>./redis-trib.rb add-node 127.0.0.1:7003 127.0.0.1:7001
##第一个地址是新加的节点,第二个地址是已经存在的节点,新加的节点需要通知集群,所以一定要有一个存在的节点。
13. 查看一下当前的节点情况。
>redis-cli –c –p 7001
127.0.0.1:7001>cluster nodes
会展示所有的节点状态。