• Centos7离线部署redis集群


     

    目录

    一、安装redis需要的依赖

    二、安装redis

    三、部署redis集群

    一、安装redis需要的依赖

    1、安装GCC

      1、检查是否安装gcc

        命令: gcc  -v

        如果能输出gcc版本信息,,说明安装了gcc。反之需要安装gcc

      2、安装gcc

        2.1创建目录/usr/local/gccSrc

        2.2上传以下rpm文件至/usr/local/gccSrc目录下 。 以下rpm包也可以从CentOS7的系统安装镜像中获取:解压镜像文件,进入"Packages"目录,里面很多rpm包,取出如下几个:

             cpp-4.8.5-11.el7.x86_64.rpm

        gcc-4.8.5-11.el7.x86_64.rpm

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

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

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

        libmpc-1.0.1-3.el7.x86_64.rpm

        mpfr-3.1.1-4.el7.x86_64.rpm

                 以上安装包下载: https://pan.baidu.com/s/1wyN_g7nULxnwjvpgSvWmfQ

        2.3依次进行安装  

    rpm -ivh mpfr-3.1.1-4.el7.x86_64.rpm
    rpm -ivh libmpc-1.0.1-3.el7.x86_64.rpm
    rpm -ivh kernel-headers-3.10.0-514.el7.x86_64.rpm
    rpm -ivh glibc-headers-2.17-157.el7.x86_64.rpm
    rpm -ivh glibc-devel-2.17-157.el7.x86_64.rpm
    rpm -ivh cpp-4.8.5-11.el7.x86_64.rpm
    rpm -ivh gcc-4.8.5-11.el7.x86_64.rpm

       2.4都安装成功后,验证

       gcc -v

     

    2、安装zlib

       1、上传zlib-1.2.11.tar.gz到/usr/local目录下,安装包下载: https://pan.baidu.com/s/1SlDwIqKPd35YJvxr0FUPuQ

      2、解压 tar -xzvf zlib-1.2.11.tar.gz

      3、cd zlib-1.2.11

      4、./configure --prefix=/usr/local/zlib

          (如果报错check for gcc,需要先安装gcc,安装完GCC再来执行)

      5、make

      6、make install

     

    3、安装openssl

      1、上传openssl-1.0.1h.tar.gz到/usr/local/目录下,安装包下载: https://pan.baidu.com/s/17iVLWIUuCHQGwn6dwt_DLQ

      2、解压 tar -xzvf openssl-1.0.1h.tar.gz

      3、cd openssl-1.0.1h/

      4、./config -fPIC --prefix=/usr/local/openssl enable-shared

      5、./config -t

      6、make && make install

      

      7、which openssl        //查看系统openssl的路劲

      8、rm -rf /usr/bin/openssl     // /usr/bin/openssl是which openssl 查看到的旧版本的openssl的路径

      9、cp /usr/local/openssl/bin/openssl /usr/bin/openssl  //拷贝新版本的安装路径到系统路径

      10、执行openssl version

      输出版本信息

       

    4、安装ruby

      1、上传ruby-2.5.7.tar.gz到/usr/local目录下,安装包下载: https://pan.baidu.com/s/1qwrGCVKMlrK_XUjrkzG7xA

      2、解压  tar -xzvf ruby-2.5.7.tar.gz

      3、cd ruby-2.5.7

      4、./configure –-prefix=/usr/local/ruby   //-prefix是将ruby安装到指定目录

      5、make && make install

      成功安装如图所示

       

      6、配置环境变量

        vi /etc/profile

      添加环境变量,如图所示

       

      7、执行命令使配置文件生效

        source /etc/profile

      8、执行命令校验ruby是否安装成功,安装配置成功会输出ruby版本信息

        ruby -v

      9、进入/usr/local/ruby-2.5.7/ext/zlib/目录下

        cd /usr/local/ruby-2.5.7/ext/zlib/

        (备注:/usr/local/ruby-2.5.7这个目录是ruby安装包后解压的目录)

      10、执行命令:ruby extconf.rb --with-zlib-include=/usr/local/zlib/include/ --with-zlib-lib=/usr/local/zlib/lib

        (备注:/usr/local/zlib是zlib安装目录,命令执行后会生成Makefile文件)

        

      11、打开Makefile文件,找到下面一行(在文件倒数第3行)把路径修改一下

        把zlib.o: $(top_srcdir)/include/ruby.h 改zlib.o: ../../include/ruby.h

         

      12、make && make install

            

      13、进入 /usr/local/ruby-2.5.7/ext/openssl/目录下

         cd  /usr/local/ruby-2.5.7/ext/openssl/

      14、执行命令:

        ruby extconf.rb --with-openssl-include=/usr/local/openssl/include/ --with-openssl-lib=/usr/local/openssl/lib

        (备注:/usr/local/openssl是openssl的安装目录,命令执行后会生成Makefile文件)

      15、打开Makefile文件,在topdir = /usr/local/ruby/include/ruby-xxx后面新增一行 top_srcdir = /usr/local/ruby-2.5.7

        (备注/usr/local/ruby-2.5.7是ruby解压的目录)

            

      16、make && make install

            

    6、安装redis-4.1.3.gem

      1、上传redis-4.1.3.gem到/usr/local/目录下,安装包下载: https://pan.baidu.com/s/1AJF_wBRbv2H86491PLsTRA

      2、执行命令 gem install redis-4.1.3.gem

      成功安装如图所示

       

    二、安装redis

      1、创建/usr/local/redis目录,上传redis-4.0.14.tar.gz至/usr/local/redis目录,安装包下载: https://pan.baidu.com/s/14y1VZbKCdYJuHZec1ezo-A

      2、cd /usr/local/redis

      3、解压 tar -xzvf redis-4.0.14.tar.gz

      4、cd redis-4.0.14/

      5、make && make install

      看到如下信息,redis安装成功了

       

      进入安装目录 cd /usr/local/redis/redis-4.0.14

      6、修改配置文件redis.conf 

    bind 127.0.0.1 改为bind 0.0.0.0  【说明:表示所有ip都可以连接这个redis】
    daemonize no 改为 daemonize yes 【说明:启动守护进程】
    protected-mode yes 改为 protected-mode no 【说明:取消保护模式,如果启用保护模式需要设置密码】
    logfile "" 改为 logfile "redis日志存储文件路径" 【说明:指定日志存储路径】

      7、启动redis的命令

      进入redis安装目录/usr/local/redis/redis-4.0.14,执行如下命令启动redis

        redis-server redis.conf

      启动后执行如下命令连接redis

        redis-cli -p 6379 -h 192.169.1.86

        (备注:6379是redis默认端口  192.169.1.86是redis所在服务器ip)

      并执行命令set 1 1存入值至redis中测试一下

           

     

    三、部署redis集群

    以部署三主三从集群为例(redis集群至少要6个节点)

       1、进入/usr/local/redis/目录

        cd /usr/local/redis

      2、执行mkdir redis700{1,2,3,4,5,6} 创建文件夹redis7001、redis7002、redis7003、redis7004、redis7005、redis7006

        

      3、将/usr/local/bin/ 目录下的redis-cli和redis-server复制到redis7001、...redis7006目录下

        

      4、在redis7001目录下创建redis.conf文件

        vim redis.conf

        文件内容

    #端口号(6个对应各自的端口号)
    port 7001
    appendonly yes
    #启动集群
    cluster-enabled yes
    #yes 启用守护进程
    daemonize yes
    #关联集群配置文件
    cluster-config-file "nodes.conf"
    #设置超时
    cluster-node-timeout 5000
    #日志信息
    logfile "redis7001.log"
    #指定访问地址
    bind 0.0.0.0
    tcp-keepalive 300

      redis7002目录下创建redis.conf文件

        文件内容为

    port 7002
    appendonly yes
    cluster-enabled yes
    daemonize yes
    cluster-config-file "nodes.conf"
    cluster-node-timeout 5000
    logfile "redis7002.log"
    bind 0.0.0.0
    tcp-keepalive 300

        依次类推,redis7003至redis7006目录下都创建redis.conf文件

        每个目录下(redis7001至redis7006)都应该有这三个文件

         

        分别将这6个服务启动起来,启动命令:redis-server redis.conf

        一个一个启动有点麻烦,在/usr/local/redis/目录下创建一下sh脚本来启动redis实例

        vim startall.sh

    cd redis7001
    ./redis-server redis.conf
    cd ..
    cd redis7002
    ./redis-server redis.conf
    cd ..
    cd redis7003
    ./redis-server redis.conf
    cd ..
    cd redis7004
    ./redis-server redis.conf
    cd ..
    cd redis7005
    ./redis-server redis.conf
    cd ..
    cd redis7006
    ./redis-server redis.conf

        赋予 startall.sh脚本可执行权限

          chmod 777 startall.sh

        执行 startall.sh脚本

          ./startall.sh

     

        执行ps -ef|grep redis情况查看redis运行情况,启动成功如图所示

          

        创建集群,将这几个节点加入集群。首先进入redis-trib.rb所在目录

         

         进入/usr/local/redis/redis-4.0.14/src/目录

          cd /usr/local/redis/redis-4.0.14/src/

        执行如下命令:

          ./redis-trib.rb  create --replicas  1  192.169.1.86:7001  192.169.1.86:7002  192.169.1.86:7003  192.169.1.86:7004  192.169.1.86:7005  192.169.1.86:7006

        【备注:192.169.1.86是redis所在服务器ip,注意这个ip不能写127.0.0.1,否则只有本机才能连接】

         

        输入yes 回车 ,如图所示加入集群成功

         

         【说明:M表示是主节点,S表示是从节点】

     

        连接集群测试

        连接命令:redis-cli -p 其中一个节点的端口 -h 其中一个节点的ip -c

        【备注:一定要有-c , -c表示以集群方式连接,没有-c就是单点连接了】

        并往redis存一个值进行测试:set a a ,如下图表示成功

         

    参考地址:

    1、Linux下Redis集群安装部署及使用详解(在线和离线两种安装+相关错误方案)https://www.cnblogs.com/xuliangxing/p/7146868.html

    2、Linux安装Ruby详解(在线和离线安装) https://www.cnblogs.com/xuliangxing/p/7132656.html

    3、CentOS7离线安装gcc https://blog.csdn.net/lvtula/article/details/82590870

  • 相关阅读:
    [PATCH] input: add driver for Bosch Sensortec's BMA150 accelerometer
    linux内核GPIO模拟I2C实例
    修改默认apn数据的方法
    Android平台开发WIFI function portingWIFI功能移植
    Silverlight中后台获取样式的方法
    Silverlight中读取Word
    Silverlight找到模板中的子控件
    根据年月来获取该年该月的天数
    Silverlight中Treeview中判断当前节点是否含有父节点
    修改 Linux /etc/profile 以后如何生效
  • 原文地址:https://www.cnblogs.com/kiko2014551511/p/12216622.html
Copyright © 2020-2023  润新知