首页 游戏 软件 资讯 排行榜 专题
首页
系统平台
CentOS 7系统安装RabbitMQ消息队列详细步骤与配置指南

CentOS 7系统安装RabbitMQ消息队列详细步骤与配置指南

热心网友
91
转载
2026-05-08

在分布式架构中,消息队列扮演着至关重要的“数据总线”角色,负责实现服务间的异步通信与数据可靠传输。RabbitMQ作为一款成熟的开源消息中间件,以其高可靠性、灵活的路由机制和丰富的插件生态,成为众多企业的首选。本文将提供一份详尽的指南,讲解如何在CentOS 7操作系统上,从零开始完成RabbitMQ的部署、配置与基础安全加固,确保您能搭建一个稳定可用的生产级消息队列环境。

免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈

CentOS 7安装RabbitMQ教程 消息队列环境搭建详细步骤【全攻略】

一、安装Erlang运行时环境

由于RabbitMQ服务器采用Erlang语言编写,因此首先必须安装与之兼容的Erlang/OTP运行时环境。版本兼容性是成功部署的关键,不匹配的版本可能导致服务无法启动。建议在安装前,访问RabbitMQ官方网站查阅最新的版本兼容性对照表。例如,RabbitMQ 3.10.x系列通常需要Erlang 25.x版本的支持。

以下以OTP-25.1版本为例,演示通过源码编译的方式进行安装,这种方式能提供更好的环境控制:

1. 安装编译所需的开发工具和依赖库:yum install -y gcc gcc-c++ make kernel-devel m4 ncurses-devel openssl-devel unixODBC-devel

2. 从官方GitHub仓库下载指定版本的Erlang源码压缩包:wget https://github.com/erlang/otp/releases/download/OTP-25.1/otp_src_25.1.tar.gz

3. 解压下载的文件并进入解压后的目录:tar -zxvf otp_src_25.1.tar.gz && cd otp_src_25.1

4. 配置安装参数(指定安装路径为/usr/local/erlang)并执行编译与安装,此过程耗时较长:./configure --prefix=/usr/local/erlang && make && make install

5. 将Erlang的可执行文件目录添加到系统的PATH环境变量中,使其全局可用:echo 'export PATH=$PATH:/usr/local/erlang/bin' >> /etc/profile && source /etc/profile

6. 执行版本验证命令,若终端显示Erlang/OTP 25.1等相关信息,即表明安装成功:erl -version

二、安装socat依赖工具

socat是一个功能强大的网络工具,RabbitMQ在启动过程中依赖它来处理网络连接和端口管理。若系统中缺失此工具,可能导致RabbitMQ服务启动失败,并出现AMQP协议端口(默认5672)无法正常监听的问题。

通过YUM包管理器可以便捷地安装socat:yum install -y socat

如果默认YUM源连接不畅,您可以手动下载对应CentOS 7版本的RPM包进行离线安装:

wget https://vault.centos.org/7.9.2009/os/x86_64/Packages/socat-1.7.3.2-2.el7.x86_64.rpm
rpm -ivh socat-1.7.3.2-2.el7.x86_64.rpm

三、安装RabbitMQ服务器软件

核心依赖环境准备就绪后,即可开始安装RabbitMQ服务端软件。主流安装方式有两种:RPM包安装和通用Unix包安装。RPM方式集成度高,便于服务管理;通用包方式则更为灵活,适合需要自定义安装路径的场景。

RPM包安装方式(推荐用于生产环境)
此方法通过官方提供的RPM仓库进行安装,能与系统服务管理工具(systemd)完美集成:

1. 下载指定版本的RabbitMQ Server RPM包:wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.10.7/rabbitmq-server-3.10.7-1.el7.noarch.rpm
2. 导入RabbitMQ团队的官方GPG签名密钥,以验证软件包完整性:rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
3. 使用YUM进行本地安装,YUM会自动处理可能的依赖关系:yum localinstall rabbitmq-server-3.10.7-1.el7.noarch.rpm -y

通用Unix包安装方式(替代方案)
此方法适合需要将软件安装到非标准目录的用户:

