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

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

3.13


2. 安装erlang

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

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


2.1 安装依赖:

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 指定目录下载

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 解压

 tar -zxvf otp_src_26.2.5.1.tar.gz

2.4 创建erlang安装目录

mkdir erlang

2.5 切换目录

cd otp_src_26.2.5.1/

2.6 配置安装路径

./configure --prefix=/usr/local/erlang

2.7 安装

make install

2.8 查看一下是否安装成功

ll /usr/local/erlang/bin

2.9 添加环境变量

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

2.10 刷新环境变量

source /etc/profile

2.11 测试进入erl

erl

2.12 退出

halt().

3. 安装RabbitMQ

官网: https://rabbitmq.com/

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

3.13.4


3.1 下载

wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.13.4/rabbitmq-server-generic-unix-3.13.4.tar.xz

3.2 安装xz

yum install -y xz

3.3 第一次解压

/bin/xz -d rabbitmq-server-generic-unix-3.13.4.tar.xz

3.4 第二次解压

tar -xvf rabbitmq-server-generic-unix-3.13.4.tar

3.5 重命名

mv rabbitmq_server-3.13.4 rabbitmq

3.6 配置环境变量

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

3.7 刷新环境变量

source /etc/profile

3.8 创建配置目录

mkdir /etc/rabbitmq

3.9 开启web插件

cd /usr/local/rabbitmq/sbin
rabbitmq-plugins enable rabbitmq_management

sbdn


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

rabbitmq-server -detached
rabbitmqctl stop
rabbitmqctl status

3.11 开放需要的端口

rabbitmq的

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的

firewall-cmd --add-port=4369/tcp --permanent
firewall-cmd --reload

查看开放端口列表

firewall-cmd --permanent --list-port

访问:http://127.0.0.1:15672/

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

3.12 设置用户

查看所有用户

rabbitmqctl list_users

添加一个用户

rabbitmqctl add_user coisini 123456

配置权限

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

查看用户权限

rabbitmqctl list_user_permissions coisini

设置tag

rabbitmqctl set_user_tags coisini administrator

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

rabbitmqctl delete_user guest

访问:http://127.0.0.1:15672/
启动


4. 开机自启

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

ln -s /usr/local/erlang/sbin/erl /usr/bin/erl

4.1 编辑服务文件

vi /lib/systemd/system/rabbitmq.service

4.2 添加以下内容:

