RabbitMQ Linux版怎样配置
导读: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
- 安装 Erlang(示例):
- 基于 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
- 通过 /etc/rabbitmq/rabbitmq-env.conf 自定义数据与日志目录:
- 集群与 .erlang.cookie
- 集群节点间需保持 .erlang.cookie 一致,常见位置:
- /var/lib/rabbitmq/.erlang.cookie
- $HOME/.erlang.cookie(执行用户家目录)
- 修改后需重启各节点,且注意文件权限与属主一致。
- 集群节点间需保持 .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 - 如使用云服务器,还需在 云厂商安全组 放行对应端口。
- firewalld(示例开放 5672/15672):
五 用户 虚拟主机 与常用验证
- 创建管理员与权限
- 创建用户:
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
