rocketmq管理工具

一、mqadmin管理工具

进入RocketMQ安装位置,在bin目录下执行
./mqadmin {command} {args}
详细命令可参考
https://www.iteye.com/blog/jameswxx-2091971
https://yq.aliyun.com/articles/664981

注意事项

  • 几乎所有命令都需要配置-n表示NameServer地址,格式为ip:port
  • 几乎所有命令都可以通过-h获取帮助
  • 如果既有Broker地址(-b)配置项又有clusterName(-c)配置项,则优先以Broker 地址执行命令;如果不配置Broker地址,则对集群中所有主机执行命令

二、集群监控平台搭建

1.概述

RocketMQ有一个对其扩展的开源项目incubator-rocketmq-externals,这个项目中有一个子模块叫rocketmq-console,这个便是管理控制台项目了,先将incubator-rocketmq-externals拉到本地,因为我们需要自己对rocketmq-console进行编译打包运行。

rocketmq管理工具_第1张图片
rocketmq-console.png

文档:https://rocketmq-1.gitbook.io/rocketmq-connector/rocketmq-connect-1/rocketmq-console

2.下载并编译打包

git clone https://github.com/apache/rocketmq-externals
cd rocketmq-console
mvn clean package -Dmaven.test.skip=true

注意:打包前在rocketmq-console中配置namesrv集群地址:

rocketmq.config.namesrvAddr=192.168.25.135:9876;192.168.25.138:9876

启动rocketmq-console:

java -jar rocketmq-console-ng-1.0.0.jar

启动成功后,我们就可以通过浏览器访问http://localhost:8080进入控制台界面了,如下图:

rocketmq管理工具_第2张图片
image.png

集群状态:

rocketmq管理工具_第3张图片
image.png

官网源码找不到,自传源码:https://github.com/fatsnakeok/rocketmq-externals-master.git

******** 最新版已经改为docker了 ********

  • 1、下载镜像
docker pull styletang/rocketmq-console-ng
#下载过程会比较慢请耐心等待
  • 2、创建容器
docker run --link rmqnamesrv:rmqnamesrv  -e "JAVA_OPTS=-Drocketmq.namesrv.addr=rmqnamesrv1:19876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 8001:8080 -t styletang/rocketmq-console-ng


docker run -e "JAVA_OPTS=-Drocketmq.namesrv.addr=docker.for.mac.host.internal:19876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 8082:8080 -t styletang/rocketmq-console-ng

在宿主机(MacOS系统)上运行了原生的RocketMQ服务,为了方便管理,需要以Docker方式运行RocketMQ的管理工具——rocketmq-console (项目地址:https://github.com/apache/rocketmq-externals/tree/master/rocketmq-console)。

在容器的启动命令中需要指定RocketMQ的NameServer的位置,由于RocketMQ运行在宿主机,因此使用如下命令:

docker run -e "JAVA_OPTS=-Drocketmq.namesrv.addr=docker.for.mac.host.internal:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 8082:8080 -t styletang/rocketmq-console-ng:1.0.0

红色部分即表示Docker引擎运行所在的宿主机。

  • 3、打开控制台
    地址:http://rmq-console.cn:18000

本地请访问:localhost:8001

  • 4、问题总结:
    1】在实际使用中,会出现获取不到broker的信息,如果broker(docker地址:A,物理机地址:B。配置brokerIP1 =B),那么从console端直接访问B地址,可能不识别,创建容器时需要“--link rmqbroker:B”让console容器解析B地址。

  • 5、结束语
    以后有更新版本也可按照上述方法修改,创建镜像。

  • 6、参考文档:
    https://github.com/apache/rocketmq-externals/tree/master/rocketmq-console

你可能感兴趣的:(rocketmq管理工具)