1.下载jdk,并安装
jdk11地址:Java Downloads | Oracle
2.下载rocketMQ下载地址:
3.上传rocketMQ包到centos目录下并解压
##我是放在该目录下的
/usr/local/rocketmq-4.9.3
4.配置conf目录下的broker.conf文件
brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
#新版本最好配置
storePathRootDir=/data/rocketmq/rootdir-a-m
storePathCommitLog=/data/rocketmq/commitlog-a-m
autoCreateSubscriptionGroup=true
## if msg tracing is open,the flag will be true
traceTopicEnable=true
listenPort=10911
# 将namesrvAddr和brokerIP1设置在config中
namesrvAddr=121.4.xx.22:9876
brokerIP1=121.4.xx.22
5.配置bin目录下的runbroker.sh和runserver.sh两个启动文件的java内存大小,默认是8g
runbroker.sh文件:
将红框中的内存改为你认为合适的(我的改为了2g)
runserver.sh文件:
6.启动mqnamesrv和mqbroker
#以下运行命令需要在bin目录下运行
#启动nameserver
nohup sh mqnamesrv >/usr/local/rocketmq-4.9.3/rocketmqlogs/namesrv.log 2>&1 &
##启动broker
nohup sh mqbroker -n localhost:9876 autoCreateTopicEnable=true >/usr/local/rocketmq-4.9.3/rocketmqlogs/mqbroker.log 2>&1 &
##指定配置文件ip来启动broker 解决云上内网访问的问题
#下面命令执行 如果jdk环境在8以上 需要在runbroker.sh 加上配置JAVA_OPT="${JAVA_OPT} --add-exports java.base/jdk.internal.ref=ALL-UNNAMED"
nohup sh mqbroker -n localhost:9876 -c ../conf/broker.conf autoCreateTopicEnable=true >/usr/local/rocketmq-4.9.3/rocketmqlogs/mqbroker.log 2>&1 &
#环境变量NAMESRV_ADDR测试发送消息和接受消息
export NAMESRV_ADDR=localhost:9876
#发送消息
sh tools.sh org.apache.rocketmq.example.quickstart.Producer
#接收消息
sh tools.sh org.apache.rocketmq.example.quickstart.Consumer
sh bin/mqshutdown broker //停止 broker
sh bin/mqshutdown namesrv //停止 nameserver
7.使用jps查看mq的启动进程
8.如果是使用云服务记得打开9876端口的访问权限
9.下载rocketmq-externals-master源码进行编译
10编译源码rocketmq-console
mvn clean install -Dmaven.test.skip=true
11.将编译好的 rocketmq-console-ng-2.0.0.jar放在服务器中然后启动
nohup java -jar rocketmq-console-ng-2.0.0.jar --server.port=12581 --rocketmq.config.namesrvAddr='127.0.0.1:9876' >/usr/local/rocketmq-4.9.3/rocketmqlogs/mqConsole.log 2>&1 &
12.访问http://ip:12581