Centos 离线傻瓜式一键式部署 Redis 集群(附脚本+安装包)

前言

环境要求

  • Redis版本:7.0.12
  • 系统环境:Centos 7
  • 用户权限:普通用户
  • gcc编译器:必须

若没有gcc -v提示-bash: gcc: command not found,则表示没有安装gcc

可以参考我的另一篇博文# CentOS离线一键安装gcc(附安装包+脚本),进行gcc的安装

集群规模

本文默认的集群搭建规模如下表所示:

服务器 示例IP 端口
node1 10.0.0.1 8379, 8380
node2 10.0.0.2 8379, 8380
node3 10.0.0.3 8379, 8380

即三主三从,部署在三台服务器上的redis集群。 当然具体是几主几从,部署到几台服务器上,是可以在下面执行脚本时自己选择决定。

资源下载

使用教程

  1. 上传下载到的redis_7.0.12_install.tar到指定的三台服务器node1node2node3中。

    若你需要将redis集群部署到6台不同的服务器上,则需要上传tar包到6台服务器上。

  2. 在三台服务器node1node2node3上的资源包同级目录下,分别执行以下命令:

    shell 复制代码
    tar -xvf redis_7.0.12_install.tar && cd redis_7.0.12_install && ./install.sh /opt/module/redis 8379 8380
    • /opt/module/redis:redis安装根目录路径
    • 8379:redis在此服务器上的第一个节点端口
    • 8380:redis在此服务器上的第二个节点端口

    关于install.sh脚本说明:

    • install.sh命令模板范例:./install.sh [redis_dir] [port1 port2 ...]
    • 若还需要在此服务器上部署第三个、第四个redis,继续追加port参数即可。一个port参数,对应此服务器上的一个redis节点服务。
    • 如果想要部署redis到6台不同的服务器上,则执行上面的命令到6台不同的服务器上即可。构成6主6从的redis集群。
    • 若想一台服务器一个redis节点,同6个节点,6个服务器。则需要在6台服务器的资源包同级目录下执行命令tar -xvf redis_7.0.12_install.tar && redis_7.0.12_install/install.sh /opt/module/redis 8379
  3. 将各个节点加入到redis集群中

    bash 复制代码
    # 进入到redis安装目录
    cd /opt/module/redis
    
    # 执行加入redis节点的命令
    yes yes | ./bin/redis-cli --cluster create 10.0.0.1:8379 10.0.0.1:8380 10.0.0.2:8379 10.0.0.2:8380 10.0.0.3:8379 10.0.0.3:8380 --cluster-replicas 1 -a admin123456

    创集群的命令,命令最后的admin123456是设置的认证密码,-replicas 1的意思是每台redis服务器有一个备份机,执行完此命令后,该脚本会自动为这6个redis实例分配主从和槽。 如果你想自己指定节点的主从对应关系,可以参考# Redis集群指定主从关系及动态增删节点

  4. 登录任意一台服务器节点,执行以下命令,验证集群状态:

    shell 复制代码
    # 进入到redis安装目录
    cd /opt/module/redis
    
    # 验证redis集群状态及信息
    ./bin/redis-cli -h localhost -c -p 8379 -a admin123456 cluster nodes
  5. 最终的目录结构

    如果你觉得脚本生成的redis集群结构和配置内容不符合你的预期,你可以参考# redis 主从模式、哨兵模式、集群模式 离线搭建的集群模式部分,进行手动搭建

相关推荐
橙*^O^*安20 分钟前
Go 语言基础:变量与常量
运维·开发语言·后端·golang·kubernetes
工程师小星星29 分钟前
Golang语言的文件组织方式
开发语言·后端·golang
哈喽姥爷1 小时前
Spring Boot---自动配置原理和自定义Starter
java·spring boot·后端·自定义starter·自动配置原理
舒一笑3 小时前
为什么where=Version就是乐观锁了?
后端·mysql·程序员
GoGeekBaird3 小时前
关于垂类AI应用落地行业的方法论思考
后端·github·agent
小宁爱Python3 小时前
Django 基础入门:命令、结构与核心配置全解析
后端·python·django
你的人类朋友4 小时前
认识一下Bcrypt哈希算法
后端·安全·程序员
tangweiguo030519874 小时前
基于 Django 与 Bootstrap 构建的现代化设备管理平台
后端·django·bootstrap
IT果果日记4 小时前
详解DataX开发达梦数据库插件
大数据·数据库·后端
dazhong20124 小时前
Spring Boot 项目新增 Module 完整指南
java·spring boot·后端