1. 下载通用Unix压缩包:wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.10.7/rabbitmq-server-generic-unix-3.10.7.tar.xz
2. 解压文件并将其移动至目标目录,例如/usr/local/:xz -d rabbitmq-server-generic-unix-3.10.7.tar.xz && tar -xvf rabbitmq-server-generic-unix-3.10.7.tar -C /usr/local/ && mv /usr/local/rabbitmq_server-3.10.7 /usr/local/rabbitmq
3. 将RabbitMQ的sbin目录添加到系统路径:echo 'export PATH=$PATH:/usr/local/rabbitmq/sbin' >> /etc/profile && source /etc/profile

四、启用Web管理插件与防火墙放行

安装完成后,RabbitMQ默认仅提供命令行管理工具。为了更直观地进行监控和管理,需要启用其Web管理控制台插件。同时,为确保外部服务能够正常连接,必须在CentOS 7自带的firewalld防火墙中开放相关端口。

1. 启用Management插件,该插件提供了基于HTTP的图形化管理界面:rabbitmq-plugins enable rabbitmq_management
2. 启动RabbitMQ服务:systemctl start rabbitmq-server
3. 将服务设置为开机自动启动:systemctl enable rabbitmq-server
4. 配置防火墙规则,开放以下两个核心端口:
- 5672端口:AMQP协议默认端口,应用程序通过此端口与RabbitMQ进行通信。
- 15672端口:HTTP管理界面端口,用于通过浏览器访问Web控制台。
执行放行命令:
firewall-cmd --permanent --add-port=5672/tcp
firewall-cmd --permanent --add-port=15672/tcp
5. 重新加载防火墙配置,使新增的规则立即生效:firewall-cmd --reload

五、创建管理员用户并禁用guest账户

完成上述步骤后,您已可通过浏览器访问服务器的15672端口。然而,默认的安全配置并不适用于生产环境。RabbitMQ初始化了一个名为“guest”的默认账户,但其仅限本地主机(localhost)访问。因此,必须创建新的管理账户并移除或禁用默认账户,这是保障消息队列服务安全的首要步骤。

1. 创建一个新的用户,例如用户名为“admin”,并设置一个强密码:rabbitmqctl add_user admin Admin@2026
2. 为该用户赋予“administrator”角色,此角色拥有所有管理权限:rabbitmqctl set_user_tags admin administrator
3. 授予该用户对默认虚拟主机“/”的配置、读写和管理全部权限:rabbitmqctl set_permissions -p / admin “.*” “.*” “.*”
4. 出于安全考虑,建议直接删除默认的guest用户:rabbitmqctl delete_user guest
5. 执行用户列表查询命令进行验证,确认admin用户角色正确,且guest用户已不存在:rabbitmqctl list_users

