centos7下redis集群部署

redis版本为 redis-4.0.1

系统为centos7

该部署参考博主:https://blog.csdn.net/dream_an/article/details/77199462

redis服务器的集群主从配置,以2台服务器做示例,搭建3主3从,共6个节点,集群配置如图:

本文档灰色部分即代表linux命令,若粘贴命令时带上了#,建议还是不要继续操作

该部署参考博主:https://blog.csdn.net/dream_an/article/details/77199462,非常感谢大佬

  • 安装redis,下载Redis并编译

 

# cd /data/

# mkdir redis

# cd redis/

# wget http://download.redis.io/releases/redis-4.0.1.tar.gz

# tar xzf redis-4.0.1.tar.gz

# cd redis-4.0.1

# make

# make test

 

 

若make命令报错即未安装c++的编译器

执行

 

# yum -y install gcc-c++

安装完成后再次执行make命令,若还是报错,删除redis-4.0.1文件夹,再解压压缩包,再来一次

若make test命令报错,通常是tcl未安装,执行yum install tcl,其它错误,自行百度解决

  • 集群文件配置

两台服务器,每台服务器配置如下:(以服务器1为例)

 

[[email protected] redis-4.0.1]# mkdir redis-cluster

[[email protected] redis-4.0.1]# mkdir redis-cluster/nodes-7000

[[email protected] redis-4.0.1]# mkdir redis-cluster/nodes-7001

[[email protected] redis-4.0.1]# mkdir redis-cluster/nodes-7002

[[email protected] redis-4.0.1]# cp redis.conf redis-cluster/nodes-7000

[[email protected] redis-4.0.1]# cp redis.conf redis-cluster/nodes-7001

[[email protected] redis-4.0.1]# cp redis.conf redis-cluster/nodes-7002

 

依次配置redis.conf 如下:(以nodes-7000为例)

 

 [[email protected] redis-4.0.1]# vim redis-cluster/nodes-7000/redis.conf

 

找到下列配置的位置且修改,vim编辑器 esc下 /字符串/ 可检索,n查找下一个

 

port 7000      #在不同的服务器和nodes-xx中,端口也不同

cluster-enabled yes   #开启集群模式

bind 42.157.194.7    #这里换成服务器的外网ip

daemonize yes       #redis后台运行  

cluster-config-file nodes-7000.conf   #集群节点的redis.conf文件一样

cluster-node-timeout 5000

appendonly yes    #redis数据持久化

#这里仅仅贴一下简单的配置,若需要日志也可以指定文件,其他配置按照自己的需求修改

 

 

三、依次启动redis实例

 

src/redis-server redis-cluster/nodes-7000/redis.conf

 

查看redis启动的实例

 

ps -ef | grep redis

 

如下图所示即成功了

在另外一台服务器进行相同操作,依次启动7003 7004 7005 节点,一定要有6个节点,也可部署在同一台服务器上

四、创建集群

只需要在第一台服务器上操作即可,服务器上安装gem redis (为redis-trib可以执行),其他服务器不用

  1. 安装ruby

yum -y install ruby

  1. 执行

gem install redis

若执行第二步报错,requires Ruby version >= 2.2.2.

原因是CentOS7 yum库中ruby的版本支持到 2.0.0,可gem 安装redis需要最低是2.2.2,自己编译的ruby源码,我们采用rvm来更新ruby

解决来自博主:https://blog.csdn.net/fengye_yulu/article/details/77628094

  1. 安装RVM

  gpg2 --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3

 

  curl -L get.rvm.io | bash -s stable

 

若执行报错,报错信息中有推荐的命令,执行报错信息中的命令即可,这一步安装时间比较长

find / -name rvm -print 

(如下图所示即成功了)

 

 

source /usr/local/rvm/scripts/rvm

  1. 查看rvm库中已知的ruby版本

 

rvm list known

 

  1. 安装一个ruby版本(我安装的是2.5.5)

 

rvm install “ruby-2.5.5”

 

  1. 使用一个ruby版本

 

rvm use “ruby-2.5.5”

Using /usr/local/rvm/gems/ruby-2.5.5

  1. 设置默认版本

 

rvm use “ruby-2.5.5”--default

Using /usr/local/rvm/gems/ruby-2.5.5

  1. 卸载一个已知版本

 

rvm remove 2.0.0

7.查看ruby版本:

 

ruby --version

 

gem install redis

 

  • 开启集群

 

src/redis-trib.rb create --replicas 1 42.157.194.2:7000 42.157.194.2:7001 42.157.194.2:7002 42.157.194.3:7003 42.157.194.3:7004 42.157.194.3:7005

 

Can I set the above configuration? (type 'yes' to accept):输入yes

 

如下图所示即大功告成!!!