# 启动顺序与依赖关系
[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脚本

systemctl daemon-reload

4.4 开启开机自启

systemctl enable rabbitmq

4.5 重启验证:

reboot

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/42309.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Nginx实战:nginx性能压测(ab)

在nginx的生产实践中,不管是服务上线,还是性能优化,都会遇到需要对nginx的性能压测,本文介绍一个简单的压测工具:ab命令 ab(Apache Bench)是一个常用的HTTP压力测试工具,可以用来测试Nginx的性能和压力。ab命令可以指定并发请求数、请求数、请求类型等参数,并输出测试…

显示近期用户登录情况的命令last

显示近期用户登录情况的命令last There is no nutrition in the blog content. After reading it, you will not only suffer from malnutrition, but also impotence. The blog content is all parallel goods. Those who are worried about being cheated should leave quick…

Spring Boot中集成DJL运行Python PyTorch模型:MNIST实战

Java Spring Boot 使用DJL 部署python训练的PyTorch模型(MNIST) Python 训练Pytorch模型Java Spring Boot使用DJL调用模型 pom.xml TranslatorCriteriaNDArray 创建NDArray(Tensor) 变更数据类型运算切片赋值翻转 PredictorMNIST实战 环境 Java 使用 …

算法力扣刷题总结篇 ——【四】

前言 栈和队列篇题目学习结束。 总结: 一、结构基础 stack类 (1)使用栈(后入先出)的结构时,用它。 (2)容器适配器(container adaptor)。本身不算容器&…

550kg级大载重长航时无人机直升机技术详解

550kg级大载重长航时无人机直升机,作为一种高性能的无人机系统,具备了多项先进的技术特点,以满足高海拔、高寒等复杂环境下的应用需求。这些无人机直升机通常具备高载重、长航时、强适应性、高可靠性和良好的任务拓展性。 设备由无人直升机平…

【面试八股文】java基础知识

引言 本文是java面试时的一些常见知识点总结归纳和一些拓展,笔者在学习这些内容时,特地整理记录下来,以供大家学习共勉。 一、数据类型 1.1 为什么要设计封装类,Integer和int区别是什么? 使用封装类的目的 对象化:…

数据结构——单链表专题

前言 本篇我们继续来介绍数据结构的知识——链表,这与顺序表是一个类别的知识,同样也非常重要,所以大家需要掌握好链表的内容,这对我们后面数据结构的学习也很重要,如果你对本篇的内容感兴趣,希望大佬可以…

使用RabbitMQ实现可靠的消息传递机制

使用RabbitMQ实现可靠的消息传递机制 大家好,我是微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 1. RabbitMQ简介 RabbitMQ是一个开源的消息代理软件,实现了高级消息队列协议(AMQP&…

四大常见的排序算法JAVA

1. 冒泡排序 相邻的元素两两比较,大的放右边,小的放左边 第一轮比较完毕之后,最大值就已经确定,第二轮可以少循环一次,后面以此类推 如果数组中有n个数据,总共我们只要执行n-1轮的代码就可以 package Bu…

mq虚拟主机实现数据隔离

如果一个mq系统需要被多个实际业务系统共用,那么我们需要对于不同的业务系统分设不同的虚拟机进行数据隔离 本文将主要演示如何使用mq的web端进行创建不同虚拟机完成数据隔离 首先我们需要针对新的业务系统创建一个专属的用户,并赋予admin权限&#xf…

【matlab】状态空间模型与传递函数模型的建立与转换

目录 SISO系统 MIMO系统 状态空间模型 状态空间模型到传递函数模型的转换 传递函数模型到状态空间模型的转换 (1) 转换函数ss() (2) 规范形转换函数canon() (3) 常微分方程(传递函数)转换为状态空间模型函数dif2ss() 状态空间模型的变换 特征值、特征向量与广义特征向量的计算…

everything高级搜索-cnblog

everything高级搜索用法 基础4选项验证 总结搜索方式 高级搜索搜指定路径文件名: 文件名 路径不含文件名: !文件名包含单词 路径包含指定内容: 路径 content:内容 大小写 区分大小写搜索搜指定路径文件名: case:文件名 路径全字匹配 全字搜指定路径文件名: wholewo…

力扣刷题--908. 最小差值 I【简单】

题目描述 给你一个整数数组 nums&#xff0c;和一个整数 k 。 在一个操作中&#xff0c;您可以选择 0 < i < nums.length 的任何索引 i 。将 nums[i] 改为 nums[i] x &#xff0c;其中 x 是一个范围为 [-k, k] 的整数。对于每个索引 i &#xff0c;最多 只能 应用 一次…

中霖教育:二级建造师未注册还需要继续教育吗?

关键词&#xff1a;中霖教育怎么样&#xff0c;中霖教育口碑 如果通过了二级建造师考试但是没有注册&#xff0c;还用继续教育吗? 1. 未注册的二级建造师 二级建造师在其证书获取后三年内没有进行注册时&#xff0c;在申请初始注册之前必须完成规定的本专业继续教育课程。 …

ubuntu运行qq音乐闪退

ubuntu运行qq音乐闪退 修改/usr/share/applications中的qqmusic.desktop&#xff0c;在Exec后加上 --no-sandbox,如下图所示&#xff1a; 该文件有可能是只读&#xff0c;权限不够的话用sudo vim qqmusic.desktop

java项目的一些功能(完善登录功能、注册接口参数校验、完善分页查询、完善日期格式、更新文章分类和添加文章分类的分组校验、自定义校验、文件上传 )

目录 完善登录功能 注册接口参数校验 完善分页查询 完善日期格式 更新文章分类和添加文章分类的分组校验 ​编辑 自定义校验 文件上传 完善登录功能 对前端传过来的明文密码进行md5加密处理 password DigestUtils.md5DigestAsHex(password.getBytes()); 这样既可 注…

Python数据分析案例50——基于EEMD-LSTM的石油价格预测

案例背景 很久没更新时间序列预测有关的东西了。 之前写了很多CNN-LSTM&#xff0c;GRU-attention&#xff0c;这种神经网络之内的不同模型的缝合&#xff0c;现在写一个模态分解算法和神经网络的缝合。 虽然eemd-lstm已经在学术界被做烂了&#xff0c;但是还是很多新手小白或…

驾校管理系统的全面革新与升级

智慧驾校系统是一款专为现代驾校量身定制的综合性管理平台,它深度融合了云计算、大数据、物联网及人工智能等前沿技术,旨在为驾校打造一个高效、智能、便捷的运营生态系统。该系统通过数字化、信息化的手段,彻底革新了传统驾校的管理模式,不仅极大地提升了驾校的运营效率,…

Open3D 点云CPD算法配准(粗配准)

目录 一、概述 二、代码实现 2.1关键函数 2.2完整代码 三、实现效果 3.1原始点云 3.2配准后点云 一、概述 在Open3D中&#xff0c;CPD&#xff08;Coherent Point Drift&#xff0c;一致性点漂移&#xff09;算法是一种经典的点云配准方法&#xff0c;适用于无序点云的非…

ECMAScript 6 新特性上篇

一、什么是ECMAScript ECMAScript(简写为ES)是一种基于标准化的脚本语言,用于在Web浏览器中编写交互式和动态的网页。它是由Ecma国际组织(以前称为欧洲计算机制造商协会)定义和标准化的。ECMAScript定义了语法、类型、控制结构、内置对象等方面的规范,使得不同的浏览器和…