1、安装需要的依赖包
[root@localhost ~]# yum install gcc gcc-c++ kernel-devel automake autoconf libtool make wget tcl vim ruby rubygems unzip git -y
2. 下载redis并安装
[root@localhost src]# cd /usr/local/
[root@localhost local]# wget http://download.redis.io/releases/redis-4.0.1.tar.gz
[root@localhost local]# tar xzf redis-4.0.1.tar.gz
[root@localhost local]# cd redis-4.0.1
[root@localhost redis-4.0.1]# make
3. 创建集群需要的目录
mkdir -p /usr/local/cluster
cd /usr/local/cluster
mkdir –p /usr/local/cluster/7000
mkdir –p /usr/local/cluster/7001
mkdir –p /usr/local/cluster/7002
mkdir –p /usr/local/cluster/7003
mkdir –p /usr/local/cluster/7004
mkdir –p /usr/local/cluster/7005
4. 修改配置文件redis.conf
port 7000(7002,7003,7004,7005)
daemonize yes
cluster-enabled yes
cluster-config-file nodes_700X.conf
cluster-node-timeout 5000
appendonly yes
appendfilename "appendonly_700X.aof"
pidfile /var/run/redis_700X.pid
这个配置文件分别拷贝到7000/7001/7002/7003/7004/7005节点目录。
5.分别启动这6个redis实例
/usr/local/redis-4.0.1/src/redis-server ./7000/redis.conf
/usr/local/redis-4.0.1/src/redis-server ./7001/redis.conf
/usr/local/redis-4.0.1/src/redis-server ./7002/redis.conf
/usr/local/redis-4.0.1/src/redis-server ./7003/redis.conf
/usr/local/redis-4.0.1/src/redis-server ./7004/redis.conf
/usr/local/redis-4.0.1/src/redis-server ./7005/redis.conf
并查看是否成功:ps -ef|grep redis
6. 执行redis的创建集群命令创建集群
[root@localhost cluster]# cd /usr/local/redis-4.0.1/src
[root@localhost src]# ./redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005
到这一步因为前面第1步装了依赖包,未提示ruby和rubygems的错误,但还是会报错,提示不能加载redis,是因为缺少redis和ruby的接口,使用gem 安装
错误内容:
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- redis (LoadError)
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from ./redis-trib.rb:25
解决:gem install redis
还可能会提示ruby版本太低,需要安装高版本。
wget https://cache.ruby-china.org/pub/ruby/ruby-2.3.1.tar.gz
tar xzvf ruby-2.3.1.tar.gz
cd ruby-2.3.1
./configure –prefix=/usr/local/ruby
make && make install
7.重新执行创建集群的命令
。。。。。。。
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
8. 测试集群
[root@iZuf6h90t5awxwr3uqp6f0Z src]# ./redis-cli -c -p 7000
127.0.0.1:7000> set username xjs
-> Redirected to slot [14315] located at 127.0.0.1:7002
OK
[root@iZuf6h90t5awxwr3uqp6f0Z ~]# /usr/local/redis-4.0.1/src/redis-cli -c -p 7005
127.0.0.1:7005> get username
-> Redirected to slot [14315] located at 127.0.0.1:7002
"xjs"
参考:
http://blog.csdn.net/nuli888/article/details/52134117
http://www.cnblogs.com/feiyun126/p/7248989.html