首页主机资讯RabbitMQ Linux版怎样配置

RabbitMQ Linux版怎样配置

时间2025-12-19 00:51:03发布访客分类主机资讯浏览504
导读:Linux 上配置 RabbitMQ 的完整步骤 一 准备与版本匹配 安装前先确认 Erlang 与 RabbitMQ 版本兼容,参考官方兼容矩阵:https://www.rabbitmq.com/which-erlang.html。 在...

Linux 上配置 RabbitMQ 的完整步骤

一 准备与版本匹配

  • 安装前先确认 Erlang 与 RabbitMQ 版本兼容,参考官方兼容矩阵:https://www.rabbitmq.com/which-erlang.html。
  • RHEL/CentOS 系列系统上,安装 RabbitMQ 前建议先安装依赖 socat(不少 RPM 包安装流程会用到):yum -y install socat
  • 安装完成后可用 erl -v 验证 Erlang 是否可用。

二 安装与目录

  • 基于 RPM 的发行版(RHEL/CentOS):
    • 安装 Erlang(示例):yum -y install erlang-< version> .rpm
    • 安装 RabbitMQ(示例):rpm -Uvh rabbitmq-server-< version> .noarch.rpm
  • 基于 Debian 的发行版(Ubuntu):
    • sudo apt update & & sudo apt install erlang rabbitmq-server
  • 常用目录与文件:
    • 配置目录:/etc/rabbitmq
    • 数据目录(默认):/var/lib/rabbitmq/mnesia
    • 日志目录(默认):/var/log/rabbitmq
    • 管理插件启用后,管理界面默认监听 15672 端口。

三 核心配置

  • 配置文件与格式
    • 新版推荐使用 rabbitmq.conf(ini 风格);旧版使用 rabbitmq.config(Erlang 元组风格)。二者可并存,但建议统一为一种。
    • 示例(rabbitmq.conf):仅开放 AMQP 0-9-1 端口
      listeners.tcp.default = 5672
      # 如需禁用非 TLS 监听:listeners.tcp = none
      # 如需 TLS:listeners.ssl.default = 5671
      
    • 示例(rabbitmq.config,旧版):允许远程使用 guest 用户(不建议生产环境)
      [{
      rabbit, [{
      loopback_users, []}
      ]}
          ].
      
  • 环境变量与目录
    • 通过 /etc/rabbitmq/rabbitmq-env.conf 自定义数据与日志目录:
      RABBITMQ_MNESIA_BASE=/data/rabbitmq/mnesia
      RABBITMQ_LOG_BASE=/data/rabbitmq/log
      
    • 创建目录并赋权:
      mkdir -pv /data/rabbitmq/log
      chown -R rabbitmq:rabbitmq /data/rabbitmq
      
  • 集群与 .erlang.cookie
    • 集群节点间需保持 .erlang.cookie 一致,常见位置:
      • /var/lib/rabbitmq/.erlang.cookie
      • $HOME/.erlang.cookie(执行用户家目录)
    • 修改后需重启各节点,且注意文件权限与属主一致。

四 服务启动与防火墙

  • 启停与自启
    • 启动/状态/开机自启:
      systemctl start rabbitmq-server
      systemctl status rabbitmq-server
      systemctl enable rabbitmq-server
      
  • 管理插件
    • 启用管理界面:rabbitmq-plugins enable rabbitmq_management(默认监听 15672)。
  • 防火墙与云安全组
    • firewalld(示例开放 5672/15672):
      firewall-cmd --zone=public --add-port=5672/tcp --permanent
      firewall-cmd --zone=public --add-port=15672/tcp --permanent
      firewall-cmd --reload
      firewall-cmd --list-ports
      
    • 如使用云服务器,还需在 云厂商安全组 放行对应端口。

五 用户 虚拟主机 与常用验证

  • 创建管理员与权限
    • 创建用户:rabbitmqctl add_user admin StrongPass!
    • 设置角色:rabbitmqctl set_user_tags admin administrator
    • 设置权限(默认 vhost “/”):rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
    • 创建虚拟主机:rabbitmqctl add_vhost myvhost
    • 给 vhost 授权:rabbitmqctl set_permissions -p myvhost admin ".*" ".*" ".*"
  • 登录与连通性验证
    • 管理界面:浏览器访问 http://服务器IP:15672,使用上一步创建的管理员账号登录。
    • 客户端连通:AMQP 默认端口 5672;如使用 TLS,端口 5671
    • 常用运维命令:
      • 查看用户:rabbitmqctl list_users
      • 查看队列:rabbitmqctl list_queues
      • 查看节点状态:rabbitmqctl status
  • 安全建议
    • 生产环境不要开放 guest 远程访问,使用自建管理员与最小权限原则;必要时启用 TLS 与更严格的访问控制。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: RabbitMQ Linux版怎样配置
本文地址: https://pptw.com/jishu/775719.html
RabbitMQ Linux版本如何选择 Ubuntu inotify如何提高系统稳定性

游客 回复需填写必要信息