温馨提示×

Debian RabbitMQ插件安装与管理

小樊
36
2025-11-17 15:55:35
栏目: 智能运维

Debian 上 RabbitMQ 插件的安装与管理

一 环境准备与版本匹配

  • 安装 Erlang(RabbitMQ 运行依赖):sudo apt-get update && sudo apt-get install -y erlang-nox
  • 添加 RabbitMQ 官方 APT 仓库(推荐方式,便于获取新版本):
    • 导入密钥:curl -1sLf “https://keys.openpgp.org/vks/v1/by-fingerprint/0A9AF2115F4687BD29803A206B73A36E6026DFCA” | sudo gpg --dearmor | sudo tee /usr/share/keyrings/com.rabbitmq.team.gpg >/dev/null
    • 写入源(注意选择与系统匹配的发行版代号,Debian 11 常用 bullseye,Debian 12 常用 bookworm;以下示例为 Debian 11,若使用 Ubuntu 的 PPA 源需替换为对应代号如 jammy):
      echo “deb [signed-by=/usr/share/keyrings/com.rabbitmq.team.gpg] https://ppa.launchpad.net/rabbitmq/rabbitmq-erlang/ubuntu bullseye main” | sudo tee /etc/apt/sources.list.d/rabbitmq.list
      echo “deb [signed-by=/usr/share/keyrings/com.rabbitmq.team.gpg] https://ppa.launchpad.net/rabbitmq/rabbitmq-server/ubuntu bullseye main” | sudo tee -a /etc/apt/sources.list.d/rabbitmq.list
    • 更新并安装:sudo apt-get update && sudo apt-get install -y rabbitmq-server
  • 启动与开机自启:sudo systemctl enable --now rabbitmq-server;检查状态:sudo systemctl status rabbitmq-server
  • 说明:若你更倾向使用 Debian 原生仓库,也可直接 apt 安装,但版本可能较旧;插件生态通常以官方仓库为准。

二 插件管理常用命令

  • 启用插件:sudo rabbitmq-plugins enable <插件名>
  • 禁用插件:sudo rabbitmq-plugins disable <插件名>
  • 列出插件:
    • rabbitmq-plugins list(简要)
    • rabbitmq-plugins list -v(含版本与描述)
    • rabbitmq-plugins list -e(仅显示已启用)
  • 仅启用指定插件并禁用其他:rabbitmq-plugins set <插件名>
  • 说明:多数官方插件启用后需重启服务才生效(见下一节示例)。

三 常用插件与启用示例

  • 管理插件 rabbitmq_management(Web 控制台):
    • 启用:sudo rabbitmq-plugins enable rabbitmq_management
    • 重启:sudo systemctl restart rabbitmq-server
    • 访问:http://<服务器IP或域名>:15672
    • 登录:默认账户 guest/guest(仅本机访问);生产环境请创建专用管理员账户(见第四节)。
  • 延迟交换机插件 rabbitmq_delayed_message_exchange(社区插件,提供 x-delayed-message 交换机类型):
    • 下载插件 .ez 文件(选择与你的 RabbitMQ 版本匹配的版本)至 /usr/lib/rabbitmq/lib/rabbitmq_server-<版本>/plugins/
    • 启用:sudo rabbitmq-plugins enable rabbitmq_delayed_message_exchange
    • 重启:sudo systemctl restart rabbitmq-server
    • 注意:社区插件不在官方仓库,需自行维护版本兼容性与安全性。

四 安全与运维要点

  • 用户与权限(避免使用默认 guest/guest 远程登录):
    • 创建用户:sudo rabbitmqctl add_user <用户名> <密码>
    • 设置管理员标签:sudo rabbitmqctl set_user_tags <用户名> administrator
    • 设置权限(示例对根虚拟主机“/”授予全部权限):sudo rabbitmqctl set_permissions -p / <用户名> “." ".” “.*”
  • 常用运维命令:
    • 节点状态:sudo rabbitmqctl status
    • 集群状态:sudo rabbitmqctl cluster_status
    • 队列列表:sudo rabbitmqctl list_queues
    • 清空队列消息:sudo rabbitmqctl purge_queue <队列名>
  • 防火墙与监听:确保 15672(管理)、5672(AMQP)等端口对需要的主机开放(例如使用 UFW:sudo ufw allow 15672,5672/tcp)。

0