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_unacknowledged
sudo rabbitmqctl list_connections peer_host peer_port state
sudo rabbitmqctl status
sudo rabbitmqctl add_user <username> <password>
sudo rabbitmqctl delete_user <username>
/
):sudo rabbitmqctl set_permissions -p / <username> ".*" ".*" ".*"
(配置/讀/寫權限)。sudo rabbitmq-diagnostics check_running
sudo 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-server
guest
用戶遠程登錄,需創建新用戶并賦予管理員權限(參考“Web界面監控管理”中的“Admin”模塊操作)。對于生產環境,建議結合監控系統(如Prometheus+Grafana)實現自動化監控與告警:
rabbitmq_prometheus
插件(默認啟用,端口15692
)采集指標數據。啟用命令:sudo rabbitmq-plugins enable rabbitmq_prometheus
。10691
的“RabbitMQ Overview”看板),可視化展示消息速率、隊列長度、內存使用等指標,并設置告警規則(如隊列長度超過閾值、節點宕機)。