安装rocketmq-console
一、alibaba版本
使用rocketmq命令查看集群状态,查看topic信息时比较麻烦,而且不直观,这个时候可以使用一些web页面来管理rocketmq。
以前曾使用过一个老版本的工具,适用于alibaba版本(贡献至apache之前的版本),
这里只共享一个安装包的百度网盘连接:https://pan.baidu.com/s/1mhM0cDM
使用方法也比较简单:
1、在linux下安装jdk
2、在linxu下安装tomcat
3、使用编译环境(eclipse或intellij)编译上述下载的程序
4、将编译后的war包上传到tomcat的webapps目录下
5、启动tomcat。
6、从windows端通过浏览器访问即可。
二、apache版本
贡献给apache之后,上面的那个工具就无法使用了,不过今天从网上找到了个新的管理界面。
github地址:https://github.com/apache/incubator-rocketmq-externals
2018年1月23日,更新最新github地址为:https://github.com/apache/rocketmq-externals
参照帮助文件使用即可:
帮助文档路径:https://github.com/apache/incubator-rocketmq-externals/blob/master/rocketmq-console/README.md
具体如下:
1、修改配置文件,使管理界面与rocketmq集群产生关联。
incubator-rocketmq-externals-master/rocketmq-console/src/main/resources/application.properties
修改内容及修改结果如下图所示:
2、编译rocketmq-console
编译命令:mvn clean package -Dmaven.test.skip=true(注意:不要直接使用mvn package,会提示很多错误)
3、将编译好的jar包上传到linux服务器
(如果直接在Linux环境上编译,可以省略这步)
我这里上传到了本地虚拟机192.168.6.5上。路径为:/home/hadmin/jar
4、运行jar包
命令:java -jar target/rocketmq-console-ng-1.0.0.jar
5、使用浏览器访问管理界面
方位地址:http://192.168.6.5:8080/
6、可能遇到的问题
画面可以正常启动,不过从控制台的监控日志上看,存在如下的错误日志。
org.apache.rocketmq.remoting.exception.RemotingTimeoutException: wait response on the channel <192.168.1.80:10918> timeout, 5000(ms)
原因是isVIPChannel默认为true,会监控rocketmq的vip通道,将该属性设置为false即可。
设置后的配置文件如下所示:
server.contextPath= server.port=8080 #spring.application.index=true spring.application.name=rocketmq-console spring.http.encoding.charset=UTF-8 spring.http.encoding.enabled=true spring.http.encoding.force=true logging.config=classpath:logback.xml #if this value is empty,use env value rocketmq.config.namesrvAddr NAMESRV_ADDR | now, you can set it in ops page.default localhost:9876 rocketmq.config.namesrvAddr=192.168.1.80:9876;192.168.1.81:9876 #if you use rocketmq version < 3.5.8, rocketmq.config.isVIPChannel should be false.default true rocketmq.config.isVIPChannel=false #rocketmq-console's data path:dashboard/monitor rocketmq.config.dataPath=/home/hadmin/data/rocketmq #set it false if you don't want use dashboard.default true rocketmq.config.enableDashBoardCollect=true
--END--