跳转到主内容
极星编程网:以代码为星,赴技术山海!

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

RabbitMQ安装需依次完成Erlang环境(如OTP-25.1)、socat工具、RabbitMQ服务(RPM或通用包)、启用management插件并开放5672/15672端口、创建admin用户并禁用guest账户。

一、安装Erlang运行时环境

RabbitMQ基于Erlang语言开发,必须先安装兼容版本的Erlang。不同RabbitMQ版本对Erlang有严格版本要求,例如RabbitMQ 3.10.x需Erlang 25.x,RabbitMQ 3.9.x推荐Erlang 23.x或24.x。使用不匹配版本将导致服务无法启动。

1、执行命令安装基础编译依赖:

yum install -y gcc gcc-c++ make kernel-devel m4 ncurses-devel openssl-devel unixODBC-devel

2、下载Erlang源码包(以OTP-25.1为例):

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、配置安装路径并编译:

./configure --prefix=/usr/local/erlang && make && make install

5、配置系统环境变量:

echo 'export PATH=$PATH:/usr/local/erlang/bin' >> /etc/profile && source /etc/profile

6、验证安装:

erl -version,成功将输出Erlang/OTP版本信息。

二、安装socat依赖工具

socat是RabbitMQ服务启动所必需的系统级工具,用于端口转发和网络连接管理。若缺失,systemd启动时会报错“Failed to start RabbitMQ broker”,且无法正常监听AMQP端口。

1、直接通过YUM安装:

yum install -y socat

2、若因仓库不可达失败,可手动下载RPM包:

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

3、本地安装RPM:

rpm -ivh socat-1.7.3.2-2.el7.x86_64.rpm

三、安装RabbitMQ服务器软件

支持两种主流安装方式:RPM包安装(适合快速部署)与通用Unix包安装(适合自定义路径及高版本需求)。两种方式均需确保Erlang已就绪且socat可用。

1、RPM方式(推荐):

wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.10.7/rabbitmq-server-3.10.7-1.el7.noarch.rpm

2、导入官方签名密钥:

rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc

3、执行本地安装:

yum localinstall rabbitmq-server-3.10.7-1.el7.noarch.rpm -y

4、通用包方式(替代方案):

wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.10.7/rabbitmq-server-generic-unix-3.10.7.tar.xz PHP建站宝(Centos 64位_ Apache)

PHP建站宝(Centos 64位_ Apache)

下载

5、解压并迁移至标准路径:

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

6、配置通用包环境变量:

echo 'export PATH=$PATH:/usr/local/rabbitmq/sbin' >> /etc/profile && source /etc/profile

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

RabbitMQ默认不启用HTTP管理界面,需手动启用插件;同时CentOS 7默认启用firewalld,必须显式开放对应端口,否则浏览器无法访问15672管理页面。

1、启用management插件:

rabbitmq-plugins enable rabbitmq_management

2、启动RabbitMQ服务:

systemctl start rabbitmq-server

3、设置开机自启:

systemctl enable rabbitmq-server

4、开放AMQP核心端口:

firewall-cmd --permanent --add-port=5672/tcp

5、开放Web管理端口:

firewall-cmd --permanent --add-port=15672/tcp

6、重载防火墙规则:

firewall-cmd --reload

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

默认guest/guest账户仅限localhost访问,生产环境必须创建远程可登录的管理员账户,并禁用默认账户以符合安全基线要求。未执行此步骤将导致远程无法登录管理界面。

1、添加新管理员用户:

rabbitmqctl add_user admin Admin@2026

2、赋予管理员角色:

rabbitmqctl set_user_tags admin administrator

3、授权访问默认vhost:

rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"

4、禁用guest用户远程访问能力:

rabbitmqctl delete_user guest

5、验证用户列表:

rabbitmqctl list_users,确认admin显示tag为[administrator]。

相关文章