前言
上篇文章我们介绍了RocketMQ集群的搭建,但是我们只能通过命令来查看集群情况。所以,这篇文章我们主要介绍RocketMQ的可视化平台。
RocketMQ的可视化工具主要用于监控和管理RocketMQ集群,帮助我们更加直观地了解RocketMQ的运行状态和性能指标。
mqadmin工具
RocketMQ官方提供有一个mqadmin工具,它是一个功能强大的命令行管理工具,并且给提供了丰富的命令来管理RocketMQ集群的配置和操作。它有这些功能:查看集群信息、Topic管理、消息查询、Consumer Group管理等等。
它的位置:mqadmin工具位于我们RocketMQ安装目录下的bin文件夹中。
它的执行方式:我们在命令行中执行mqadmin命令并且跟上相应的子命令和参数来使用。
mqadmin常用命令
集群命令
- 查看集群信息:我们·使用
mqadmin clusterList -n <namesrvAddr>
命令,可以列出集群中所有Broker的信息,包括Broker地址、状态等。 - 检测集群RT:我们使用
mqadmin clusterRT -n <namesrvAddr> -c <clusterName>
命令,可以检测集群中各Broker的响应时间。
以上一节我们创建的RocketMQ集群为例:
我们能够在图中清晰地看到集群名称,所有broker,以及nameserver命名空间的地址等信息。
Topic相关
- 创建或者更新Topic:我们使用
mqadmin updateTopic -n <namesrvAddr> -c <clusterName> -t <topicName>
命令,可以创建或者更新Topic的配置。 - 删除Topic:我们使用
mqadmin deleteTopic -n <namesrvAddr> -t <topicName>
命令,可以删除指定的Topic。 - 查看Topic列表:我们使用
mqadmin topicList -n <namesrvAddr>
命令,可以列出集群中的所有Topic。 - 查看Topic路由信息:我们使用
mqadmin topicRoute -n <namesrvAddr> -t <topicName>
命令,可以查看Topic的路由信息。 - 查看Topic统计信息:我们使用
mqadmin topicStats -n <namesrvAddr> -t <topicName>
命令,可以查看Topic的统计信息,比如消息数量、队列数量等。
还是以同样的栗子来使用:
就比如我们上面的命令,在192.168.220.135:9876
这个命名空间上,default这个集群上更新了myTopic1这个主题,就可以更改这个主题的配置。由于命名空间集群上没有这个主题,所以新建了主题。而且创建主题的操作是在broker-a master和broker-b master上来创建的。
消息查询
- 根据消息ID查询消息:我们使用
mqadmin queryMsgById -n <namesrvAddr> -i <msgId>
命令,可以根据消息ID查询消息的详细信息。 - 根据消息Key查询消息:我们使用
mqadmin queryMsgByKey -n <namesrvAddr> -t <topicName> -k <key>
命令,可以根据消息Key查询消息。 - 根据Offset查询消息:我们使用
mqadmin queryMsgByOffset -n <namesrvAddr> -b <brokerAddr> -t <topicName> -i <queueId> -o <offset>
命令,可以根据Offset查询消息。
消费者集群
- 查看Consumer Group列表:我们使用
mqadmin consumerGroupList -n <namesrvAddr>
命令,可以列出集群中的所有Consumer Group。 - 查看Consumer Group消费进度:我们使用
mqadmin consumerProgress -n <namesrvAddr> -g <consumerGroup> -t <topic>
命令,可以查看Consumer Group在指定Topic上的消费进度。
虽然RocketMQ的mqadmin工具命令挺丰富的,但是可视化工具会更方便亿点!在早些年前,RocketMQ的可视化工具是在rocketmq-externals-master里,前几年又移到了rocketmq-dashboard这里,官方网址:点击进入。
经典白雪哈哈哈!!!
rocketmq-dashboard
RocketMQ的可视化工具rocketmq-dashboard是一个基于Web的应用程序,这个也是基于Java语言
来编写的。它给我们提供了直观便捷的方式来监控和管理RocketMQ集群。接下来我们介绍一下如何部署它。
使用dashboard有多种方式,一种是基于Docker安装,拉取最新镜像方式来使用;我们使用第二种方式,源码安装。从Apache RocketMQ官网或者GitHub仓库下载源码,然后在虚拟坤中编译打包,最后使用Maven进行编译打包,生成可执行的jar包的方式来使用。运行jar包:通过java -jar命令启动jar包,不要忘记指定nameserver地址哦。
首先我们从github上下载dashboard的安装包,点击进入:
下载好dashboard的安装包,使用unzip命令将其解压缩到RocketMQ的安装目录下:
然后我们打开dashboard文件夹,康一下里面有什么文件:
好家伙,src文件夹,这不正是我们写web程序时的那个文件吗,继续点开看看:
With today,一步步地摸索终于到了配置文件,到了这里,咱们就将配置文件修改为我们自己的地址吧vim application.yml
:
修改完成后,我们返回到一级目录,使用maven命令将此文件打成jar包(前提是需要安装maven):
mvn clean package -Dmaven.test.skip=true
emm…经过了几个小时地打包以及排除bug,咱就是说终于也是构建成功了!
构建成功后,我们还是要给上篇操作的RocketMQ集群打开,然后进入到target执行我们打包OK的jar包:
java -jar rocketmq-dashboard-1.0.1-SNAPSHOT.jar
执行 java -jar rocketmq-dashboard-1.0.1-SNAPSHOT.jar
命令后:
我们是在服务器0这台服务器上部署的,所以在浏览器上输入服务器0的IP:8080可以看到:
本篇文章到这里就结束了,后续会继续分享RocketMQ相关的知识,感谢各位小伙伴们的支持!
标签:部署,jar,mqadmin,Topic,命令,可视化,集群,RocketMQ From: https://blog.csdn.net/qq_53847859/article/details/140659803