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

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

前提条件:

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

安装和配置 RabbitMQ 的步骤:

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

bash 复制代码
sudo dnf update -y

步骤 2:添加 Erlang 和 RabbitMQ 仓库

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

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

    bash 复制代码
    sudo dnf install -y socat curl
  2. 添加 RabbitMQ 的 PackageCloud Erlang 仓库:

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

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

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

步骤 3:安装 Erlang 和 RabbitMQ Server

bash 复制代码
sudo dnf install -y erlang rabbitmq-server

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

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

bash 复制代码
sudo systemctl enable --now rabbitmq-server
sudo systemctl status rabbitmq-server

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

步骤 5:启用 RabbitMQ 管理插件

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

bash 复制代码
sudo rabbitmq-plugins enable rabbitmq_management

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

步骤 6:配置防火墙

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

  • 5672: AMQP 0-9-1 和 AMQP 1.0(客户端连接)
  • 15672: RabbitMQ 管理界面(如果已启用)
  • 25672: Erlang 分布式通信端口,用于节点间和 CLI 工具通信(对集群和某些 rabbitmqctl 命令很重要)
bash 复制代码
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 替换为你想要的凭据):

    bash 复制代码
    sudo rabbitmqctl add_user myadmin mypassword
  2. 给用户设置管理员标签:

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

    bash 复制代码
    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,用于设置内存限制(如果文件不存在则创建它):

bash 复制代码
sudo nano /etc/rabbitmq/rabbitmq.conf

添加如下内容:

ini 复制代码
# 设置总内存高水位线。例如,总 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 服务:

bash 复制代码
sudo systemctl restart rabbitmq-server

故障排除:

  • 日志: RabbitMQ 日志通常位于 /var/log/rabbitmq/。如果服务启动失败或遇到问题,请检查这些日志。

  • rabbitmqctl status 提供详细的状态信息。

    bash 复制代码
    sudo rabbitmqctl status

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

相关推荐
db_murphy1 小时前
Oracle数据块8KB、OS默认认块管理4KB,是否需调整大小为一致?
linux
mCell4 小时前
从删库到跑路?这50个Linux命令能保你职业生涯
linux·windows·macos
杰克逊的日记5 小时前
GPU运维常见问题处理
linux·运维·gpu
誰能久伴不乏6 小时前
Linux系统调用概述与实现:深入浅出的解析
linux·运维·服务器
程序员学习随笔6 小时前
Linux进程深度解析(2):fork/exec写时拷贝性能优化与exit资源回收机制(进程创建和销毁)
linux·运维·服务器
mmoyula6 小时前
【RK3568 PWM 子系统(SG90)驱动开发详解】
android·linux·驱动开发
-SGlow-6 小时前
MySQL相关概念和易错知识点(2)(表结构的操作、数据类型、约束)
linux·运维·服务器·数据库·mysql
代码改变世界ctw7 小时前
Linux内核设计与实现 - 第14章 块I/O层
linux·运维·服务器
van叶~9 小时前
Linux网络-------1.socket编程基础---(TCP-socket)
linux·网络·tcp/ip
风吹落叶花飘荡9 小时前
Ubuntu系统 系统盘和数据盘扩容具体操作
linux·运维·ubuntu