手记

RocketMQ控制台安装教程

2019-07-29 23:25:1227430浏览

大目

1实战 · 133手记

RocketMQ安装教程 一文中,详细探讨了如何搭建RocketMQ,这一节来搭建RocketMQ控制台,RocketMQ的可视化管理界面。

一、下载代码

# 方式一、git下载,执行如下命令
git clone https://github.com/apache/rocketmq-externals.git

# 方式二、直接下载,访问如下地址即可
https://github.com/apache/rocketmq-externals/archive/master.zip

二、修改控制台代码

2.1 修改配置

找到rocketmq-console/src/main/resources/application.properties 根据需求,修改配置

# 管理后台访问上下文路径,默认为空
# 如果填写,需写成/xxx的形式,例如/console
server.contextPath=

# 控制台的端口
server.port=8080

...

# if this value is empty,use env value rocketmq.config.namesrvAddr  NAMESRV_ADDR | now, you can set it in ops page.default localhost:9876
# Name Server地址
rocketmq.config.namesrvAddr=

# if you use rocketmq version < 3.5.8, rocketmq.config.isVIPChannel should be false.default true
rocketmq.config.isVIPChannel=

#rocketmq-console's data path:dashboard/monitor
rocketmq.config.dataPath=/tmp/rocketmq-console/data

#set it false if you don't want use dashboard.default true
rocketmq.config.enableDashBoardCollect=true

#set the message track trace topic if you don't want use the default one
rocketmq.config.msgTrackTopicName=

rocketmq.config.ticketKey=ticket

#Must create userInfo file: ${rocketmq.config.dataPath}/users.properties if the login is required
rocketmq.config.loginRequired=false

笔者只修改了如下两项:

# console端口
server.port=17890
# name server地址
# 也可以不修改,在启动完console后,在控制台导航栏 - 运维 - NameSvrAddrList一栏设置
rocketmq.config.namesrvAddr=localhost:9876

2.2 修改依赖

修改 pom.xml ,修改RocketMQ相关依赖的版本

找到

<rocketmq.version>4.4.0</rocketmq.version>

修改为

<rocketmq.version>你的RocketMQ版本</rocketmq.version>

笔者使用的是RocketMQ 4.5.1,故而改为

<rocketmq.version>4.5.1</rocketmq.version>

2.3 修改代码

修改pom.xml后,org.apache.rocketmq.console.service.impl.MessageServiceImpl#queryMessageByTopic编译会报错,所以需要解决一下。将

DefaultMQPullConsumer consumer = new DefaultMQPullConsumer(MixAll.TOOLS_CONSUMER_GROUP, null);

改为:

RPCHook rpcHook = null;
DefaultMQPullConsumer consumer = new DefaultMQPullConsumer(MixAll.TOOLS_CONSUMER_GROUP, rpcHook);

即可。

2.4 打包构建

# 切换到代码根目录
cd rocketmq-externals

# 切换到控制台目录
cd rocketmq-console

# 构建
mvn clean package -DskipTests

三、懒人包

笔者已经将修改好的RocketMQ控制台发布到GitHub了。

下载地址:https://github.com/eacdy/rocketmq-externals/releases

四、启动

java -jar rocketmq-console-ng-1.0.1.jar

五、访问

访问 http://localhost:17890 (端口用上面 application.properties 中的 server.port=17890 指定,默认是8080) ,即可看到类似如下的界面:

六、控制台使用说明

本文首发

8人推荐
随时随地看视频
慕课网APP

热门评论

老师,按照您的步骤一步一步来的,用的也是4.5.1,但是maven打包的时候报错,是不是因为控制台的代码修改了

错误1: org.apache.rocketmq.console.service.client.MQAdminExtImpl不是抽象的, 并且未覆盖org.apache.rocketmq.tools.admin.MQAdminExt中的抽象方法resumeCheckHalfMessage(java.lang.String,java.lang.String)

这个错误我到代码里面修改了一下,把相关的方法都添加上去了打包后报了第二个错

错误2:Failed to execute goal org.apache.maven.plugins:maven-checkstyle-plugin:2.17:check (validate) on project rocketmq-console-ng: Failed during checkstyle execution: There is 1 error reported by Checkstyle 6.11.2 with style/rmq_checkstyle.xml ruleset.

在4.5.1失败后我尝试了4.5.2,也是不行

作者自己是否在windows配置成功呢?

还是有问题,显示没有导入依赖,导入之后@Override有问题。最后根据你的课程写好生产者报错:

See http://rocketmq.apache.org/docs/faq/ for further details.; nested exception is org.apache.rocketmq.client.exception.MQClientException: No route info of this topic, add-bonus

See http://rocketmq.apache.org/docs/faq/ for further details.] with root cause


org.apache.rocketmq.client.exception.MQClientException: No route info of this topic, add-bonus

麻烦你自己看看能不能运行再来写文章好吧

查看全部评论