测试redis在三台主机上配置cluster
redis:3.0.5
os:centos 6.6
host:192.108.56.117 ct6601
192.108.56.119 ct6602
192.108.56.120 ct6604
所需文件:redis-3.0.5.tar.gz,ruby-2.2.3.tar.gz,rubygems-2.5.0.tgz,redis-3.2.2.gem
以下是下载地址:
redis-3.0.5.tar.gz http://download.redis.io/releases/redis-3.0.5.tar.gz
ruby-2.2.3.tar.gz https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.3.tar.gz
rubygems-2.5.0.tgz https://rubygems.global.ssl.fastly.net/rubygems/rubygems-2.5.0.tgz
redis-3.2.2.gem https://rubygems.global.ssl.fastly.net/gems/redis-3.2.2.gem
#在ct6601,ct6602,ct6604上执行相同操作
#列出需要安装的文件
[root@ct6601 ~]# cd ~
[root@ct6601 ~]# ls
redis-3.0.5.tar.gz
redis-3.2.2.gem
ruby-2.2.3.tar.gz
rubygems-2.5.0.tgz
#安装ruby
[root@ct6601 ~]# tar -xzvf ruby-2.2.3.tar.gz
[root@ct6601 ~]# cd ruby-2.2.3
[root@ct6601 ruby-2.2.3]# ./configure -prefix=/usr/local/ruby
[root@ct6601 ruby-2.2.3]# make
[root@ct6601 ruby-2.2.3]# make install
[root@ct6601 ruby-2.2.3]# cp ruby /usr/local/bin/
#安装rubygem
[root@ct6601 ruby-2.2.3]# cd ~
[root@ct6601 ~]# tar -xzvf rubygems-2.5.0.tgz
[root@ct6601 ~]# cd rubygems-2.5.0
[root@ct6601 rubygems-2.5.0]# ruby setup.rb
[root@ct6601 rubygems-2.5.0]# cp bin/gem /usr/local/bin/
#安装gem-redis
[root@ct6601 rubygems-2.5.0]# cd ~
[root@ct6601 ~]# gem install -l redis-3.2.2.gem
#安装redis
[root@ct6601 ~]# tar -xzvf redis-3.0.5.tar.gz
[root@ct6601 ~]# cd redis-3.0.5
[root@ct6601 redis-3.0.5]# make
[root@ct6601 redis-3.0.5]# make install
[root@ct6601 redis-3.0.5]# cp src/redis-trib.rb /usr/local/bin/
#配置redis参数
[root@ct6601 redis-3.0.5]# mkdir -p /usr/local/redis/6379 /usr/local/redis/6380
[root@ct6601 ~]# cat > /usr/local/redis/6379/redis.conf <
port 6379
daemonize yes
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
EOF
[root@ct6601 ~]# cat > /usr/local/redis/6380/redis.conf <
port 6380
daemonize yes
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
EOF
#启动redis
#这里注意要cd到对应目录再执行,不然aof文件和node.conf文件会放在当前执行的目录
[root@ct6601 ~]# cd /usr/local/redis/6379
[root@ct6601 6379]# redis-server redis.conf
[root@ct6601 6379]# cd /usr/local/redis/6380
[root@ct6601 6380]# redis-server redis.conf
[root@ct6601 6380]# ps -ef|grep redis
root 12566 1 0 19:56 ? 00:00:00 redis-server *:6379 [cluster]
root 12574 1 0 19:56 ? 00:00:00 redis-server *:6380 [cluster]
root 12582 12534 0 19:56 pts/4 00:00:00 grep redis
#在任意一台主机上执行,以完成cluster建立
[root@ct6601 6380]# redis-trib.rb create --replicas 1 192.108.56.117:6379 192.108.56.117:6380 192.108.56.119:6379 192.108.56.119:6380 192.108.56.120:6379 192.108.56.120:6380
#简单验证
[root@ct6601 6380]# redis-cli -c
127.0.0.1:6379> set mykey hello,select;
-> Redirected to slot [14687] located at 192.108.56.120:6379
OK
[root@ct6602 6380]# redis-cli -c
127.0.0.1:6379> get mykey
-> Redirected to slot [14687] located at 192.108.56.120:6379
"hello,select;"