目录标题
1.RocketMQ-Console监控平台概述
RocketMQ有一个对其扩展的开源项目incubator-rocketmq-externals,这个项目中有一个子模块叫rocketmq-console,这个便是管理控制台项目了,先将incubator-rocketmq-externals拉到本地,因为我们需要自己对rocketmq-console进行编译打包运行。
GitHub地址:https://github.com/apache/rocketmq-externals
可能最新的console 已经不在这里了,迁移后:https://github.com/apache/rocketmq-dashboard
2.部署RocketMQ-Console监控平台
2.1.将源码编译成可部署的Jar包
2-1-1.拉取RockerMQ扩展包源码
# 旧版
[root@rocketmq-1 ~]# git clone https://github.com/apache/rocketmq-externals.git
[root@rocketmq-1 ~]# cd rocketmq-externals-master/rocketmq-console/
# 新版 拆分、迁移了
git clone https://gitee.com/wangl2020/wl-rocketmq-dashboard.git
2-2-2.配置RockerMQ-Console连接NameServer的地址
[root@rocketmq-1 rocketmq-console]# vim src/main/resources/application.properties
rocketmq.config.namesrvAddr=192.168.xx.xx:9876;192.168.xx.4:9876
配置登录验证 访问Dashboard
在访问Dashboard时支持按用户名和密码登录控制台,在操作完成后登出。需要做如下的设置:
- 在Spring配置文件resources/application.properties中修改rocketmq.config.loginRequired=true开启登录功能
# 开启登录功能
rocketmq.config.loginRequired=true
# Dashboard文件目录,登录用户配置文件所在目录
rocketmq.config.dataPath=/tmp/rocketmq-console/data
2.确保${rocketmq.config.dataPath}定义的目录存在,并且该目录下创建登录配置文件"users.properties",
如果该目录下不存在此文件,则默认使用resources/users.properties文件。 ps: 如果rocketmq启用了acl,控制台必须配置ak和sk,同时application.yml中的rocketmq.config.authmode 需要为acl且登录功能需要打开才能正常使用,登录后将使用acl2.0中的用户名和密码构造rpchook与broker进行通信。 users.properties文件格式为:
# 该文件支持热修改,即添加和修改用户时,不需要重新启动console
# 格式, 每行定义一个用户, username=password[,N] #N是可选项,可以为0 (普通用户); 1 (管理员)
#定义管理员
admin=admin,1
#定义普通用户
user1=user1
user2=user2
user.properties
application.yml
2-2-3.将源码编译成可部署的Jar包
# centos7 安装maven ,可跳过
[root@rocketmq-1 rocketmq-console]</