RabbitMQ Linux环境如何搭建
导读:Linux 环境搭建 RabbitMQ 实操指南 一 环境准备与版本匹配 安装前确认系统已具备 Erlang/OTP,且版本需与 RabbitMQ 兼容;可参考官方兼容矩阵:https://www.rabbitmq.com/which-e...
Linux 环境搭建 RabbitMQ 实操指南
一 环境准备与版本匹配
- 安装前确认系统已具备 Erlang/OTP,且版本需与 RabbitMQ 兼容;可参考官方兼容矩阵:https://www.rabbitmq.com/which-erlang.html。
- 常见依赖:基于 RPM 的系统建议安装 socat、logrotate;基于 Debian 的系统可直接通过包管理器安装。
- 管理工具:安装完成后可使用 rabbitmqctl 与 rabbitmq-plugins 进行运维与插件管理。
二 发行版安装步骤
- Ubuntu/Debian
- 更新索引并安装:sudo apt update & & sudo apt install -y rabbitmq-server
- 启动与自启:sudo systemctl start rabbitmq-server & & sudo systemctl enable rabbitmq-server
- 状态检查:sudo systemctl status rabbitmq-server 或 sudo rabbitmqctl status
- CentOS/RHEL
- 安装 EPEL(如未启用):sudo yum install -y epel-release
- 安装服务:sudo yum install -y rabbitmq-server
- 启动与自启:sudo systemctl start rabbitmq-server & & sudo systemctl enable rabbitmq-server
- 状态检查:sudo systemctl status rabbitmq-server 或 sudo rabbitmqctl status
- 版本锁定示例(RHEL/CentOS 8,RabbitMQ 3.12.0)
- 导入签名密钥:sudo rpm --import https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
- 安装 Erlang(Erlang Solutions 仓库):curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash & & sudo dnf install -y erlang
- 安装 RabbitMQ:sudo dnf install -y https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.12.0/rabbitmq-server-3.12.0-1.el8.noarch.rpm
三 安全与远程访问配置
- 启用管理插件:sudo rabbitmq-plugins enable rabbitmq_management,访问 http://< 服务器IP> :15672。
- 创建管理员与授权(示例用户 admin,密码自定义):
- 新增用户:sudo rabbitmqctl add_user admin
- 设置标签:sudo rabbitmqctl set_user_tags admin administrator
- 设置权限:sudo rabbitmqctl set_permissions -p / admin “." ".” “.*”
- 关于 guest 用户:自 3.3.0 起,guest/guest 仅允许 localhost 访问;远程访问请使用自建管理员账户。
- 防火墙放行(如需远程):
- firewalld:sudo firewall-cmd --permanent --add-port=5672/tcp --add-port=15672/tcp & & sudo firewall-cmd --reload
- ufw:sudo ufw allow 5672, sudo ufw allow 15672
四 验证与常用运维
- 服务与节点状态:sudo systemctl status rabbitmq-server;sudo rabbitmqctl status
- 插件管理:rabbitmq-plugins list(查看),sudo rabbitmq-plugins enable rabbitmq_management(启用)
- 管理端快速声明队列/交换机/绑定(需先安装 rabbitmqadmin,启用管理插件后可用):
- 安装:sudo rabbitmq-plugins enable rabbitmq_management 后,使用 /usr/share/doc/rabbitmq-server/rabbitmqadmin 或下载同名脚本
- 示例:
- 队列:sudo rabbitmqadmin declare queue name=myqueue durable=true
- 交换机:sudo rabbitmqadmin declare exchange name=myexchange type=direct durable=true
- 绑定:sudo rabbitmqadmin declare binding source=myexchange destination=myqueue routing_key=myroutingkey
- 客户端连通性测试(Python pika 示例):
- pip install pika
- 代码示例:
- import pika
- conn = pika.BlockingConnection(pika.ConnectionParameters(‘localhost’))
- ch = conn.channel(); ch.queue_declare(queue=‘myqueue’)
- ch.basic_publish(exchange=‘’, routing_key=‘myqueue’, body=‘Hello RabbitMQ!’)
- conn.close()
五 常见问题与排查
- 版本不兼容导致节点无法启动:核对 Erlang 与 RabbitMQ 版本矩阵并调整版本。
- 端口占用:检查 5672(AMQP)、15672(管理)是否被占用,必要时释放或调整端口。
- 远程无法登录管理端:不要依赖 guest/guest;按上文创建管理员并赋权,同时确保防火墙放行。
- 插件未生效:确认已执行启用命令并重启服务(如需要):sudo systemctl restart rabbitmq-server。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: RabbitMQ Linux环境如何搭建
本文地址: https://pptw.com/jishu/751082.html
