基于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

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

相关推荐
EricWang135811 分钟前
[OS] 项目三-2-proc.c: exit(int status)
服务器·c语言·前端
成都古河云36 分钟前
智慧场馆:安全、节能与智能化管理的未来
大数据·运维·人工智能·安全·智慧城市
算法与编程之美38 分钟前
文件的写入与读取
linux·运维·服务器
xianwu5431 小时前
反向代理模块
linux·开发语言·网络·git
Amelio_Ming1 小时前
Permissions 0755 for ‘/etc/ssh/ssh_host_rsa_key‘ are too open.问题解决
linux·运维·ssh
心灵彼岸-诗和远方1 小时前
Devops业务价值流:软件研发最佳实践
运维·产品经理·devops
JuiceFS2 小时前
好未来:多云环境下基于 JuiceFS 建设低运维模型仓库
运维·云原生
Ven%2 小时前
centos查看硬盘资源使用情况命令大全
linux·运维·centos
JaneJiazhao2 小时前
HTTPSOK:SSL/TLS证书自动续期工具
服务器·网络协议·ssl
萨格拉斯救世主3 小时前
戴尔R930服务器增加 Intel X710-DA2双万兆光口含模块
运维·服务器