赞
踩
下载地址:https://rocketmq.apache.org/zh/download
目前最新版本是5.2.0,5.x版本发布了很多新特性,比如定时消息可以指定具体的发送时间,新增了Dledger Controller混合集群模式等等,具体可以到官网了解下。我这里下载的是5.1.4版本。
# RocketMQ运行包下载好后,上传到服务器,我这里上传到/usr/local/rocketmq目录
mkdir -p /usr/local/rocketmq
目录结构
RocketMQ建议的运行环境需要至少12G的内存,这是生产环境比较理想的资源配置。我们自己学习阶段可能没有这个高配置的服务器,那么就需要根据自身情况做一下调整。进入bin目录,对runserver.sh和runbroker.sh两个脚本进行一下修改即可(生产环境不建议调整)。
# 进入bin目录
cd bin
# 编辑runserver.sh
vim runserver.sh
# 找到这行配置进行修改=>JAVA_OPT="${JAVA_OPT} -server -Xms4g -Xmx4g -Xmn2g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
# 我这里修改如下,根据自身情况配置即可
JAVA_OPT="${JAVA_OPT} -server -Xms512m -Xmx512m -Xmn256m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
# 编辑broker.sh执行脚本
vim broker.sh
# 找到这行配置进行修改=>JAVA_OPT="${JAVA_OPT} -server -Xms8g -Xmx8g"
# 我这里修改如下,根据自身情况配置即可
JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g"
改好配置后就可以启动RocketMQ服务了,这里有个前提是需要JDK运行环境,没有安装需要安装一下,可以参考这篇文章https://blog.csdn.net/weixin_60692635/article/details/129972364?spm=1001.2014.3001.5502
启动nameserver服务
nohup sh mqnamesrv &
查看服务启动情况
tail -f nohup.out
或
cat ~/logs/rocketmqlogs/namesrv.log
看到这一行日志就表示nameserver启动成功了
启动broker服务
# 启动之前先进入conf目录,编辑broker.conf文件,在最后加上这一行配置,允许broker自动创建新的topic
autoCreateTopicEnable=true
如果你的服务器配置了多张网卡,比如阿里云,腾讯云这样的云服务器,他们通常有内网网卡和外网网卡两张网卡,需要增加配置brokerIP1属性,指向服务器的外网IP 地址,这样才能确保从其他服务器上访问到RocketMQ 服务。
# 执行命令启动broker服务
nohup sh mqbroker -n ip:9876 -c ../conf/broker.conf &
查看服务启动情况
tail -f nohup.out
或
cat ~/logs/rocketmqlogs/broker.log
看到这条日志broker服务就启动成功了
# PS1:通常将RocketMQ部署地址添加到环境变量中,这样就不需要每次进入RocketMQ安装目录了,直接可以使用mqnamesrv和mqbroker命令,例如使用vim ~/.bash_profile命令添加如下内容
export ROCKETMQ_HOME=/usr/local/rocketmq/rocketmq-all-5.1.4-bin-release
export PATH=$PATH:$ROCKETMQ_HOME/bin
下载可视化管理控制台地址:https://github.com/apache/rocketmq-dashboard
将下载好的文件上传到服务器
# 我这里在rocketmq目录新建了一个console目录
mkdir -p /usr/local/rocketmq/console
这里只提供了源码,没有提供运行的jar包,需要使用maven进行编译,没有安装maven需要安装一下
cd rocketmq-dashboard-master
mvn clean package -Dmaven.test.skip=true
编译成功后,会生成一个target目录,得到一个jar包
执行jar包,启动RocketMQ管理控制台服务
nohup java -jar rocketmq-dashboard-1.0.1-SNAPSHOT.jar &
访问ip:8080,就可以打开管理控制台页面
但是在这我们看到了报错,这个是10909端口没有放开,如果是云服务器,在安全组中放开端口就好了,还有一个10911端口一样的问题,需要放开
能看到现在的页面,也没有报错了,管理控制台就搭建好了!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。