当前位置: 首页 > ds >正文

在 “Linux 9“ 系统快速安装配置RabbitMQ

这是在 “Linux 9” 系统(如 RHEL 9、AlmaLinux 9、Rocky Linux 9)上安装和配置 RabbitMQ 的中文指南。

前提条件:

  • 你拥有 sudo 权限。
  • 你的系统已连接到互联网。
  • firewalld 是你当前活动的防火墙(在基于 RHEL 的系统上很常见)。

安装和配置 RabbitMQ 的步骤:

步骤 1:系统更新(推荐)

sudo dnf update -y

步骤 2:添加 Erlang 和 RabbitMQ 仓库

RabbitMQ 依赖 Erlang。最好使用提供兼容版本的仓库。PackageCloud 是 RabbitMQ 官方分发包的方式。

  1. 安装 socat(RabbitMQ 脚本/插件通常依赖它)和添加仓库的工具:

    sudo dnf install -y socat curl
    
  2. 添加 RabbitMQ 的 PackageCloud Erlang 仓库:

    curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash
    
  3. 添加 RabbitMQ 的 PackageCloud RabbitMQ Server 仓库:

    curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash
    

    运行这些脚本后,你的系统将被配置为从这些受信任的源获取 Erlang 和 RabbitMQ。

步骤 3:安装 Erlang 和 RabbitMQ Server

sudo dnf install -y erlang rabbitmq-server

这会先安装 Erlang,然后安装 RabbitMQ 服务器。

步骤 4:启用并启动 RabbitMQ 服务

sudo systemctl enable --now rabbitmq-server
sudo systemctl status rabbitmq-server

--now 标志会同时启用服务(开机自启)并立即启动它。检查状态以确保它是 active (running)(活动运行中)。

步骤 5:启用 RabbitMQ 管理插件

这个插件提供了一个基于 Web 的 UI,用于管理 RabbitMQ,非常有用。

sudo rabbitmq-plugins enable rabbitmq_management

启用后,管理插件将监听端口 15672

步骤 6:配置防火墙

你需要为 RabbitMQ 打开以下端口:

  • 5672: AMQP 0-9-1 和 AMQP 1.0(客户端连接)
  • 15672: RabbitMQ 管理界面(如果已启用)
  • 25672: Erlang 分布式通信端口,用于节点间和 CLI 工具通信(对集群和某些 rabbitmqctl 命令很重要)
sudo firewall-cmd --permanent --add-port=5672/tcp
sudo firewall-cmd --permanent --add-port=15672/tcp
sudo firewall-cmd --permanent --add-port=25672/tcp # 对于 rabbitmqctl 和集群很重要
sudo firewall-cmd --reload

步骤 7:创建 RabbitMQ 管理员用户

默认情况下,guest 用户只能从 localhost 连接。为了远程访问管理界面或让应用程序连接,你应该创建一个新用户。

  1. 添加新用户(请将 myadminmypassword 替换为你想要的凭据):

    sudo rabbitmqctl add_user myadmin mypassword
    
  2. 给用户设置管理员标签:

    sudo rabbitmqctl set_user_tags myadmin administrator
    
  3. 为用户授予所有虚拟主机(/ 是默认虚拟主机)的权限:

    sudo rabbitmqctl set_permissions -p / myadmin ".*" ".*" ".*"
    

    (这授予了用户在 / 虚拟主机内对所有资源的配置、写入和读取权限)。

步骤 8:访问 RabbitMQ 管理界面

打开你的网络浏览器,然后访问:
http://你的服务器IP地址:15672/
(请将 你的服务器IP地址 替换为你的 Linux 9 机器的实际 IP 地址)。

使用你在步骤 7 中创建的用户登录(例如,myadmin / mypassword)。

步骤 9:基本配置(可选,但了解一下比较好)

RabbitMQ 的配置主要通过 rabbitmq.conf 文件进行。

  • 配置文件位置: /etc/rabbitmq/rabbitmq.conf
    如果此文件不存在,你可以创建它。如果文件不存在,RabbitMQ 将使用默认值。
  • 高级配置(Erlang 术语): /etc/rabbitmq/advanced.config(基本设置中较少需要)。

示例 rabbitmq.conf,用于设置内存限制(如果文件不存在则创建它):

sudo nano /etc/rabbitmq/rabbitmq.conf

添加如下内容:

# 设置总内存高水位线。例如,总 RAM 的 40%。
# 如果你的服务器有 8GB RAM,40% 大约是 3.2GB。
# vm_memory_high_watermark.relative = 0.4# 或者一个绝对值:
# vm_memory_high_watermark.absolute = 2GB# 磁盘可用空间限制(例如,如果可用磁盘空间低于 5GB,RabbitMQ 将阻塞生产者)
# disk_free_limit.absolute = 5GB

重要提示: 修改 rabbitmq.conf 后,你需要重启 RabbitMQ 服务:

sudo systemctl restart rabbitmq-server

故障排除:

  • 日志: RabbitMQ 日志通常位于 /var/log/rabbitmq/。如果服务启动失败或遇到问题,请检查这些日志。
  • rabbitmqctl status 提供详细的状态信息。
    sudo rabbitmqctl status
    

现在你已经成功安装了一个功能正常的 RabbitMQ 服务器,并带有管理界面和一个管理员用户!你可以开始创建虚拟主机、交换机、队列,并连接你的应用程序了。

http://www.xdnf.cn/news/8171.html

相关文章:

  • MySQL索引事务
  • 第七部分:第一节 - 数据库基础与 MySQL 入门:仓库的结构与管理语言
  • 服务器并发实现的五种方法
  • 5G 网络全场景注册方式深度解析:从信令交互到报文分析
  • Linux系统管理与编程16番外篇:PXE自动化安装部署OpenEuler24.03LTS
  • Openwrt下使用ffmpeg配合自建RTSP服务器实现推流
  • OpenHarmony外设驱动使用 (十二),User_auth
  • Java的Filter与Spring的Interceptor的比较
  • Android-MVVM框架学习总结
  • “AI+工业制造”智能化转型解决方案
  • 云原生+大数据
  • MySQL中索引最左前缀法则、索引失效情况、前缀索引、索引设计原则
  • Python打卡训练营day33——2025.05.22
  • 101个α因子#19
  • TCP与UDP协议详解
  • Flink中Kafka连接器的基本应用
  • 曾经在知乎上看到一个回答:“入职做FPGA,后续是否还可以转数字IC设计?”
  • Triton 动态链接库(DLL)初始化例程失败。
  • redis基本操作和基础命令,另外附上如何使用命令导出redis数据库及反馈的正确报文,rdb
  • 飞翔的小燕子-第16届蓝桥第6次STEMA测评Scratch真题第1题
  • TCP原理解析
  • 2025年高防IP与SCDN全面对比:如何选择最佳防护方案?
  • 智慧交通的核心引擎-车牌识别接口-车牌识别技术-新能源车牌识别
  • Postgresql14+Repmgr部署
  • 【漫话机器学习系列】272.K近邻中K的大小(K-NN Neighborhood Size)
  • 通过现代数学语言重构《道德经》核心概念体系,形成一个兼具形式化与启发性的理论框架
  • C# Unity容器详解
  • Google Prompt Tuning:文本嵌入优化揭秘
  • 小米15周年战略新品发布会:多领域创新突破,构建科技生态新蓝图
  • HUAWEI华为MateBook D 14 2021款i5,i7集显非触屏(NBD-WXX9,NbD-WFH9)原装出厂Win10系统