Linux 部署 RocketMQ 及公网穿透配置指南
在 Linux 服务器上搭建 RocketMQ 时,内网测试往往顺畅,但一旦涉及外网访问,网络隔离就成了拦路虎。申请公网 IP 成本高,端口映射配置繁琐。本文分享一套基于 cpolar 内网穿透的极简方案,无需复杂网络配置,即可实现 RocketMQ 服务的远程连接。
1. 前提条件
确保服务器满足以下基础环境:
- JDK:RocketMQ 基于 Java 开发,需安装 JDK。建议版本与 RocketMQ 5.x 兼容(如 JDK 8 或 11)。
java -version - 内存:建议运行环境至少分配 12GB 内存,以保证 NameServer 和 Broker 稳定运行。
- 版本选择:推荐使用 RocketMQ 5.3.4 版本。4.x 系列已停止维护,不建议在新项目中使用。
2. 安装 RocketMQ
将下载的二进制包上传至 /app/rocketmq 目录并解压。
mkdir -p /app/rocketmq
cd /app/rocketmq
unzip rocketmq-all-5.3.4-bin-release.zip
mv rocketmq-all-5.3.4-bin-release rocketmq
此时目录结构应包含 bin、conf 等核心文件夹。
3. 配置 RocketMQ
3.1 修改启动脚本参数
默认启动脚本中的 JVM 参数可能未针对当前机器优化,特别是内存设置。如果服务器内存充足,可跳过此步;否则建议调整。
编辑 runserver.sh:
vi /app/rocketmq/rocketmq/bin/runserver.sh
找到 JAVA_OPT 相关行,根据实际内存调整 -Xms 和 -Xmx。同时确认 JDK 路径正确:
which java
同理编辑 runbroker.sh:
vi /app/rocketmq/rocketmq/bin/runbroker.sh
同样检查 JDK 路径及内存参数。
3.2 配置 Broker 信息
创建并编辑 broker.conf 配置文件:
vi /app/rocketmq/rocketmq/conf/broker.conf
填入以下内容(初始阶段使用 localhost 即可,后续穿透会处理网络暴露):
namesrvAddr = localhost:9876
brokerIP1 = localhost
3.3 启动服务
首先创建日志目录:
mkdir -p /data/logs/rocketmq
启动 NameServer:


