基于CentOS Stream 9平台搭建RabbitMQ3.13.4以及开机自启

1. erlang与RabbitMQ对应版本参考:https://www.rabbitmq.com/which-erlang.html


2. 安装erlang

官网:https://www.erlang.org/downloads

GitHub: https://github.com/rabbitmq/erlang-rpm/releases


2.1 安装依赖:

powershell 复制代码
yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget gtk2-devel binutils-devel socat kernel-devel glibc-devel m4 xz 

2.2 指定目录下载

powershell 复制代码
cd /usr/local/
wget https://github.com/erlang/otp/releases/download/OTP-26.2.5.1/otp_src_26.2.5.1.tar.gz

2.3 解压

powershell 复制代码
 tar -zxvf otp_src_26.2.5.1.tar.gz

2.4 创建erlang安装目录

powershell 复制代码
mkdir erlang

2.5 切换目录

powershell 复制代码
cd otp_src_26.2.5.1/

2.6 配置安装路径

powershell 复制代码
./configure --prefix=/usr/local/erlang

2.7 安装

powershell 复制代码
make install

2.8 查看一下是否安装成功

powershell 复制代码
ll /usr/local/erlang/bin

2.9 添加环境变量

powershell 复制代码
echo 'export PATH=$PATH:/usr/local/erlang/bin' >> /etc/profile

2.10 刷新环境变量

powershell 复制代码
source /etc/profile

2.11 测试进入erl

powershell 复制代码
erl

2.12 退出

powershell 复制代码
halt().

3. 安装RabbitMQ

官网: https://rabbitmq.com/

GitHub: https://github.com/rabbitmq/rabbitmq-server/releases


3.1 下载

powershell 复制代码
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.13.4/rabbitmq-server-generic-unix-3.13.4.tar.xz

3.2 安装xz

powershell 复制代码
yum install -y xz

3.3 第一次解压

powershell 复制代码
/bin/xz -d rabbitmq-server-generic-unix-3.13.4.tar.xz

3.4 第二次解压

powershell 复制代码
tar -xvf rabbitmq-server-generic-unix-3.13.4.tar

3.5 重命名

powershell 复制代码
mv rabbitmq_server-3.13.4 rabbitmq

3.6 配置环境变量

powershell 复制代码
echo 'export PATH=$PATH:/usr/local/rabbitmq/sbin' >> /etc/profile

3.7 刷新环境变量

powershell 复制代码
source /etc/profile

3.8 创建配置目录

powershell 复制代码
mkdir /etc/rabbitmq

3.9 开启web插件

powershell 复制代码
cd /usr/local/rabbitmq/sbin
rabbitmq-plugins enable rabbitmq_management

3.10 相关命令:启动、停止、状态

powershell 复制代码
rabbitmq-server -detached
rabbitmqctl stop
rabbitmqctl status

3.11 开放需要的端口

rabbitmq的

powershell 复制代码
firewall-cmd --add-port=15672/tcp --permanent   
firewall-cmd --add-port=5672/tcp --permanent
firewall-cmd --add-port=9876/tcp --permanent
firewall-cmd --add-port=10909/tcp --permanent
firewall-cmd --add-port=10911/tcp --permanent

Erlang的

powershell 复制代码
firewall-cmd --add-port=4369/tcp --permanent
firewall-cmd --reload

查看开放端口列表

powershell 复制代码
firewall-cmd --permanent --list-port

访问:http://127.0.0.1:15672/

默认账号密码:guest guest(这个账号只允许本机访问)

3.12 设置用户

查看所有用户

powershell 复制代码
rabbitmqctl list_users

添加一个用户

powershell 复制代码
rabbitmqctl add_user coisini 123456

配置权限

powershell 复制代码
rabbitmqctl set_permissions -p "/" coisini ".*" ".*" ".*"

查看用户权限

powershell 复制代码
rabbitmqctl list_user_permissions coisini

设置tag

powershell 复制代码
rabbitmqctl set_user_tags coisini administrator

删除用户(出于安全考虑,删除默认用户)

powershell 复制代码
rabbitmqctl delete_user guest

访问:http://127.0.0.1:15672/


4. 开机自启

创建软连接(一般存在了)

powershell 复制代码
ln -s /usr/local/erlang/sbin/erl /usr/bin/erl

4.1 编辑服务文件

powershell 复制代码
vi /lib/systemd/system/rabbitmq.service

4.2 添加以下内容:

powershell 复制代码
# 启动顺序与依赖关系
[Unit]
# 描述信息,表明这个服务是 rabbitmq
Description=rabbitmq
# 指定服务在 network.target(网络初始化) 和 syslog.target(系统日志服务)之后启动
After=network.target syslog.target
# 启动行为
[Service]
# 以通知机制的方式启动
Type=notify
# 指定以 root 用户、root 用户组 身份运行服务
User=root
Group=root
# 设置服务的工作目录
WorkingDirectory=/usr/local/rabbitmq
# 服务启动命令路径
ExecStart=/usr/local/rabbitmq/sbin/rabbitmq-server
# 服务停止命令路径
ExecStop=/usr/local/rabbitmq/sbin/rabbitmqctl shutdown
# 当服务异常退出自动重启
Restart=on-failure
# 服务启用私有的 /tmp 目录,确保服务的临时文件与其他服务隔离
PrivateTmp=true
# 设置重启服务之前等待的秒数为 10 秒
RestartSec=10
# 定义服务成功退出的状态码
SuccessExitStatus=69

# 表示如何安装配置文件。
[Install]
# 多用户命令行模式
WantedBy=multi-user.target

4.3 重新加载systemctl脚本

powershell 复制代码
systemctl daemon-reload

4.4 开启开机自启

powershell 复制代码
systemctl enable rabbitmq

4.5 重启验证:

powershell 复制代码
reboot

感谢阅览,暂时记录到这,结束。

相关推荐
model20051 天前
Alibaba linux 3安装LAMP(6)
linux·运维·服务器
MUTA️1 天前
使用ImageZMQ将本地摄像头画面传输到服务器
运维·服务器
wjykp1 天前
1.vmware虚拟机安装和配置os
linux·运维·服务器
Henry Zhu1231 天前
VPP中的DPDK插件源码详解第一篇:DPDK插件的作用和意义以及整体架构
运维·服务器·网络·计算机网络·云原生
Better Bench1 天前
Ubuntu aarch64 (arm64)架构开发板的Linux系统安装拼音输入法
linux·ubuntu·arm64·aarch64·拼音输入法
测试人社区-千羽1 天前
智能测试的终极形态:从自动化到自主化的范式变革
运维·人工智能·python·opencv·测试工具·自动化·开源软件
秋刀鱼 ..1 天前
2026年机器人感知与智能控制国际学术会议(RPIC 2026)
运维·人工智能·科技·金融·机器人·自动化
roman_日积跬步-终至千里1 天前
【源码分析】StarRocks 跨集群数据迁移工具 - 基于快照进行的快速迁移
运维
koddnty1 天前
在c++中使用HOOK修改sleep函数
linux·c++
Jovin Giogic1 天前
简明教程:记录 Ubuntu系统命令行安装TexLive,配置vscode
linux·vscode·ubuntu·latex·texlive