当前位置: 首页 > news >正文

Linux 部署 RocketMQ

1. 下载页面和官网文档

部署文档
https://rocketmq.apache.org/zh/docs/deploymentOperations/01deploy
下载页面
http://rocketmq.apache.org/dowloading/releases/
在这里插入图片描述

2. 解压至安装目录

unzip rocketmq-all-5.3.3-bin-release.zip -d /home/soft

3. 创建 namesrv.properties

conf目录下创建namesrv.properties 配置文件,可以指定端口,也可以为空

touch namesrv.properties

4. 启动脚本

创建启动脚本,并授权

vim rocketmq-start.sh

写入如下内容

#!/bin/bashROCKETMQ_HOME=/home/soft/rocketmq-all-5.3.3-bin
NAME_SRV_ADDR=127.0.0.1:9876# 默认配置文件路径(可修改)
DEFAULT_NAMESRV_CONF="conf/namesrv.properties"
DEFAULT_BROKER_CONF="conf/broker.conf"# 日志输出目录
LOG_DIR="${ROCKETMQ_HOME}/logs"
mkdir -p "${LOG_DIR}"# 解析参数
NAMESRV_CONF=""
BROKER_CONF=""
while [[ $# -gt 0 ]]; docase "$1" in-n|--namesrv-conf)NAMESRV_CONF="$2"shift 2;;-b|--broker-conf)BROKER_CONF="$2"shift 2;;*)echo "未知参数: $1"exit 1;;esac
done# 设置默认配置文件路径
[[ -z "${NAMESRV_CONF}" ]] && NAMESRV_CONF="${DEFAULT_NAMESRV_CONF}"
[[ -z "${BROKER_CONF}" ]] && BROKER_CONF="${DEFAULT_BROKER_CONF}"# 检查配置文件存在性
check_config() {local config_file="$1"if [[ ! -f "${config_file}" ]]; thenecho "错误: 配置文件不存在 ${config_file}"exit 1fi
}check_config "${NAMESRV_CONF}"
check_config "${BROKER_CONF}"# 启动NameServer
start_namesrv() {echo "正在启动NameServer (使用配置: ${NAMESRV_CONF})..."nohup sh bin/mqnamesrv -c "${NAMESRV_CONF}" > "${LOG_DIR}/namesrv.log" 2>&1 &sleep 5 # 等待初始化完成if ! pgrep -f "mqnamesrv" > /dev/null; thenecho "NameServer启动失败,请检查日志: ${LOG_DIR}/namesrv.log"exit 1fiecho "NameServer启动成功 (PID: $(pgrep -f "mqnamesrv"))"
}# 启动Broker
start_broker() {echo "正在启动Broker (使用配置: ${BROKER_CONF})..."nohup sh bin/mqbroker  -n ${NAME_SRV_ADDR} -c "${BROKER_CONF}" --enable-proxy > "${LOG_DIR}/broker.log" 2>&1 &sleep 8 # 等待初始化完成if ! pgrep -f "mqbroker" > /dev/null; thenecho "Broker启动失败,请检查日志: ${LOG_DIR}/broker.log"exit 1fiecho "Broker启动成功 (PID: $(pgrep -f "mqbroker"))"
}# 主流程
start_namesrv
start_broker
chmod +x rocketmq-start.sh

5. 执行上面的脚本启动服务

./rocketmq-start.sh

6. 部署RocketMQ Dashboard

  1. 下载RocketMQ Dashboard源码并打包,暂时需要jdk1.8
    在这里插入图片描述
  2. 上传rocketmq-dashboard-2.0.1-SNAPSHOT.jar 至服务器
    在这里插入图片描述
  3. 创建启动脚本
vim start.sh

-Dserver.port=8876控制台端口
-Drocketmq.config.namesrvAddrs=192.168.2.35:9876 nameServer地址
-Drocketmq.config.proxyAddrs=192.168.2.35:10913 proxy地址

#!/bin/bash
nohup java -Dfile.encoding=utf-8 -Drocketmq.config.namesrvAddrs=192.168.2.35:9876 -Dserver.port=8876 -Drocketmq.config.proxyAddrs=192.168.2.35:10913   -Xms512m -Xmx1024m -jar rocket
mq-dashboard-2.0.1-SNAPSHOT.jar  > out.log  2>&1 &
echo $! > pid
  1. 创建停止脚本
vim stop.sh
kill -9 `cat pid`

执行start.sh启动控制台即可
在这里插入图片描述

相关文章:

  • oracle数据库查看当前session会话数、查询最大支持连接数、修改最大支持连接数
  • 服务器并发实现的五种方法
  • MCP Server Resource 开发学习文档
  • WebGL基本概念
  • CUDA 加速的基础线性代数库cuBLAS
  • CC53.【C++ Cont】一维前缀和
  • AI编程: OpenAI Codex vs Google Jules vs GitHub Copilot++
  • Java转Go日记(五十四):gin路由
  • 【笔记】修复AttributeError: ‘super‘ object has no attribute ‘__del__‘
  • Qwen3技术报告笔记
  • NLP学习路线图(四):Python编程语言
  • # 深入解析BERT自然语言处理框架:原理、结构与应用
  • 基于 ZU49DR FPGA 的无线电射频数据采样转换开发平台核心板
  • Java 大视界 -- 基于 Java 的大数据分布式存储在视频会议系统海量视频数据存储与回放中的应用(263)
  • 基于SpringBoot的美食分享平台设计与开发(Vue MySQL)
  • macOS专业用户远程操作全场景优化指南:开发运维协同、安全合规与性能提升实战
  • Spring Cloud Gateway高并发限流——基于Redis实现方案解析
  • 梳理Spring Boot中三种异常处理
  • 消费类,小家电产品如何做Type-C PD快充快速充电
  • 一台机器怎么部署k8s集群
  • 松江手机网站建设/河北seo
  • 网站建设字体颜色代码/关键词搜索数据
  • 软件工程在网站建设/域名查询服务器
  • 网站开发公司交易流程/b站推广渠道
  • 岳阳网站制作/网络营销的现状和发展趋势
  • 易语言做返利网站/北京今日重大新闻