RabbitMQ 管理控制台

启用 rabbitmq_management 插件后,浏览器访问 http://服务器IP:15672 就是 Web 管理控制台。它把状态查看、队列操作、用户权限全部图形化,是学习和日常运维的主力界面。

登录

默认账号 guest/guest,但 guest 只允许从本机(127.0.0.1)登录;远程访问前请先在 Admin 页建一个管理员账号:

# 本机直接开浏览器访问 http://127.0.0.1:15672,账号 guest 密码 guest
# 命令行可先验证连通性:
curl -u guest:guest http://127.0.0.1:15672/api/overview
# 输出:{"management_version":"3.13.x","rabbitmq_version":"3.13.x", ...}

总览 Overview 页

登录后的首页,从上到下是全局大盘,运维排障先看这里:

区块看什么
Totals全局队列数、消息总数与消息速率(发布/投递/确认)
Nodes各节点内存、磁盘占用与运行时长,可点开看详情
Connections / Channels在线连接数与信道数
Queues / Exchanges队列与交换机的数量汇总

页面右上角可勾选 auto refresh 自动刷新,观察消息速率波动时很实用。

Queues 队列页

最常用的页面:列出所有队列的名称、消息数、消费者数、状态(running/idle),点进某个队列可做这些操作:

进入队列详情后可:
├── Publish message   手动向该队列发一条测试消息(可填属性与正文)
├── Get message(s)    从队首取消息预览(可选择 ack 方式,看后 requeue 放回)
├── Move messages     把消息批量转移到其他队列
├── Delete / Purge    删除队列 / 清空该队列全部消息
└── 查看绑定关系、在线消费者与消息速率曲线

Exchanges / Bindings / Connections / Channels 页

  • Exchanges:列出全部交换机及类型(direct/fanout/topic/headers/default),可新建、删除,还能直接 Add binding 完成绑定;
  • Bindings:交换机到队列的绑定关系一览,排查"消息去哪了"先看这里;
  • Connections:TCP 连接列表,显示客户端地址、用户名、信道数,可 Force close 强制断开异常连接;
  • Channels:连接下的逻辑信道,能看到每个信道的收发与确认计数。

这几页右上角都有 Add 按钮,新建队列、交换机、绑定、vhost 都能在页面上完成,与 rabbitmqctl 等价。

Admin 页:用户与虚拟主机

顶部 Admin 页管理账号体系。Add user 建用户、设密码、选 Tags(角色标签),标签决定权限范围:

Tags(角色标签)的作用:
├── administrator   管理一切,可登录控制台并管理用户、策略、vhost
├── monitoring      可读取监控指标(报警系统常配)
├── policymaker     可管理策略与参数
└── management      只能查看/操作自己有权限的 vhost

下方 Virtual Hosts 区域点 Add a virtual host 建 vhost,再选中该 vhost 用 Set permissions 给用户授权,三个正则分别对应配置、写、读,与第 4 章 rabbitmqctl set_permissions 完全一致。

Policies 策略页

Admin 页里的 Policies 标签用于给一批交换机/队列批量套策略(如 TTL 过期、死信、队列类型),是本教程第 15~16 章(TTL 与死信)展开的内容,这里先记住入口即可。

小结

控制台日常四件事:Overview 看整体水位,Queues 收发与清理消息,Exchanges/Bindings 查路由,Admin 管用户与 vhost。记住 guest 只能本机登录,上手第一步是建一个 administrator 账号。

笔记加载中…