redis-cluster 全配置
经过两天的苦心摸索,终于把Redis集群搭建出来了,期间碰到了诸多问题,谢谢谷哥和度娘!
在这里贴出错误截图及处理方法,希望能够帮到大家!
笔者使用的是unbuntu64位系统
编译安装:
wget http://download.redis.io/releases/redis-3.0.7.tar.gz
tar -zxvf redis-3.0.7.tar.gz
cd /opt/redis-3.0.7
make
报错(安装make程序)
![](https://images2015.cnblogs.com/blog/678822/201603/678822-20160315230358521-1508067000.png)
apt-get install make
执行make,报错(没安装gcc)
![](https://images2015.cnblogs.com/blog/678822/201603/678822-20160315230449912-619281286.png)
安装gcc: apt-get install -y make gcc build-essential
![](https://images2015.cnblogs.com/blog/678822/201603/678822-20160315230816521-1273590069.png)
make MALLOC=libc (这里直接输入make编译会报错)
![](https://images2015.cnblogs.com/blog/678822/201603/678822-20160315230827818-1407884712.png)
apt-get install -y tk8.5 tcl8.5
经过一步步安装缺少的组件后,执行make test,即可通过编译
make test
配置7000~7005配置文件
例如7000.conf
这里只贴出要修改的配置,复制redis.conf出来改即可
daemonize yes
pidfile /var/run/redis_7000.pid
port 7000
logfile "/var/log/redis_7000.log"
dir /var/lib/redis/7000
timeout 3600
cluster-enabled yes
cluster-node-timeout 5000
cluster-config-file nodes-7000.conf
appendonly yes
这里有两台linux服务器,分别启动三个实例
192.168.1.123
端口为7000,7001,7002
cd /opt/redis-3.0.7
redis-server ../redis/7000.conf
redis-server ../redis/7001.conf
redis-server ../redis/7002.conf
192.168.1.124
端口为7003,7004,7005
cd /opt/redis-3.0.7
redis-server ../redis/7003.conf
redis-server ../redis/7004.conf
redis-server ../redis/7005.conf
如果没有安装ruby环境,执行以下命令安装
apt-get install ruby
关联路由,选择在任意一台服务器上执行
cd /opt/redis-3.0.7/src
./redis-trib.rb create --replicas 1 192.168.1.123:7000 192.168.1.123:7001 192.168.1.123:7002 192.168.1.124:7003 192.168.1.124:7004 192.168.1.124:7005
这时抛出了以下错误
![](https://images2015.cnblogs.com/blog/678822/201603/678822-20160315231712584-1256296658.png)
经查找,我们还需要为ruby安装redis库,安装命令为:gem install redis
cd /opt/redis-3.0.7
gem install redis
再次执行
![](https://images2015.cnblogs.com/blog/678822/201603/678822-20160315231829959-906936544.png)
![](https://images2015.cnblogs.com/blog/678822/201603/678822-20160315231925615-1678022650.png)
![](https://images2015.cnblogs.com/blog/678822/201603/678822-20160315232025709-439330529.png)
redis-trib.rb命令:
查询 ./redis-trib.rb check 127.0.0.1:7000
修复 ./redis-trib.rb fix 127.0.0.1:7000
增加路由 ./redis-trib.rb add-node 192.168.1.100:7010 192.168.1.100:7000
PS:如果想重新关联路由的话,可清除各个实例如/var/lib/redis/7000里文件,重新执行以下命令即可
./redis-trib.rb create --replicas 1 192.168.1.123:7000 192.168.1.123:7001 192.168.1.123:7002 192.168.1.124:7003 192.168.1.124:7004 192.168.1.124:7005
官方文档参考:http://redis.io/topics/cluster-tutorial