Ubuntu下RabbitMQ的监控管理方法
在监控管理前,需确保RabbitMQ已正确安装并运行。Ubuntu系统可通过以下命令安装Erlang(RabbitMQ依赖)和RabbitMQ Server:
sudo apt update
sudo apt install erlang rabbitmq-server
启动/重启/停止RabbitMQ服务的命令分别为:
sudo systemctl start rabbitmq-server
sudo systemctl restart rabbitmq-server
sudo systemctl stop rabbitmq-server
查看服务状态的命令:
sudo systemctl status rabbitmq-server
RabbitMQ自带的rabbitmq_management插件提供了可视化的Web管理界面,需通过以下命令启用:
sudo rabbitmq-plugins enable rabbitmq_management
启用后,插件会自动部署Web服务,默认监听15672端口(HTTP)。
启用插件后,可通过浏览器访问http://<服务器IP>:15672(本地访问为http://localhost:15672)。默认登录账号为guest,密码为guest(注:guest用户仅能从本地登录,远程访问需创建新用户并赋予权限)。
Web界面主要包含以下核心模块:
除Web界面外,RabbitMQ提供了一系列命令行工具,适合自动化监控或脚本处理:
sudo rabbitmqctl list_queues name messages_ready messages_unacknowledgedsudo rabbitmqctl list_connections peer_host peer_port statesudo rabbitmqctl statussudo rabbitmqctl add_user <username> <password>sudo rabbitmqctl delete_user <username>/):sudo rabbitmqctl set_permissions -p / <username> ".*" ".*" ".*"(配置/读/写权限)。sudo rabbitmq-diagnostics check_runningsudo rabbitmq-diagnostics cluster_status。若需远程访问Web管理界面,需完成以下配置:
/etc/rabbitmq/rabbitmq.conf(若文件不存在,可复制模板/usr/share/doc/rabbitmq-server/rabbitmq.conf.example),添加以下内容:listeners.tcp.default = 0.0.0.0:5672 # 允许远程访问AMQP端口
management.listener.port = 15672
management.listener.ip = 0.0.0.0 # 允许远程访问管理端口
sudo systemctl restart rabbitmq-serverguest用户远程登录,需创建新用户并赋予管理员权限(参考“Web界面监控管理”中的“Admin”模块操作)。对于生产环境,建议结合监控系统(如Prometheus+Grafana)实现自动化监控与告警:
rabbitmq_prometheus插件(默认启用,端口15692)采集指标数据。启用命令:sudo rabbitmq-plugins enable rabbitmq_prometheus。10691的“RabbitMQ Overview”看板),可视化展示消息速率、队列长度、内存使用等指标,并设置告警规则(如队列长度超过阈值、节点宕机)。