• 《Linux运维总结:ARM64架构CPU基于docker-compose一离线部署rabbitmq 3.10.25容器版镜像模式集群》


    总结:整理不易,如果对你有帮助,可否点赞关注一下?

    更多详细内容请参考:《Linux运维篇:Linux系统运维指南》


    一、部署背景

    由于业务系统的特殊性,我们需要面向不通的客户安装我们的业务系统,而作为基础组件中的rabbitmq针对不同的客户环境需要多次部署哨兵集群,作为一个运维工程师,提升工作效率也是工作中的重要一环。所以我觉得有必要针对 ARM64 CPU架构rabbitmq 3.10.25镜像模式集群容器版编写自动化部署工具。


    二、工具介绍

    一键部署工具实现功能如下:

    1、支持单实例部署
    2、支持单机伪镜像集群部署
    3、支持多机分布式镜像集群部署
    4、支持数据目录、日志目录、插件目录、配置文件持久化
    5、支持数据目录、日志目录、端口、账号、密码、内存阀值、磁盘阀值等参数灵活配置
    6、支持创建、启动、停止、检测、卸载等功能

    说明:工具使用非常简单,只需要修改变量文件,一分钟就可以快速帮你部署rabbitmq镜像模式集群集群。


    三、工具下载

    ARM架构CPU基于docker-compose一离线部署rabbitmq 3.10.25镜像模式集群工具


    四、工具使用

    说明:单机伪集群是指在单主机部署rabbitmq 3.10.25镜像模式集群,分布式集群是指在多个不同主机上部署rabbitmq 3.10.25镜像模式集群。


    1、查看帮助命令
    在这里插入图片描述


    2、准备一键部署工具包

    说明:将一键部署工具包分别上传到rabbitmq集群主机节点上。


    3、编辑变量文件

    说明:以下操作分别在rabbitmq镜像模式集群节点的部署工具包中修改allinone.conf文件,四个节点上allinone.conf文件内容一致。

    [root@mq1 rabbitmq]# cp allinone.conf.tpl allinone.conf
    [root@mq2 rabbitmq]# cat allinone.conf
    # 建议填写为当前磁盘最大存储空间目录,如果系统盘空间最大,建议填写为/data,如果挂在盘空间最大,建议填写为挂载目录
    export BASE_DIR="/data"
    
    # 默认用户密码,可根据实际情况填写,注意密码格式为<大小写英文字母+数字>,根据实际情况填写
    export RABBITMQ_DEFAULT_USER="lolaage"
    export RABBITMQ_DEFAULT_PASS="XnZKE7jGOn6SRXG"
    
    # 数据存储根目录,一般选择一个存储空间比较大且速度快的分区目录,默认不修改
    export RABBITMQ_DATA_DIR="${BASE_DIR}/basic-data"
    
    # 内存告警阀值(相对值),建议值为0.4~0.7区间,根据实际情况修改
    # 当MQ服务器使用超过内存阀值时,会触发告警,并阻塞所有正在发布消息的连接 
    export VM_MEMORY_HIGH_WATERMARK_RELATIVE="0.6"
    
    # 数据目录磁盘空间阀值(绝对值),根据实际情况修改
    # 当MQ服务器数据目录的磁盘空间超过阀值时,会触发告警,并阻塞所有正在发布消息的连接
    export DISK_FREE_LIMIT_ABSOLUTE="5GB"
    
    # 当前宿主机ip地址,根据实际情况填写
    export RABBITMQ_HOST="192.168.1.42"
    #######################################################################################################
    # mq1节点宿主机内网ip地址,默认不修改
    export RABBITMQ1_HOST="${RABBITMQ_HOST}"
    
    # mq1节点供客户端建立连接端口,端口不冲突情况下,默认不修改
    export RABBITMQ1_PORT="3001"
    
    # mq1节点web页面管理端口,端口不冲突情况下,默认不修改
    export RABBITMQ1_MANAGEMENT_PORT="13001"
    #######################################################################################################
    # mq2节点宿主机内网ip地址,默认不修改
    export RABBITMQ2_HOST="${RABBITMQ_HOST}"
    
    # mq2节点供客户端建立连接端口,端口不冲突情况下,默认不修改
    export RABBITMQ2_PORT="3002"
    
    # mq2节点web页面管理端口,端口不冲突情况下,默认不修改
    export RABBITMQ2_MANAGEMENT_PORT="13002"
    #######################################################################################################
    # mq3节点宿主机内网ip地址,默认不修改
    export RABBITMQ3_HOST="${RABBITMQ_HOST}"
    
    # mq3节点供客户端建立连接端口,端口不冲突情况下,默认不修改
    export RABBITMQ3_PORT="3003"
    
    # mq3节点web页面管理端口,端口不冲突情况下,默认不修改
    export RABBITMQ3_MANAGEMENT_PORT="13003"
    

    4、执行部署

    说明:根据allinone.conf规划,在192.168.1.42节点上执行部署rabbitmq镜像模式单机伪集群。

    [root@consul-server1 rabbitmq]# ./op.sh build allinone
    

    5、检查集群状态

    在这里插入图片描述


    总结:整理不易,如果对你有帮助,可否点赞关注一下?

    更多详细内容请参考:《Linux运维篇:Linux系统运维指南》

  • 相关阅读:
    AndroidStudio卸载删除干净
    一文读懂HOOPS Native平台:快速开发桌面端、移动端3D应用程序!
    Redis-五种数据类型
    【调制解调】AM 调幅
    js给一段话,遇到的第一个括号处加上换行符
    Redisson源码解读-公平锁
    CentOS7 根目录100%
    世微LED 大功率升压恒流驱动芯片 平板显示LED背光板灯串恒流控制器 AP9193
    解读非托管流动性协议Hover: 差异化、层次化的全新借贷体系
    语音信号的采集与处理
  • 原文地址:https://blog.csdn.net/m0_37814112/article/details/138569524