liunx contos 7.4 安装redis集群
前前后后安装了几次 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 连接
也是成功的