iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >如何离线安装Redis集群
  • 410
分享到

如何离线安装Redis集群

2024-04-02 19:04:59 410人浏览 泡泡鱼
摘要

这篇文章主要介绍了如何离线安装Redis集群,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、通过原生命令安装Redis集群(仅做理解Red

这篇文章主要介绍了如何离线安装Redis集群,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

一、通过原生命令安装Redis集群(仅做理解Redis集群原理使用)    

      1.配置开启所需要的Redis节点     

     因为这里只是做一个简单的Redis集群原理演示,所以假设此时Redis服务已经安装完毕,在config文件夹下创建六个redis.conf配置文件,分别为redis-7000.conf、redis-7001.conf、redis-7002.conf、redis-7003.conf、redis-7004.conf、redis-7005.conf。其内容如下:

port ${port}
daemonize yes
dir "/opt/redis/redis/data/"
dbfilename "dump-${port}.rdb"
logfile "${port}.log"
cluster-enabled yes //开启节点的集群功能
cluster-config-file nodes-${port}.conf
cluster-require-full-coverage no
cluster-node-timeout 15000

     依次启动六个redis后台服务

     redis-server redis-7000.conf
     redis-server redis-7001.conf
     redis-server redis-7002.conf
     redis-server redis-7003.conf
     redis-server redis-7004.conf
     redis-server redis-7005.conf

ps -ef | grep redis查看启动情况:

如何离线安装Redis集群    

  2.通过集群命令meet完成节点之间的相互通信    

    meet:cluster meet ip port
    redis-cli -h 127.0.0.1 -p 7000 cluster meet 127.0.0.1 7001
    redis-cli -h 127.0.0.1 -p 7000 cluster meet 127.0.0.1 7002
    redis-cli -h 127.0.0.1 -p 7000 cluster meet 127.0.0.1 7003
    redis-cli -h 127.0.0.1 -p 7000 cluster meet 127.0.0.1 7004
    redis-cli -h 127.0.0.1 -p 7000 cluster meet 127.0.0.1 7005

    通过端口为7000的节点,其他的节点也可以相互感知到对方的存在,然后每两个节点之间都会通信。

    验证:登录端口号为7000节点以后,分别输入cluster nodes和cluster info 命令。

如何离线安装Redis集群    

  3.指派槽

    完成了节点之间的通信以后,就需要给每个主节点分配虚拟槽,一共存在16384个slot,redis节点之间互相知道哪个槽在哪个节点上,如果数据访问到了不属于自己的槽的redis,redis会告诉数据应该去访问哪个redis

    指派槽的命令:cluster addslots slot[slot...]

    redis-cli -h 127.0.0.1 -p 7000 cluster addslots {0...5641}
    redis-cli -h 127.0.0.1 -p 7001 cluster addslots {5642...10922}
    redis-cli -h 127.0.0.1 -p 7002 cluster addslots {10923...16383}

    在这里发现使用addslots 只能一个一个输入,感觉非常扯,使用数组的方式redis会报错,用网上的解决办法是将大括号里的 三个点改为两个点,我试了试不行的,如果有什么好的解决办法可以提供一下。    

  4.配置节点的主从关系    

    cluster replicate node-id
    redis-cli -h 127.0.0.1 -p 7003 cluster replicate ${node-id-7000}
    redis-cli -h 127.0.0.1 -p 7004 cluster replicate ${node-id-7001}
    redis-cli -h 127.0.0.1 -p 7005 cluster replicate ${node-id-7002}

    到此通过原生命令安装Redis集群就已经完成了,中间的步骤存在问题,无法分配slots,但是可以帮助简单的理解一下由Redis的单节点到Redis的集群都需要做什么工作。 

 二、通过Ruby离线安装Redis集群    

  1.安装环境以及安装包说明

系统:Centos7(安装的时候选择安装了GCc)
安装包:redis-4.0.6.tar.gz //redis 的安装包
    ruby-2.5.6.tar.gz //集群搭建需要Ruby环境
    rubygems-3.0.6.zip //redis集群需要的ruby插件,rubygems是ruby的一个包管理工具,通过rubygems安装redis-3.2.2.gem
    zlib-1.2.11.tar.gz //可能缺少的基础环境zlib
    openssl-1.0.2t.tar.gz //可能缺少的基础环境openssl

  2.安装步骤      

   (1)解压编译redis

mkdir /usr/local/redis //创建redis工作目录
cp redis-4.0.6.tar.gz /usr/local/redis //将redis的安装包拷贝到redis目录下
cd /usr/local/redis //进去redis文件下
tar -vxf redis-4.0.6.tar.gz //解压缩
ln -s redis-4.0.6 redis //建立软连接
cd redis //进入redis目录下
make && make install //编译安装redis

      (2)创建集群目录

cd /usr/local/redis
mkdir redis_cluster //在redis安装目录下创建redis_cluster目录
mkdir redis700{0,1,2,3,4,5}//批量创建六个redis节点工作目录,三主三从。

如何离线安装Redis集群    

  (3)配置redis.conf

     cd /usr/local/redis/redis_cluster //进去集群工作目录

     vim redis.conf //创建redis.conf文件并添加一下内容

port 7000 //配置集群的端口
bind 本机的IP //这里的默认配置是127.0.0.1改为内网ip。
daemonize yes //允许redis在后台运行
pidfile /var/run/redis-7000.pid //改成和端口一致
cluster-enabled yes // 开启集群 把注释去掉
cluster-config-file node-7000.conf //集群的配置,和端口一致
cluster-node-timeout 15000 // 请求超时,默认为15秒
appendonly yes // aof日志开启,有需要就开启,每一次写操作都会记录一条日志。

    将redis.conf 分别copy到六个节点的文件下

    cp redis.conf redis7000/ //将配置文件拷贝到redis7000节点的工作目录下
    cp redis.conf redis7001/
    cp redis.conf redis7002/
    cp redis.conf redis7003/
    cp redis.conf redis7004/
    cp redis.conf redis7005/

如何离线安装Redis集群

    因为配置文件是根据7000端口模本的配置写的,所以除了redis7000目录下的redis.conf,其他工作目录下的配置文件都需要将文件内容中的端口号修改为对应的工作目录的端口号。   

   (4)启动服务      

    cd /usr/local/redis/redis_cluster
    依次启动所有节点
    redis-server redis7000/redis.conf
    redis-server redis7001/redis.conf
    redis-server redis7002/redis.conf
    redis-server redis7003/redis.conf
    redis-server redis7004/redis.conf
    redis-server redis7005/redis.conf

    查看启动情况:ps -ef | grep redis

如何离线安装Redis集群    

    (5)安装ruby

mkdir /usr/local/ruby //创建ruby工作目录
cp ruby-2.5.6.tar.gz /usr/local/ruby //将安装包拷贝到该目录下
cd /usr/local/ruby //进入ruby工作目录
tar -vxf ruby-2.5.6.tar.gz // 解压缩
cd ruby-2.5.6/
./configure
make && make install

     查看安装情况:ruby -v

如何离线安装Redis集群    

    (6)安装rubygems

mkdir /usr/local/rubygems //创建rubygems工作目录
cp rubygems-3.0.6.zip /usr/local/rubygems //将安装包拷贝到该目录下
cd /usr/local/rubygems //进入ruby工作目录
unzip rubygems-3.0.6.zip // 解压缩
cd rubygems-3.0.6/
ruby setup.rb

    执行ruby setup.rb 的时候出现以下错误:

如何离线安装Redis集群

      解决办法:缺少了zlib包,需要安装zlib。    

    (7)安装zlib

mkdir /usr/local/zlib //创建zlib工作目录
cp zlib-1.2.11.tar.gz /usr/local/zlib //将安装包拷贝到该目录下
cd /usr/local/zlib //进入zlib工作目录
tar -vxf zlib-1.2.11.tar.gz // 解压缩
cd zlib-1.2.11/
./configure --prefix=/usr/local/zlib

如何离线安装Redis集群

make
make install

    (8)编译ruby中的zlib       

cd /usr/local/ruby/ruby-2.5.6/ext/zlib/
ruby extconf.rb

     出现以下错误信息:

如何离线安装Redis集群

     发现原来是要将文件安装到本地运行库的里面才行,所有安装的时候需要额外配置信息。重新执行一下命令:

ruby extconf.rb --with-zlib-include=/usr/local/zlib/include/ --with-zlib-lib=/usr/local/zlib/lib //会生成一个Makefile文件

如何离线安装Redis集群

    继续下一步:make && make install

    又出现报错信息:

如何离线安装Redis集群

    这个时候打开ext/zlib/Makefile文件,找到下面一行把路径进行修改一下。

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

    如下图:

如何离线安装Redis集群

    修改完成,然后保存,然后重新:make && make install

如何离线安装Redis集群

  zlib的错误都解决以后再继续重新安装rubygems。

cd /usr/local/rubygems/rubygems-3.0.6
ruby setup.rb

这次就安装成功了,如下图:

如何离线安装Redis集群    

    (9)安装redis-3.0.0.gem

cp redis-3.0.0.gem /usr/local/redis/redis
cd /usr/local/redis/redis
gem install redis-3.3.0.gem

    出现以下错误信息:

如何离线安装Redis集群

   因为Redis集群交互是需要OpenSSL,所系我们还需要安装OpenSSL。    

    (10)安装openssl

mkdir /usr/local/openssl //创建openssl工作目录
cp openssl-1.0.2t.tar.gz /usr/local/openssl //将安装包拷贝到该目录下
cd /usr/local/openssl //进入openssl工作目录
tar -vxf openssl-1.0.2t.tar.gz // 解压缩
cd openssl-1.0.2t/
./config -fPIC --prefix=/usr/local/openssl enable-shared
./config -t
make && make install

    安装成功:

如何离线安装Redis集群    

    (11)编译ruby中的openssl

cd /usr/local/ruby/ruby-2.5.6/ext/openssl/
ruby extconf.rb --with-openssl-include=/usr/local/openssl/include/ --with-openssl-lib=/usr/local/openssl/lib 此时会生成Makefile文件,下面出现的错误需要修改本文件
make && make install

    出现以下错误信息:

如何离线安装Redis集群

    解决办法:vim Makefile 把Makefile文件中所有的 $(top_srcdir) 换成 ../.. 注意替换所有

    替换完成后,重新进行

make && make install

    安装成功:

如何离线安装Redis集群

    安装成功以后继续进行第九步的安装redis-3.0.0.gem

cd /usr/local/redis/redis/
gem install redis-3.0.0.gem

    安装成功:

如何离线安装Redis集群

    到这里ruby环境总算是安装成功了,真是不容易啊,其实redis cluster的安装的主要内容还是上面的Ruby环境的安装配置过程。    

    (12)启动redis集群      

cd /usr/local/redis/redis/src/

    在该目录下执行命令:

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

如何离线安装Redis集群  

  输入yes

  安装成功:

如何离线安装Redis集群    

    (13)验证集群状态      

      以普通方式连接到7002端口的节点 redis-cli -p 7002 -h 192.168.182.132

      参数说明: -p port 端口 -h host 主机 -c cluster 集群

      连接进集群之后 输入ping , 如果响应了pong 表示连接集群成功;

      CLUSTER INFO 列出当前节点的信息,CLUSTER NODES 列出当前集群中的节点信息;

如何离线安装Redis集群

    执行命令:set hello Word

如何离线安装Redis集群

    7002节点报错,客户端该数据应该使用7000端口的客户端才能添加(是因为登录的时候没有加-c)

    登录7000端口的客户端重新set hello world,添加数据成功(上次在7002中添加hello world没有成功,所以在7000中获取hello是没有内容的)

如何离线安装Redis集群

    使用集群方式连接集群redis-cli -p 7003 -h 192.168.182.132 -c(7003是7000的备机)

    查询hello:  

get hello

如何离线安装Redis集群

    重新设置hello的值:

set hello java

    设置成功:

如何离线安装Redis集群

    通过对比发现如果登录的时候不加-c(非集群模式登录,登录的是单节点),添加数据时,如果数据的key的虚拟槽位没有在该redis上则不能添加成功,即单节点登录,对redis的操作不会进行重定向。    

    (14)验证集群的主从配置    

    关闭7002端口的节点

    kill -9 7002redis节点的pid

    登录到7000端口的节点:

redis-cli -p 7000 -h 192.168.182.132 -c
cluster nodes

    CLUSTER NODES 前面的字符串是节点的id。从这个命令还可以知道哪些节点还活着,哪些节点已经挂了。带着fail的都是已经挂掉的节点。

如何离线安装Redis集群   

 集群信息显示7002节点已经down掉,7005取代7002成为主节点

感谢你能够认真阅读完这篇文章,希望小编分享的“如何离线安装Redis集群”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网数据库频道,更多相关知识等着你来学习!

您可能感兴趣的文档:

--结束END--

本文标题: 如何离线安装Redis集群

本文链接: https://www.lsjlt.com/news/57456.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何离线安装Redis集群
    这篇文章主要介绍了如何离线安装Redis集群,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、通过原生命令安装Redis集群(仅做理解Red...
    99+
    2022-10-18
  • Redis集群模式部署(包含联网和离线安装)
    系统环境系统版本:CentOS 6.8 x86_64(适用于CentOS 7.*) gcc 版本 4.4.7  redis版本:4.0.8 安装方...
    99+
    2022-10-18
  • redis集群安装
    本文 redis版本3.2.9介绍 IP 端口 角色 127.0.0.1 7000 Master 127.0.0.1 7001 Master 127.0.0.1 7002 Maste...
    99+
    2022-10-18
  • Redis集群的安装
    Redis集群的安装步骤 注意:redis的单节点安装之前已经安装好了 1.创建安装目录 在master ,node1 ,node2中分别创建      mkdir /usr/local/soft/redis-cluster 2、将r...
    99+
    2017-08-31
    Redis集群的安装
  • ubuntu中redis集群如何安装
    这篇文章主要介绍了ubuntu中redis集群如何安装,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。首先先要检查一下是否安装gccgcc -v如...
    99+
    2022-10-18
  • docker compose如何安装redis集群
    今天小编给大家分享一下docker compose如何安装redis集群的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下...
    99+
    2023-06-29
  • CentOS 7.4安装redis-4.0.10集群
    redis cluster简介:    3.0以后版本加入,去中心化设计,不同redis节点都可接收用户请求并持有不同数据,每节点共享节点innode信息方便找到数据...
    99+
    2022-10-18
  • redis集群离线部署的方法是什么
    Redis集群的离线部署方法如下:1. 下载Redis源码:从Redis官方网站或GitHub上下载最新版的Redis源码。2. 解...
    99+
    2023-08-30
    redis
  • 在redhat6.4安装redis集群【教程】
      参考:   http://redis.io/topics/cluster-tutorial(主要是Creating a Redis Cluster using the create-cluster sc...
    99+
    2022-06-04
    集群 教程 redis
  • 关于docker compose安装redis集群的问题(集群扩容、集群收缩)
    目录一、redis 配置信息模板二、编写批量生成配置文件脚本三、批量生成配置文件四、编写 docker-compose 文件五、做集群、分配插槽六、测试:七、手动扩容八、添加主从节点...
    99+
    2022-11-13
  • ubuntu22.04离线安装jdk、mysql、redis、mongodb、nginx
    ubuntu22.04离线安装jdk、mysql、redis、mongodb、nginx 1 jdk-8u181安装1.1 安装包列表1.2 安装方式 2 java依赖环境安装2.1 安装包列表2.2 安装方式 3 re...
    99+
    2023-08-19
    mongodb java redis mysql nginx
  • 怎么安装搭建redis cluster 4.0.9集群
    本篇内容主要讲解“怎么安装搭建redis cluster 4.0.9集群”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么安装搭建redis cluster 4...
    99+
    2022-10-18
  • 怎么安装和管理redis-cluster集群
    redis-cluster的安装管理环境介绍系统环境:Red Hat Enterprise Linux Server release 6.2 (Santiago)内核版本:Linux zxt-02.com ...
    99+
    2022-10-18
  • CentOS6.6如何安装Redis3.0.3集群
    这篇文章主要介绍CentOS6.6如何安装Redis3.0.3集群,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 一个Redis集群,至少需要6个节点,3个为主,3个为从。IP ...
    99+
    2022-10-18
  • centos如何离线安装mysql
    本篇内容介绍了“centos如何离线安装mysql”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2023-02-16
    centos mysql
  • centos如何离线安装nginx
    这篇文章给大家分享的是有关centos如何离线安装nginx的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。安装准备Nginx 离线安装依赖gcc、g++ 环境,所以安装前要先检查以下系统中是否自带 gcc 和 g...
    99+
    2023-06-27
  • Redis单机安装和哨兵模式集群安装的实现
    目录前言:1、Redis单机版安装1.1:下载安装包1.2:解压安装包1.3:执行make命令,编译redis代码1.4:安装并指定安装目录1.5:配置环境变量1.6:让redis作...
    99+
    2022-11-13
  • Redis 单机安装和哨兵模式集群安装的实现
    目录前言:1、Redis单机版安装1.1:下载安装包1.2:解压安装包1.3:执行make命令,编译redis代码1.4:安装并指定安装目录1.5:配置环境变量1.6:让redis作为服务进行后台启动1.7:redis关...
    99+
    2022-07-10
    Redis单机安装 Redis哨兵模式集群安装
  • Redis中怎么安装一个六节点集群
    这篇文章主要介绍了Redis中怎么安装一个六节点集群的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Redis中怎么安装一个六节点集群文章都会有所收获,下面我们一起来看看吧。简介redis cluster是亲生的...
    99+
    2023-06-27
  • Docker下Redis集群安装配置怎么实现
    这篇文章主要介绍“Docker下Redis集群安装配置怎么实现”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Docker下Redis集群安装配置怎么实现”文章能帮助大家解决问题。一、所有机器拉去镜像...
    99+
    2023-07-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作