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

news/2024/9/30 6:24:08/

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

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


一、部署背景

由于业务系统的特殊性,我们需要面向不通的客户安装我们的业务系统,而作为基础组件中的consul 针对不同的客户环境需要多次部署哨兵集群,作为一个运维工程师,提升工作效率也是工作中的重要一环。所以我觉得有必要针对 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@consul-server1 rabbitmq]# cp allinone.conf.tpl allinone.conf
[root@consul-server1 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节点变量>######################################################
# mq1节点宿主机内网ip地址,默认不修改
export RABBITMQ1_HOST="${RABBITMQ_HOST}"# mq1节点供客户端建立连接端口,端口不冲突情况下,默认不修改
export RABBITMQ1_PORT="3001"# mq1节点web页面管理端口,端口不冲突情况下,默认不修改
export RABBITMQ1_MANAGEMENT_PORT="13001"
#################################################<mq2节点变量>######################################################
# mq2节点宿主机内网ip地址,默认不修改
export RABBITMQ2_HOST="${RABBITMQ_HOST}"# mq2节点供客户端建立连接端口,端口不冲突情况下,默认不修改
export RABBITMQ2_PORT="3002"# mq2节点web页面管理端口,端口不冲突情况下,默认不修改
export RABBITMQ2_MANAGEMENT_PORT="13002"
#################################################<mq3节点变量>######################################################
# 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系统运维指南》


http://www.ppmy.cn/news/1458321.html

相关文章

59岁前TVB男拳王内地登台疑黑面 被批耍大牌

现年59岁的郭政鸿在2015年离巢TVB后转往内地发展&#xff0c;密密拍剧、登台及直播带货&#xff0c;短短几年就已经储够钱&#xff0c;斥资过千万买楼&#xff0c;成功上车做业主&#xff0c;可见收入丰厚。 早前郭政鸿现身顺德&#xff0c;在酒吧登台唱歌&#xff0c;有网民上…

57. 【Android教程】相机:Camera

相机现在已经不仅仅是手机必备神器了&#xff0c;甚至相机的拍照质量已经是很多人买手机的首选条件了。而对于相机而言主要有两大功能&#xff1a;拍照片和拍视频。Android 为此两种方式&#xff1a; 相机 intent相机 API 本节我们就一起来看看相机的具体用法。 1. 打开 Camer…

Leetcode—1991. 找到数组的中间位置【简单】

2024每日刷题&#xff08;129&#xff09; Leetcode—1991. 找到数组的中间位置 实现代码 class Solution { public:int findMiddleIndex(vector<int>& nums) {int sum accumulate(nums.begin(), nums.end(), 0);int prefix 0;for(int i 0; i < nums.size();…

SQL 基础 | JOIN 操作介绍

在SQL中&#xff0c;JOIN是一种强大的功能&#xff0c;用于将两个或多个表中的行结合起来&#xff0c;基于相关的列之间的关系。 JOIN操作通常用在SELECT语句中&#xff0c;以便从多个表中检索数据。 以下是几种基本的JOIN类型以及它们的用法&#xff1a; INNER JOIN&#xff1…

代码随想录:二分查找相关题目推荐(35、34)

35.搜索插入位置 题目 给定一个排序数组和一个目标值&#xff0c;在数组中找到目标值&#xff0c;并返回其索引。如果目标值不存在于数组中&#xff0c;返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 示例 1: 输入: nums [1,3,5,6], target …

Flink DataSource介绍

介绍 Flink的Data Source&#xff08;数据源、源算子&#xff09;是Flink作业的起点&#xff0c;它定义了数据输入的来源。Flink可以从各种数据来源获取数据&#xff0c;例如文件系统、消息队列、数据库等。以下是对Flink Data Source的详细介绍&#xff1a; 概述&#xff1a…

深入探索:npm详解

在现代前端开发中&#xff0c;npm&#xff08;Node Package Manager&#xff09;扮演着至关重要的角色&#xff0c;它是JavaScript世界中最大的软件注册表&#xff0c;也是前端开发者分享和管理代码的主要平台。本篇博文将详细介绍npm的使用方法&#xff0c;并重点讨论如何发布…

信息系统项目管理师0094:项目管理过程组(6项目管理概论—6.4价值驱动的项目管理知识体系—6.4.3项目管理过程组)

点击查看专栏目录 文章目录 6.4.3项目管理过程组1.适应型项目中的过程组2.适应型项目中过程组之间的关系6.4.3项目管理过程组 项目管理过程组是为了达成项目的特定目标,对项目管理过程进行的逻辑上的分组。项目管理过程组不同于项目阶段:①项目管理过程组是为了管理项目,针对…