如何在 Ubuntu22.04 上安装并开始使用 RabbitMQ
单体架构学的差不多了,可以朝着微服务进军了,笔者打算实操一下 RabbitMQ(这个和 Redis 一样重要的组件) 笔者这里采用的是本地 wsl2 的 Ubuntu22.04
先按指定的博客进行前置操作 Ubuntu22.04 安装 RabbitMQ
解决 ARM Ubuntu 22.04 缺少 libssl 1.1 的问题
在安装 RabbitMQ 时,出现以下的报错信息
提示缺少依赖 libssl1.1,于是使用 apt 安装一下
sudo apt install libssl1.1
发现找不到这个依赖包
经查阅资料了解到,在 Ubuntu 18.04 以后的版本中,libssl1.1 已经从仓库中被移除了,因此在 Ubuntu 20.04 和 Ubuntu 22.04 系统下,我们只能手动安装这个依赖包。
由于网上大多数教程都是基于 x86_64 平台的,使用的仓库和 ARM 平台是不同的。我们可以用浏览器打开官方的 ubuntu-ports 仓库来下载 libssl1.1,选择libssl1.1_1.1.1-1ubuntu2.1~18.04.23_amd64.deb然后单击下载
如果你的 Ubuntu 系统没有图形化界面,也可以使用 wget 命令来下载
wget https://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1-1ubuntu2.1~18.04.23_amd64.deb
依赖包下载完成后,进入其所在的目录(wget安装的软件一般在本目录),使用软件安装工具 dpkg 来安装
sudo dpkg -i libssl1.1_1.1.1-1ubuntu2.1~18.04.23_amd64.deb
再执行安装 Erlang命令
## Install Erlang packages
sudo apt-get install -y erlang-base \erlang-asn1 erlang-crypto erlang-eldap erlang-ftp erlang-inets \erlang-mnesia erlang-os-mon erlang-parsetools erlang-public-key \erlang-runtime-tools erlang-snmp erlang-ssl \erlang-syntax-tools erlang-tftp erlang-tools erlang-xmerl
安装成功
执行安装 RabbitMQ 命令
## Install rabbitmq-server and its dependencies
sudo apt-get install rabbitmq-server -y --fix-missing
出现报错, 如下
仔细看看报错,初步猜测为版本对应不上
询问 deepseek
你的错误提示表明,
rabbitmq-server
依赖 Erlang 26.0 或更高版本,但你的系统上安装的是 Erlang 25.2.3(1:25.2.3-1
),导致版本冲突。
解决方法:
1. 升级 Erlang 到 26.0+
RabbitMQ 3.12.x 需要 Erlang 26.0+,而你的系统可能默认安装的是较旧的 Erlang 25.x。你需要先升级 Erlang:
- Ubuntu/Debian(推荐使用 Erlang Solutions 提供的包):
# 添加 Erlang Solutions 仓库 wget https://packages.erlang-solutions.com/erlang-solutions_2.0_all.deb sudo dpkg -i erlang-solutions_2.0_all.deb sudo apt-get update# 安装 Erlang 26+ sudo apt-get install esl-erlang
- CentOS/RHEL:
# 添加 Erlang Solutions 仓库 sudo yum install https://packages.erlang-solutions.com/erlang-solutions-2.0-1.noarch.rpm sudo yum install esl-erlang
2. 安装兼容的 RabbitMQ 版本
如果你无法升级 Erlang,可以安装一个 兼容 Erlang 25.x 的 RabbitMQ 版本:
- RabbitMQ 3.11.x(支持 Erlang 25.x)
例如:
或手动下载:sudo apt-get install rabbitmq-server=3.11.26-1
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.11.26/rabbitmq-server_3.11.26-1_all.deb sudo dpkg -i rabbitmq-server_3.11.26-1_all.deb
检查版本兼容性
- RabbitMQ 3.12.x → 需要 Erlang 26.0+
- RabbitMQ 3.11.x → 支持 Erlang 25.2+
建议优先升级 Erlang,然后安装最新的 RabbitMQ 3.12.x。如果无法升级 Erlang,则降级 RabbitMQ 到 3.11.x。
你可以运行 erl -version
或 rabbitmqctl version
检查当前安装的版本。
这里采用的为 RabbitMq降低版本 的方法
先提前更新一下
sudo apt update
sudo apt upgrade
安装
sudo apt-get install rabbitmq-server=3.11.26-1
查看启动状态
systemctl status rabbitmq-server
成功!!!