详解最新版RabbitMQ 基于RPM 方式的安装

如何选择安装版本

已经不支持的发布系列

版本最后补丁版本首次发布时间停止更新时间
3.73.7.282017年11月28日2020年09月30日
3.63.6.162015年12月22日2018年05月31日
3.53.5.82015年03月11日2016年10月31日
3.43.4.42014年10月21日2015年10月31日
3.33.3.52014年04月02日2015年03月31日
3.23.2.42013年10月23日2014年10月31日
3.13.1.52013年05月01日2014年04月30日
3.03.0.42012年11月19日2013年11月30日

我们选择最新版:3.8.16 于2021年5月4日更新,但2019年10月1日就已经发布3.8 版本,并且3.7版本已经停止更新了。

基于RPM 方式安装RabbitMQ

目前支持的基于 RPM 的发行版列表包括

  • CentOS 8.x
  • RedHat Enterprise Linux 8.x
  • Fedora 32 到34 (使用 CentOS 8.x 软件包)

用户权限要求:RabbitMQ RPM 包需要sudo权限才能安装和管理。

CentOS 8 阿里云镜像下载:

http://mirrors.aliyun.com/centos/8/isos/x86_64/CentOS-8.3.2011-x86_64-dvd1.iso

基于RPM安装步骤

下载安装包

erlang
https://packagecloud.io/rabbitmq/erlang/packages/el/8/erlang-23.3.4.1-1.el8.x86_64.rpm
socat
http://www.rpmfind.net/linux/centos/8.3.2011/AppStream/x86_64/os/Packages/socat-1.7.3.3-2.el8.x86_64.rpm
RabbitMQ
https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.16/rabbitmq-server-3.8.16-1.el8.noarch.rpm

img

注意

各个包的对应关系也是有一定要求的,像笔者这一套就都是el8的,下载的时候也一定要下载一样的,每个包后面也都有标示,而且和linux版本显示的4.18.0-80.el8.x86_64也是一致的(查看linux版本:uname -r)

将这三个rpm 上传到linux 服务器中

使用CentOS 7 系统的请下载以下安装包

https://packagecloud.io/rabbitmq/erlang/packages/el/7/erlang-23.3.3-1.el7.x86_64.rpm 
http://www.rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/socat-1.7.3.2-2.el7.x86_64.rpm
https://packagecloud.io/rabbitmq/rabbitmq-server/packages/el/7/rabbitmq-server-3.7.27-1.el7.noarch.rpm

安装需要的依赖包

yum install build-essential kernel-devel gcc gcc-c++ m4 ncurses-devel openssl openssl-devel unixODBC unixODBC-devel

安装RabbitMQ

分别安装Erlang、Socat、RabbitMQ(一定要按照顺序!)

安装Erlang:  rpm -ivh erlang-23.3.4.1-1.el8.x86_64.rpm
安装Socat:   rpm -ivh socat-1.7.3.3-2.el8.x86_64.rpm
安装RabbitMQ:rpm -ivh rabbitmq-server-3.8.16-1.el8.noarch.rpm

报错一

 [/usr/lib/tmpfiles.d/libstoragemgmt.conf:1] Line references path below legacy directory /var/run/, updating /var/run/lsm → /run/lsm; please update the tmpfiles.d/  drop - in file accordingly.
 [/usr/lib/tmpfiles.d/libstoragemgmt.conf:2] Line references path below legacy directory /var/run/, updating /var/run/lsm/ipc → /run/lsm/ipc; please update the tmpfiles.d/ drop-in file accordingly.
 [/usr/lib/tmpfiles.d/mdadm.conf:1] Line references path below legacy directory /var/run/, updating /var/run/mdadm → /run/mdadm; please update the tmpfiles.d/ drop-in file accordingly.
 [/usr/lib/tmpfiles.d/pesign.conf:1] Line references path below legacy directory /var/run/, updating /var/run/pesign → /run/pesign; please update the tmpfiles.d/ drop-in file accordingly.
 [/usr/lib/tmpfiles.d/rabbitmq-server.conf:1] Line references path below legacy directory /var/run/, updating /var/run/rabbitmq → /run/rabbitmq; please update the tmpfiles.d/ drop-in file accordingly.

解决报错一

将提示的需要修改的文件进行更改:旧→ 新

vim /usr/lib/tmpfiles.d/libstoragemgmt.conf 
 将 /var/run/lsm 改为 /run/lsm
vim /usr/lib/tmpfiles.d/mdadm.conf
 将/var/run/mdadm 改为 /run/mdadm
vim /usr/lib/tmpfiles.d/pesign.conf
 将/var/run/pesign 改为 /run/pesign
vim /usr/lib/tmpfiles.d/rabbitmq-server.conf
 将/var/run/rabbitmq 改为 /run/rabbitmq

再执行:

rpm -ivh rabbitmq-server-3.8.16-1.el8.noarch.rpm

