在 Debian 上安装与启用 RabbitMQ 插件
一 准备与安装
- 更新索引并安装依赖与服务器:
- sudo apt update
- sudo apt install -y erlang-nox
- sudo apt install -y rabbitmq-server
- 启动服务并设为开机自启:
- sudo systemctl start rabbitmq-server
- sudo systemctl enable rabbitmq-server
- 验证服务状态:
- sudo systemctl status rabbitmq-server(应看到 active (running))
二 常用插件安装与启用
- 管理插件(Web 控制台):启用后可浏览器访问控制台,端口 15672
- 启用:sudo rabbitmq-plugins enable rabbitmq_management
- 重启:sudo systemctl restart rabbitmq-server
- 访问:http://服务器IP:15672(默认账号 guest/guest,生产环境请创建专用账号)
- 运维工具 rabbitmqadmin(基于管理插件,便于脚本与快速验证)
- 安装:sudo apt install rabbitmqadmin
- 发布测试消息:echo “Hello, RabbitMQ!” | rabbitmqadmin publish routing_key=“test_queue” exchange=“”
- 接收测试消息:rabbitmqadmin get queue=test_queue
- 消息追踪 rabbitmq_tracing(便于排查消息流转)
- 启用:sudo rabbitmq-plugins enable rabbitmq_tracing
- 日志路径:/var/log/rabbitmq/(配合 tail -f 实时查看)
- MQTT 与 WebSocket(如需物联网场景)
- 启用:sudo rabbitmq-plugins enable rabbitmq_mqtt
- 启用:sudo rabbitmq-plugins enable rabbitmq_web_mqtt
- 访问控制台:http://127.0.0.1:15672(使用 guest/guest 登录查看插件状态)
三 防火墙与访问
- 放行必要端口(示例为 UFW)
- AMQP:5672/tcp
- 管理界面:15672/tcp
- 命令:sudo ufw allow 5672/tcp;sudo ufw allow 15672/tcp
- 远程访问管理界面
- 默认仅允许 127.0.0.1 使用 guest 登录。如需远程登录,创建专用用户并赋权,或在 /etc/rabbitmq/ 下新增配置文件(Erlang 术语)rabbitmq.config,内容示例:
- [{rabbit, [{loopback_users, []}]}]
- 修改后重启服务:sudo systemctl restart rabbitmq-server
四 常用管理命令
- 用户与权限
- 新建用户:sudo rabbitmqctl add_user 用户名 密码
- 设置管理员标签:sudo rabbitmqctl set_user_tags 用户名 administrator
- 赋权(虚拟主机 /):sudo rabbitmqctl set_permissions -p / 用户名 “." ".” “.*”
- 队列与状态
- 查看节点状态:sudo rabbitmqctl cluster_status
- 列出队列:sudo rabbitmqctl list_queues
- 清空队列消息:sudo rabbitmqctl purge_queue 队列名