Redis集群安装

最近在研究Redis方面的知识,平常公司用的Redis环境是主从环境,也没有使用哨兵集群,因此私下在此研究一下Redis Cluster的使用。

所需环境准备:

  • Centos6 环境的Linux服务器
  • 3.2.8 版本的Redis
  • 2.3.0 版本以上的Ruby环境

第一步:安装Ruby
直接通过yum install ruby安装的ruby的版本过低,为2.0.0,使用这个版本去执行gem install redis的时候会遇到如下报错

[root@iZbp1gvgd2gh378t95h37bZ src]# gem install redis
Fetching: redis-4.1.2.gem (100%)
ERROR:  Error installing redis:
        redis requires Ruby version >= 2.3.0.

因此需要对Ruby进行升级,我采用了yum更新的方式,具体命令如下:

yum install centos-release-scl-rh    //会在/etc/yum.repos.d/目录下多出一个CentOS-SCLo-scl-rh.repo源

yum install rh-ruby23  -y    //直接yum安装即可  

scl  enable  rh-ruby23 bash    //必要一步

ruby -v    //查看安装版本

感谢 centos7/rhel7安装较高版本ruby2.2/2.3/2.4+ 的博客

第二步:下载安装redis
我本人的习惯是所有的软件都安装在 /app 下

wget http://download.redis.io/releases/redis-3.2.8.tar.gz
tar xzf redis-3.2.8.tar.gz
cd redis-3.2.8
make

第三步: 修改Redis的配置文件
我这次用了6个redis实例,三个主,三个从,形成集群。因此,将上面make生成的reids包中的redis.conf 文件拷贝六份,分别以端口号作为文件夹命名,具体如下:
在这里插入图片描述
修改每一个端口文件夹下面的redis.conf 中的配置内容,主要修改内容如下:

cluster-enabled yes  # 开启集群模式
pidfile /var/run/redis/redis.pid  #多实例情况下需修改,例如redis_6380.pid
port 6379        #多实例情况下需要修改,例如6380
logfile /var/log/redis/redis.log      #多实例情况下需要修改,例如6380.log
dbfilename dump.rdb  #多实例情况下需要修改,例如dump.6380.rdb
appendfilename "appendonly.aof"  #多实例情况下需要修改,例如 appendonly_6380.aof
dir /opt/redis/data      #多实例情况下需要修改,例如/data/638
cluster-config-file /opt/redis/6380/nodes.conf   #多实例情况下需要修改,例如/6380/

所以我改成了如下格式

pidfile /var/run/redis_6379.pid 
port 6379    
logfile "/app/redis/redis-3.2.8/logs/6379.log"    
dbfilename dump_6379.rdb  
appendfilename "appendonly_6379.aof"  
dir ./     
cluster-config-file nodes_6379.conf   

六个实例分别需要六个不同的配置文件,按照上面的格式改一下配置中的端口号就行。
但是光这样运行还会遇到 logs文件夹不存在的情况,所以需要创建logs文件夹。
在这里插入图片描述
第四步: 启动6个redis实例
在这里插入图片描述

全部运行起来之后效果如下:
在这里插入图片描述

第五步:安装 ruby的redis
这里需要注意一点,gem会有自己默认的一个源。这个源我们是无法访问的,所以我们需要替换这个源

gem sources -r http://rubygems.org/   #移除无法访问的源
gem sources -a https://gems.ruby-china.com/ #加上中国的ruby镜像

这之后安装 ruby的redis

gem install redis

第六步:生成redis集群

./redis-trib.rb create --replicas 1 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384

输出如下结果:

在这里插入图片描述
表示Redis Cluster 集群搭建完成。

最后,我们测试一下redis集群,效果如下
在这里插入图片描述

感谢:https://www.cnblogs.com/kerwinC/p/6611634.html 的博客
以及官方文档 https://redis.io/topics/cluster-tutorial 的指导

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值