至此,一个具备基础安全防护、支持远程Web管理的RabbitMQ服务已在您的CentOS 7服务器上成功部署。您现在可以使用新创建的admin账户登录Web管理界面(https://服务器IP:15672),开始进行虚拟主机、交换机、队列的配置,并将其集成到您的应用程序中,实现高效、可靠的消息传递。

来源:https://www.php.cn/faq/2439342.html
免责声明: 游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

相关攻略

CentOS系统Nodejs错误处理与调试优化指南
编程语言
CentOS系统Nodejs错误处理与调试优化指南

在CentOS服务器上部署Node js应用时,错误处理是保障服务稳定性的核心环节。一套完善的错误处理机制能让应用坚如磐石,反之,一个未捕获的异常就可能导致服务中断。本文将系统性地为你解析,在CentOS生产环境中,如何构建一套健壮、高效的Node js应用错误处理方案。 全局错误处理:应用的最后一

热心网友
05.08
CentOS系统C++编译器安装与选择指南
编程语言
CentOS系统C++编译器安装与选择指南

在CentOS系统中进行C++项目开发,搭建稳定高效的编译环境是首要任务。面对GCC、Clang等不同编译器,开发者该如何做出合适的选择?安装后如何进行环境配置与功能验证?本文将为你提供一套完整的CentOS C++开发环境搭建指南,涵盖编译器选择、安装配置、版本管理及实战技巧。 一、 选择建议:找

热心网友
05.08
Linux系统deluser命令删除用户账户教程
编程语言
Linux系统deluser命令删除用户账户教程

在Linux系统中,deluser命令用于清理用户账户。操作前需备份数据以防丢失。常用命令包括删除用户及主目录、清理邮件池、从特定组移除用户或彻底删除所有关联文件。执行时需管理员权限,应仔细核对用户名避免误删。

热心网友
05.08
CentOS系统下C++编译错误的快速解决方法
编程语言
CentOS系统下C++编译错误的快速解决方法

在CentOS上进行C++开发时,编译错误可通过系统排查解决。首先仔细阅读编译器信息,定位文件和行号,检查语法、拼写及括号匹配。若错误晦涩,可搜索关键字段或简化代码以缩小范围。修复后重新编译验证,注意环境兼容性、依赖库版本及编译设置,多数问题能有效解决。

热心网友
05.08
CentOS系统C++开发环境搭建与配置详细教程
编程语言
CentOS系统C++开发环境搭建与配置详细教程

在CentOS上搭建C++开发环境,需先更新系统并安装核心开发工具组。随后安装CMake、Git、GDB及Valgrind等构建与调试工具。若需更高版本GCC,可通过SCL按需启用。根据项目需求,可配置环境变量以管理第三方库路径。最后通过简单程序验证环境配置成功。

热心网友
05.08

最新APP

宝宝过生日
宝宝过生日
应用辅助 04-07
台球世界
台球世界
体育竞技 04-07
解绳子
解绳子
休闲益智 04-07
骑兵冲突
骑兵冲突
棋牌策略 04-07
三国真龙传
三国真龙传
角色扮演 04-07

热门推荐

三国杀辛宪英觉醒阵容搭配与实战攻略
游戏攻略
三国杀辛宪英觉醒阵容搭配与实战攻略

以觉醒辛宪英为核心的“负面反击队”,通过贾诩为敌方附加负面状态,触发辛宪英与夏侯惇的强力反击。荀彧与夏侯氏则提供治疗与怒气支持,保障队伍持续作战。该阵容攻守兼备,在PVP与PVE中均有良好表现。

热心网友
05.08
云顶之弈S17救世主羁绊效果详解与阵容搭配指南
游戏攻略
云顶之弈S17救世主羁绊效果详解与阵容搭配指南

在云顶之弈S17赛季中,救世主羁绊是一套极具统治力的上分阵容。其机制直观高效,能为全队提供强大的增益效果,是当前版本中后期发力的热门选择。 救世主羁绊的效果层层递进,收益显著。激活2救世主时,全体友军获得20%攻击速度加成。凑齐4救世主后,攻速加成提升至40%,且每次攻击有25%概率造成双倍伤害。而

热心网友
05.08
绝区零普罗米娅角色培养全攻略
游戏攻略
绝区零普罗米娅角色培养全攻略

《绝区零》中,冰属性角色普罗米娅是异放体系核心,兼具站场输出与团队增伤能力。她能提升全队异放伤害并使其无视部分防御,操作直观易上手。其玩法围绕管理怪物异常状态与资源【霜刑】点展开,配队灵活,可根据不同队友调整输出逻辑。养成方面,专属音擎与关键影画能显著提升其输出上限。

热心网友
05.08
剑网3联名WECOUTURE高定外装上线盛装定格永恒时刻
游戏攻略
剑网3联名WECOUTURE高定外装上线盛装定格永恒时刻

华服的意义究竟是什么?它或许是盛典中令人惊艳的惊鸿一瞥,是镜头下定格的永恒记忆,更是对生活仪式感的极致追求。 然而,对于大多数侠士而言,华美服饰更深层的价值,在于它是一份献给自己的珍贵礼物——承载着对江湖的热爱与那份不曾磨灭的初心。以最郑重的方式,铭刻当下每一刻鲜活的体验,正是对武侠生活最赤诚的致敬

热心网友
05.08
范小勤成年后直播首秀在线人数破七万礼物刷屏
业界动态
范小勤成年后直播首秀在线人数破七万礼物刷屏

5月8日,“小马云”范小勤成年后首次直播的消息引发广泛关注。这位因外貌酷似马云而年少成名的年轻人,以全新形象亮相直播间,其人生轨迹堪称一部被网络流量深刻影响的现实缩影。 从一夜爆红到沉寂多年,再到如今重返公众视野,范小勤的经历完整呈现了早期网红生态的变迁。直播画面中,他烫染了卷发,形象气质与童年时期

热心网友
05.08