Appearance
CentOS 7 安装 RabbitMQ
1. 安装步骤
1.1. 安装 Erlang
我们选择 RabbitMQ 最小依赖版本的 Erlang 进行安装,目前 CentOS 7 最高只支持到 Erlang 23
这里我们需要选择
erlang-23.3.4.11-1.el7.x86_64.rpm进行安装:至于
erlang-23.3.4.11-1.el7.x86_64.rpm与erlang-23.3.4.11-1.el8.x86_64.rpm的区别可以参考:Linux RPM 包中 el 含义解释。
图 1.1 - Github Release 将下载好的文件上传到 linux,并安装:
Bash$ sudo rpm -ivh erlang-23.3.4.11-1.el7.x86_64.rpm
1.2. 安装 socat
Bash
$ sudo yum -y install socat在安装 socat 的时候可能出现无法找到 yum 的安装包的情况,这是因为缺少 epel 的扩展源,参考:EPEL 是什么。
1.3. 安装 RabbitMQ
因为 RabbitMQ 对 Erlang 有版本区间要求,所以我们需要打开 RabbitMQ 与 Erlang 的兼容列表,确认下
Erlang 23.3.4.11适用的 RabbitMQ 有哪些版本:
图 1.2 - RabbitMQ 官网安装说明 Tip
2023-12-15 时确认:安装
erlang-26.1.2-1.el7.x86_64.rpm之后,可以正常安装目前最新版本的 RabbitMQ(rabbitmq-server-3.12.10-1.el8.noarch.rpm)。
图 1.3 - CentOS 7 一次性软件包 Erlang 26.1.2 和 25.3.2.3 版本为 CentOS 7 提供了一次性的包,这些包与 OpenSSL 1.1.x 静态链接。也就是该 Erlang 包在编译时,将 OpenSSL 1.1.x 版本的库直接嵌入到了可执行程序中。
这里我们选择
3.9.16的版本进行下载(翻了一遍 Changelog,最新的只找到3.9.16有el7的 rpm 包,同时也支持 Erlang 23.3 的版本)。安装 RabbitMQ
Bash$ sudo yum install rabbitmq-server-3.9.16-1.el7.noarch.rpm
2. 启动 RabbitMQ
- 设置开机启动
systemctl enable rabbitmq-server - 启动 RabbitMQ 服务
systemctl start rabbitmq-server - 查看 RabbitMQ 服务状态
systemctl status rabbitmq-server - 停止 RabbitMQ 服务
systemctl stop rabbitmq-server - 安装 web 管理后台
sudo rabbitmq-plugins enable rabbitmq_management - 添加用户
sudo rabbitmqctl add_user admin qwerqwer - 设置用户角色权限
sudo rabbitmqctl set_user_tags admin administrator - 设置用户虚拟主机权限
sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*" - 防火墙开放
15672/tcp端口(参考:Linux 防火墙)
- 后台管理站点地址:
IP:15672 - 内置的来宾账户为
guest(密码:guest),默认情况下只允许通过回环地址登录
3. 配置 RabbitMQ
创建
rabbitmq.config配置文件先用
sudo find / -name rabbitmq.config.example命令查找下是否已有自带的rabbitmq.config.example文件,如果有的话,那么将该文件复制一份到/etc/rabbitmq/rabbitmq.config(注意文件重命名)。如果没有的话那么需要我们自己去官网下载并放置到该目录下。设置来宾账户允许远程登录(不推荐)
找到
loopback_users,把下面这行代码取消注释掉就行了。
图 3.1 - rabbitmq.config