centos7+redis5.0.0 集群配置

一、安装GCC开发环境

由于redis是用源码安装,所以需要安装开发环境

1、下载所需文件:

     下载地址:https://download.csdn.net/download/zhy2074/10766569

     cpp-4.8.2-16.el7.x86_64.rpm

     gcc-4.8.2-16.el7.x86_64.rpm

     glibc-2.17-55.el7.x86_64.rpm

     glibc-common-2.17-55.el7.x86_64.rpm

     glibc-devel-2.17-55.el7.x86_64.rpm

     glibc-headers-2.17-55.el7.x86_64.rpm

     glibc-static-2.17-55.el7.x86_64.rpm

     glibc-utils-2.17-55.el7.x86_64.rpm

     kernel-headers-3.10.0-123.el7.x86_64.rpm

     libmpc-1.0.1-3.el7.x86_64.rpm

     mpfr-3.1.1-4.el7.x86_64.rpm

2、创建临时文件夹将以上文件全部拷贝到临时文件夹

3、进入临时文件执行安装:rpm -Uvh *.rpm --nodeps --force

     运行此命令会根据依赖按照顺序安装rpm

     注:

      --nodeps:rpm在安装包时,不检查依赖关系,例如安装B,B依赖C导致无法安装,使用--nodeps就可以安装成功

      --force: 强制安装

4、验证安装结果:gcc -v  能看到版本信息代表安装成功

二、安装redis5.0.0

1、官网下载redis5.0.0

      下载地址:https://redis.io/download

2、解压redis-5.0.0.tar.gz到指定目录

      tar -zxvf redis-5.0.0.tar.gz  -C /usr/local

3、编译并安装

      cd /usr/local/redis-5.0.0

      make

      出现如下即编译成功

      Hint: It's a good idea to run 'make test' ?

      make[1]: Leaving directory `/usr/local/redis-5.0.0/src'

4、在/usr/local/redis-5.0.0/src中执行安装命令:

      cd /usr/local/redis-5.0.0/src

      make install

     安装成功会出现如下日志信息

     Hint: It's a good idea to run 'make test' ?

         INSTALL install

         INSTALL install

         INSTALL install

         INSTALL install

         INSTALL install

     此时redis已经安装成功

三、配置集群

1、修改redis配置文件

     protected-mode no       # 关闭保护模式  打开(yes)时下边bind配置才生效

     daemonize yes             # 守护进程模式开启(后台启动)

     #bind 127.0.0.1             #默认只监听本机访问也可以将需要访问的IP空格分隔添加在后面,需要注释掉

     cluster-enabled yes      #启用集群

     cluster-config-file nodes-6379.conf      #集群节点配置文件

2、新建集群节点文件夹

     此前准备了两台机器:10.1.101.88、10.1.101.89  本文集群试用三主三从六个节点,所以分别在两台机器上创建三个文件夹为:

     /u01/redis/cluster/6379

     /u01/redis/cluster/6380

     /u01/redis/cluster/6381

3、拷贝配置文件

     分别将redis.conf拷贝到以上两个文件夹下并修改端口号,可以用一下方法快速完成:

     cp  /usr/local/redis-5.0.0/redis.conf   /u01/redis/cluster/6379/redis_6379.conf

     sed 's/6379/6380/g' /usr/local/redis-5.0.0/redis.conf > /u01/redis/cluster/6380/redis_6380.conf

     sed 's/6379/6381/g' /usr/local/redis-5.0.0/redis.conf > /u01/redis/cluster/6381/redis_6381.conf

     另一台机器做同样的操作

4、启动redis

     redis-server   /u01/redis/cluster/6379/redis_6379.conf

     redis-server   /u01/redis/cluster/6380/redis_6380.conf

     redis-server   /u01/redis/cluster/6381/redis_6381.conf

     通过进程查看启动是否成功:ps -ef  | grep redis-server

5、启动集群

     从redis5.0开始集群管理器从Ruby(redis-trib.rb)移植到C代码,可直接用redis-cli 启动

     redis-cli --cluster create 10.1.101.88:6379  10.1.101.89:6379 10.1.101.88:6380 10.1.101.89:6380 10.1.101.88:6381 10.1.101.89:6381 --cluster-replicas 1

     1) create    #表示创建一个redis集群。

     2) --cluster-replicas 1    #表示为集群中的每一个主节点指定一个从节点,即一比一的复制。

     运行过程中,会有个提示,输入yes回车即可。从屏幕输出,可以很容易地看出哪些是主(master)节点,哪些是从(slave)节点

6、访问redis集群

     redis-cli -c -p 6379     #在单机版redis基础上指定参数“-c”即可

     查看集群中的节点:

     127.0.0.1:6379>  cluster nodes

     到此集群已经搭建完毕,可以正常使用了

四、配置过程中遇到的坑

1、启动集群时报错“[ERR] Node 10.1.101.88:6379 is not configured as a cluster node.”

    是因为节点的配置项“cluster-enabled”的值不为“yes”。这时需要将“cluster-enabled”的值改为“yes”,并重启该节点

2、启动集群式报错“[ERR] Sorry, can't connect to node 10.1.101.89:6379”

    引起这个问题的原因是从Redis 3.2.0版本开始引入了保护模式(protected mode),防止redis-cli远程访问,要将"protected_mode" 的值改成"no"

3、启动单个节点时报错"Sorry, the cluster configuration file nodes.conf is already used by a different Redis Cluster node."

    原因是对应节点配置文件中的 cluster-config-file nodes-6379.conf  没有打开,所以本机上的所有节点都在用nodes.conf

 

 

你可能感兴趣的:(redis,redis5.0,集群)