Java与RabbitMQ(二)启动rabbitmq web管理后台插件
RabbitMQ 插件是由 Erlang 语言编写的,并且和服务器是一起运行在同一个 Erlang VM 中的。关于如何安装rabbitmq,请参考如何使用rabbitmq.
为什么需要management插件
虽然大部分程序员是 CLI 的拥趸,但是如果有一个 web 访问控制页面提供,何尝不更好呢?事实上,我们使用 management 插件的主要原因如下:
- 运行 rabbitmqctl,当前用户可能需要启动服务器的 Erlang cookie 的权限,从运维层面来说这是不安全的,不管你是否有心去执行破坏性操作。
- 假如你的产品负责人很想知道队列中还存有多少后台通知未处理,你不可能说你先去学一下CLI吧。
management 插件的功能
1. 服务器数据统计概览–已投递的消息、服务器内存信息、Erlang进程数
2. 导入/导出服务器配置
3. 监控服务器连接
4. 交换器(exchange)列表、添加交换器
5. 队列列表、添加队列
6. 修改队列绑定
7. 用户列表、添加用户
8. vhost列表、添加vhost
图1向你展示了还不错的web界面:
图1
启动rabbitmq web管理后台插件
由于新发布的rabbitmq版本已经绑定了该插件,所以无需安装了,唯一要做的就是启用他们。进入rabbitmq安装目录,运行命令dir \plugins(linux下 ls /plugins)就可以看到可用的插件了:
amqp_client-3.6.5.ez
cowboy-1.0.3.ez
cowlib-1.0.1.ez
mochiweb-2.13.1.ez
rabbitmq_amqp1_0-3.6.5.ez
rabbitmq_auth_backend_ldap-3.6.5.ez
rabbitmq_auth_mechanism_ssl-3.6.5.ez
rabbitmq_consistent_hash_exchange-3.6.5.ez
rabbitmq_event_exchange-3.6.5.ez
rabbitmq_federation-3.6.5.ez
rabbitmq_federation_management-3.6.5.ez
rabbitmq_jms_topic_exchange-3.6.5.ez
rabbitmq_management-3.6.5.ez
rabbitmq_management_agent-3.6.5.ez
rabbitmq_management_visualiser-3.6.5.ez
rabbitmq_mqtt-3.6.5.ez
rabbitmq_recent_history_exchange-1.2.1.ez
rabbitmq_sharding-0.1.0.ez
rabbitmq_shovel-3.6.5.ez
rabbitmq_shovel_management-3.6.5.ez
rabbitmq_stomp-3.6.5.ez
rabbitmq_top-3.6.5.ez
rabbitmq_tracing-3.6.5.ez
rabbitmq_trust_store-3.6.5.ez
rabbitmq_web_dispatch-3.6.5.ez
rabbitmq_web_stomp-3.6.5.ez
rabbitmq_web_stomp_examples-3.6.5.ez
rabbit_common-3.6.5.ez
ranch-1.2.1.ez
README.txt
sockjs-0.3.4.ez
webmachine-1.10.3.ez
其中README.txt告诉我们怎么开启插件:rabbitmq_plugins enable XX, 即可开启XX插件。
我们开启management插件需要进入代理服务器的sbin目录下,执行命令rabbitmq-plugins enable rabbitmq_management:
C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.5\sbin>rabbitmq-plugins enable rabbitmq_management
The following plugins have been enabled:mochiwebwebmachinerabbitmq_web_dispatchamqp_clientrabbitmq_management_agentrabbitmq_managementApplying plugin configuration to rabbit@WIN-VDB8K51IQ2Q... started 6 plugins.
因为该插件依赖了其他几个插件,所以输出提示启用了6个插件。现在可以使用浏览器访问 http://localhost:15672/,它会弹出一个认证窗口,输入guest/guest(默认),即可看到图1所示的管理界面了。
从JSON文件导入配置
从web页面导出服务器配置json形式文件
如图2,可以分别导出、导入配置文件:
图2 以下是导出的配置文件样例:
{"rabbit_version" : "3.6.5","users" : [{"name" : "guest","password_hash" : "PbT5dxnZmxaaPli3C6fdW7bEx+17qchhwEw0pq5eUUMFzjpL","hashing_algorithm" : "rabbit_password_hashing_sha256","tags" : "administrator"}],"vhosts" : [{"name" : "/"}],"permissions" : [{"user" : "guest","vhost" : "/","configure" : ".*","write" : ".*","read" : ".*"}],"parameters" : [],"policies" : [],"queues" : [],"exchanges" : [],"bindings" : []
}
我们可以看到当前服务器版本是3.6.5、登录账户的信息、虚拟主机的信息、以及队列、交换器、绑定目前都是空的。
我们可以增加一个队列,然后导入配置。
{"rabbit_version":"3.6.5","users":[{"name":"guest","password_hash":"PbT5dxnZmxaaPli3C6fdW7bEx+17qchhwEw0pq5eUUMFzjpL","hashing_algorithm":"rabbit_password_hashing_sha256","tags":"administrator"}],"vhosts":[{"name":"/"}],"permissions":[{"user":"guest","vhost":"/","configure":".*","write":".*","read":".*"}],"parameters":[],"policies":[],"queues":[{"name":"hello_queue","vhost":"/","durable":true,"auto_delete":true,"arguments":{}}],"exchanges":[],"bindings":[]
}
保存后,选择该文件,然后导入该配置文件成功后,如图3可以看到已经新增一个队列,并且其属性设置是持久化、自动删除的:
图3
从web控制台添加用户
我们可以在Admin的tab页通过 Add a user 新增用户,并通过设置Tags指定相应的权限级别。如图4所示。
图4
管理用户的权限
上面我们增加一个rabbit1的管理员用户,但是目前他是没有权限访问任何虚拟主机的,如图5所示:
图5 现在通过**点击用户名,打开权限配置页面**,如图6所示:
图6 这里我们只需要单机 **Set permission** 按钮来保存权限变更,再**点击 Admin 回到用户列表**,我们可以看到rabbit1用户已经拥有访问"/"虚拟主机的权限了。
图7
其他功能
Connections、Channels、Exchanges、Queues这些栏目下面的功能自己动手试试吧,和用户管理差不多哦。
Java与RabbitMQ(二)启动rabbitmq web管理后台插件相关推荐
- go语言生成自定义uuid_竟然不用写代码!一款可视化 Web 管理后台生成工具
大家好,我是欧盆索思(opensource),每天为你带来优秀的开源项目! 今天给大家推荐一款利刃:一款基于 Go 语言的可视化 Web 管理后台生成工具. 项目名称:go-sword,地址:http ...
- go web db每次关闭_竟然不用写代码!一款可视化 Web 管理后台生成工具
大家好,我是欧盆索思(opensource),每天为你带来优秀的开源项目! 今天给大家推荐一款利刃:一款基于 Go 语言的可视化 Web 管理后台生成工具. 项目名称:go-sword,地址:http ...
- 撸一个基于VUE的WEB管理后台(一)
最近需要一个BS架构的管理后台,对工作过程中产生的调研资料进行登记.查询和导出.我们的调研资料都是人工收集,每年的产生量大概也就是万级,用户人数也不过百,从需求上来看并没有什么架构压力,正好适合我这样 ...
- GM架构设计 1.web管理后台调用httpserver使用http 2.游戏客户端则是直接发送协议
1.GM的本质:gm说白了就是能调用到我们在游戏服写好的GM接口.java语言对于反射之类的支持很好,因此GM_levelUp这样子命名即可,写好我们的协议处理逻辑. 2.这个GM接口有2个地方使用: ...
- Python SQLite3 安装 OpenVP* Web管理后台
一.安装相关 yum install gcc gcc-c++ openssl openssl-devel pam-devel sqlite-devel 二.安装 Openvpn 服务器端 CentOS ...
- java 树 右键菜单_VUE实现Studio管理后台(八):用右键菜单contextmenu,编辑树形结构...
RXEdior预设会有文件管理功能,但是灵活性需求不大,目前的设想是文件夹不允许修改,只允许增删改文件.基于这样的设想,把界面实现成这个效果: 这个功能并不是一个通用功能,并且我们做的代码,也没有按照 ...
- rabbitmq基础2——rabbitmq二进制安装和docker安装、基础命令
文章目录 一.RabbitMQ安装 1.1 二进制安装 1.2 rabbitmqctl工具 1.3 docker安装 二.rabbitmq基础命令 2.1 多租户与权限类 2.1.1 创建虚拟主机 2 ...
- RabbitMQ 安装使用,Centos系统安装RabbitMQ、Docker安装启动RabbitMQ
RabbitMQ官网:RabbitMQ RabbitMQ介绍: RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件).RabbitMQ服务器是用Erlang语 ...
- linux离线安装rabbitmq,离线安装rabbitMQ
安装步骤 整体软件环境 |软件|版本| |-|-| |RHEL |7 update3| |Erlong|19.3| |rabbitMQ|3.6.10| Erlong语言安装离线安装 rabbitMQ是 ...
最新文章
- Web 服务编程,REST 与 SOAP
- 手机网页css字体,CSS深入浅出-动态REM(手机专用)
- [hdu] 5696 区间的价值 || 序列分治
- 《技术的本质》2月24日part1
- 用matlab绘制升余弦函数
- 关于 Orbeon form PE 版本 Unauthorized 错误消息
- java数组清空能释放jvm内存嘛_JVM面试题汇总
- dubbo3.0源码编译问题
- oracle 错误01017,ORA-01017:用户名密码出错 故障实例
- NOD 32 企业版远程管理服务器病毒库更新失败_七夕小子_新浪博客
- 零基础安卓手游辅助开发入门视频教程
- zxing扫描二维码和识别图片二维码及其优化策略
- 自动化测试 | 这些常用测试平台,你们公司在用的是哪些呢?
- python的lambda函数妙用
- STM32F207ZG GPIO口学习
- MUI开发大全(小程序前端框架)
- POJ 2540 Hotter Colder(半平面交求可行域)
- 思科2018校招硬件测试笔试试题及答案
- 零基础小白应该怎么入门编程开发
- Android 10 文件读写权限申请
热门文章
- 艺术 几张产生视觉错觉的图片
- qt开关控件设计(手把手从零开始)
- 2020年滴春天,我认识了“飞桨PaddlePaddle”
- 6nm工艺的微观神话,于毫厘间雕刻5G的“神笔马良”
- 数据中台-让数据用起来-第一章笔记
- Qt配置MySql数据库驱动(Windows)
- h5中设置div中的内容水平并垂直居中
- Fri Feb 22 20:22:00 CST 2019字符串型转date
- Python3利用Twilio(国际)以及腾讯云服务(国内)免费发送手机短信
- Mybatis的插件分页原理