RocketMQ 可视化管理界面Dashboard的搭建和使用
原有的rocketmq-console已被rocketmq-externals单独列为一个项目,现在取名:rocketmq-dashboard。
Git 项目地址:https://github.com/apache/rocketmq-dashboard
本文将讲解RocketMQ 可视化管理界面Dashboard的搭建和使用。
欢迎关注《Apache RocketMQ 深入浅出》系列文章,架构师将循序渐进地讲解Apache RocketMQ的开发实践。
1. Apache RocketMQ 入门介绍和整体架构图
2. 介绍新版RocketMQ v4.9.3 下载、安装、配置的完成过程
3. 启动和停止RocketMQ服务进程、测试消息的发送和消费
4. Spring Boot集成RocketMQ :生产者和消费者开发入门实践
5. RocketMQ 可视化管理界面Dashboard的搭建和使用
......
一、使用Docker 容器搭建
首先,确认本地有docker 环境,执行如下命令:
docker version
如图所示,输出本地 docker 环境信息。
然后,运行docker run 命令。获取 rocketmq-dashboard 镜像,并启动容器,命令如下所示:
docker run -d --name rocketmq-dashboard -e "JAVA_OPTS=-Drocketmq.namesrv.addr=127.0.0.1:9876" -p 8080:8080 -t apacherocketmq/rocketmq-dashboard:latest
其中,可以自行修改 namesrv.addr 的IP和端口号。
容器启动之后,在浏览器中访问:localhost:8080,如图所示:
但是,在访问过程中,会提示无法连接 127.0.0.1:9876。
这个容易理解,因为我们的nameserver 是在本地主机上运行,而rocketmq-dashboard 是在连接容器中的9876 端口,肯定是连接不上的。
我们先停止docker 容器 rocketmq-dashboard,执行过程如图所示:
docker rm -f rocketmq-dashboard
再次启动 rocketmq-dashboard 容器,其中指定了 rocketmq.namesrv.addr=192.168.2.102:9876,这个是主机的IP和端口号,也就是本地nameserver 的服务进程。
docker run -d --name rocketmq-dashboard -e "JAVA_OPTS=-Drocketmq.namesrv.addr=192.168.2.102:9876" -p 8080:8080 -t apacherocketmq/rocketmq-dashboard:latest
看起来像正常了。但是在浏览器中访问 dashboard 时,仍然会出现如下异常信息:
连接 127.0.0.1:10909 失败;此时可以关闭 UseVIPChannel 选项。
接下来,又出现连接 127.0.0.1:10911 失败,如图所示。也就是说,rocketmq-dashboard 容器仍然在访问容器内部的端口。
为什么会出现这种情况呢?
这是因为我们的示例环境中 broker 注册到nameserver 时,是采用的 127.0.0.1(IP 地址)注册的,因此 rocketmq-dashboard 从 nameserver 获取 broker地址就无法连接上了。
解决办法是:修改之前 broker.conf 配置文件中brokerIP1 地址。
二、使用dashboard 源码编译
为了省事,我们还是拉取rocketmq-dashboard 源码进行编译运行吧。
代码拉取下来之后,进入到 rocketmq-dashboard 目录,执行maven 编译命令:
mvn clean package -Dmaven.test.skip=true
编译完成之后,会在target 目录生成 rocketmq-dashboard-1.0.1-SNAPSHOT.jar,如图所示:
启动 rocketmq-dashboard 应用:
java -jar target/rocketmq-dashboard-1.0.1-SNAPSHOT.jar
然后,就可以在浏览器中访问localhost:8080。
三、RocketMQ-Dashboard 可视化管理界面
RocketMQ仪表板提供了不少功能,如图所示,运维、驾驶舱、集群、主题、消费者、生产者、消息、消息轨迹等等。
下面是Dashboard(驾驶舱)页面,查看broker的消息量(总量/5分钟图)和查看单一主题的消息量(总量/趋势图)。
RocketMQ 集群管理页面,查看broker具体信息/运行信息。
消息查询页面,根据Topic和时间区间查询,由于数据量大 最多只会展示2000条,多的会被忽略。
在访问Dashboard时,还支持按用户名和密码登录控制台,具体配置可以访问官方文档。
请先 后发表评论~