如果只显示:已经安装,没有报错那就安装成功了。

RabbitMQ配置文件没有,需要新增rabbitmq.conf

cd /etc/rabbitmq/

vim rabbitmq.conf

编辑内容如下: loopback_users=none

这里的意思是开放使用,rabbitmq默认创建的用户guest,密码也是guest,这个用户默认只能是本机访问,localhost或者127.0.0.1,从外部访问需要添加上面的配置。

关于更多配置信息将在另一篇文章编写。

启动服务

rabbitmq-server start

报错二

ERROR: epmd error for host RabbitMQ-101: timeout

解决报错二

vim /etc/hosts

在最后添加:127.0.0.1 RabbitMQ-101

host 填写提示错误的host,别填错了

再次启动服务

这个命令启动属于“前台启动”,ctrl+c 退出服务,

使用后台启动命令:systemctl start rabbitmq-server

查看启动端口情况:lsof -i:5672

服务状态:systemctl status rabbitmq-server

image

可以看到服务启动成功和日志存放目录(/var/log/rabbitmq)

服务管理命令

启动服务:systemctl start   rabbitmq-server 
服务状态:systemctl status  rabbitmq-server
关闭服务:systemctl stop    rabbitmq-server 
重启服务:systemctl restart rabbitmq-server

开启rabbitmq 管理插件

/sbin/rabbitmq-plugins enable rabbitmq_management
systemctl restart rabbitmq-server

查看默认管理端口是否监听成功:netstat -anp|grep 15672

防火墙端口开放

开放访问端口15672: firewall-cmd -–permanent –-add-port=15672/tcp
重启防火墙:       firewall-cmd --reload

到此,就可以通过http://ip:15672进行登陆web页面了

img

输入默认的管理员账号密码:guest,guest

img

完成RabbitMQ 3.8.16的安装

RabbitMQ 相关端口的作用

- 4369:epmd,RabbitMQ 节点和 CLI 工具使用的对等发现服务
- 5672、5671:由 AMQP 0-9-1 和 1.0 客户端使用,分别为没有和有 TLS
- 25672:用于节点间和 CLI 工具通信(Erlang 分发服务器端口)并从动态范围分配(默认限制为单个端口,计算为 AMQP 端口 + 20000)。除非确实需要这些端口上的外部连接(例如,集群使用联合或在子网外的机器上使用 CLI 工具),否则不应公开这些端口。
- 35672-35682:由 CLI 工具(Erlang 分发客户端端口)用于与节点通信,并从动态范围(计算为服务器分发端口 + 10000 到服务器分发端口 + 10010)分配。
- 15672:HTTP API客户端、管理 UI和 rabbitmqadmin (仅当启用管理插件时才会监听)
- 61613、61614:没有和有TLS 的STOMP 客户端(仅当启用了STOMP 插件时才会监听)
- 1883、8883:MQTT 客户端没有和有TLS,如果启用了MQTT 插件才会监听
- 15674:STOMP-over-WebSockets 客户端(仅当启用了Web STOMP 插件时才会监听)
- 15675:MQTT-over-WebSockets 客户端(仅当启用了Web MQTT 插件时才会监听)
- 15692:Prometheus 指标(仅当启用Prometheus 插件时才会监听)
  • 15
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
如果你在最新版的 RabbitMQ 中无法安装私信(死信)插件,可能是因为该插件不再作为官方支持的插件而被移除。RabbitMQ 在最新版本中可能会有一些变化和更新。 你仍然可以通过以下步骤来手动安装私信插件,但请注意,这不是官方支持的方法,可能会有一些风险和不稳定性: 1. 首先,确保你已经安装RabbitMQ。你可以从 RabbitMQ 官方网站下载适用于 Windows 的安装程序,并按照指示进行安装。 2. 打开命令提示符或终端窗口。 3. 进入 RabbitMQ安装目录。在 Windows 上,默认安装路径为 `C:\Program Files\RabbitMQ`。 4. 在命令提示符或终端窗口中,执行以下命令来启用 RabbitMQ 的管理插件: ``` rabbitmq-plugins.bat enable rabbitmq_management ``` 5. 启用管理插件后,执行以下命令来重启 RabbitMQ 服务: ``` rabbitmq-service.bat restart ``` 6. 打开浏览器,并访问 `http://localhost:15672`。这是 RabbitMQ 的管理界面。 7. 使用默认的用户名和密码登录(用户名为 `guest`,密码为 `guest`)。 8. 在管理界面中,点击 "Admin" 标签页,然后点击 "Add / remove plugins"。 9. 在 "Available Plugins" 列表中,查找私信(死信)插件。如果找不到该插件,说明最新版本的 RabbitMQ 不再支持该插件。 如果无法安装私信插件,你可以考虑使用其他方式实现类似的功能,例如在应用程序代码中手动处理死信消息。请注意,这是一种替代方案,并且需要你根据自己的业务需求进行实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Java全栈布道师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值