前前后后安装了几次redis集群,基本上每次安装都会采坑,耗时伤神。
安装redis依赖gcc环境,安装前先检查liunx上面有没有安装GCC
命令:gcc -v
上传redis-4.0.1.tar.gz 到/home 下
解压:tar -zxvf redis-4.0.1.tar.gz
然后 make & make install
在usr/local 目录下创建redis-cluster 文件建
在在redis-cluster 文件夹里面创建redis-4.0 文件夹和redis7001、redis7002、redis7003、redis7004、redis7005
、redis7006 文件夹
回到/home 目录下 将redis.conf 和src下的redis-server、redis-cli、redis-benchmark 复制到/usr/local/redis-cluster/redis-4.0 下
编译 redis.conf 文件 将daemonize 后面的no改为yes 然后退出
启动 :./redis-server ./redis.conf
至此一个单机版的redis已经安装好
下面安装集群
先安装两个依赖包
yum install ruby
yum install rubygems
将redis-4.0 文件夹下的 redis-server、redis-cli、redis.conf 分别复制到
redis7001、redis7002、redis7003、redis7004、redis7005、redis7006 下
分别修改redis7001、redis7002、redis7003、redis7004、redis7005、redis7006 中的
redis.conf 文件
修改内容如下
port 7001
appendonly yes //启用守护进程
cluster-enabled yes //启动集群
cluster-node-timeout 5000 //超时时间
bind 0.0.0.0 //运行所有ip访问
:wq!保存脚本,创建成功
分别启动
redis7001、redis7002、redis7003、redis7004、redis7005、redis7006
将/home/redis-4.0.1/src 下的redis-trib.rb 复制到/usr/local/redis-cluster 下
在/usr/local/redis-cluster 目录下执行
./redis-trib.rb create --replicas 1 服务器ip:7001 服务器ip:7002 服务器ip:7003 服务器ip:7004 服务器ip:7005 服务器ip:7006
执行时候基本上会报错
是因为缺少redis和ruby的接口,使用gem 安装
wget https://rubygems.global.ssl.fastly.net/gems/redis-3.2.1.gem 由于ruby 使用的版本低于2.2的 所以下载版本不能高于4.0
执行 gem install -l ./redis-3.2.1.gem
如果能成功执行,说明人品真的好。
再次执行 ./redis-trib.rb create --replicas 1 服务器ip:7001 服务器ip:7002 服务器ip:7003 服务器ip:7004 服务器ip:7005 服务器ip:7006
可能会看到下面的错误(我在第二次安装redis集群时候遇见的)
(遇见把错误复制下来去网上查原因:网上有很多遇见这种错误的,导致发生这种错误的原因也是不同。
我检查了一下自己的redis.conf配置文件,bind 没有问题,端口7001也开放了,防火墙也释放了,还是报这个错 ,
当我执行 redis-cli shutdown 视图关闭该节点时,发现提示我没有权限,我才突然想起之前安装的单机版释放了密码,安装集群时候
直接copy单机的redis.conf 。把每个redis 节点redis.conf中的requirepass 注释掉后在执行创建集群命令发现成功了。)
可以看到如下显示
检查集群是否成功
redis-cli -p 7001 -c
远程连接一下 我选择本地window连接
也是成功的