RabbitMQ安装记录

目录

步骤1:准备原材料

1-1、erlang语言软件包

1-2、RabbitMQ软件包

步骤2:通过FTP工具上传软件包并安装

2-1、准备基础依赖

2-2、源码包编译安装erlang语言

2-3、安装并启动rabbitmq组件

2-4、启用RabbitMQWeb管理插件

​编辑

2-5、由于guest用户仅支持本地登录管理后台,所以需要新建用户并授权与管理员角色

​编辑

2-6、后台启动rabbitmq

2-7、使用新创建的rabbit用户的账号密码登录管理后台,进行功能验证


消息中间件(MQ)在当今互联网应用中经常起着重要的作用。最近,我也在工作学习过程中有了接触的机会,在此,希望对整体的安装流程做一下记录,便于后续的学习回顾。

操作系统环境:CentOS7.3

安装方式:源码包安装

步骤1:准备原材料

1-1、erlang语言软件包

下载链接:https://www.erlang.org/patches/otp-20.1

1-2、RabbitMQ软件包

下载链接:

https://github.com/rabbitmq/rabbitmq-server/releases?expanded=true&page=16&q=3.7.7

步骤2:通过FTP工具上传软件包并安装

2-1、准备基础依赖
bash 复制代码
yum -y install ncurses-devel openssl gcc
2-2、源码包编译安装erlang语言

切换文件目录来到erlang的解压包目录并执行以下命令:

bash 复制代码
 cd otp_src_20.1

 ./configure --prefix=/usr/local/erlang210 --without-javac

这个地方,我遇到第1个报错问题,是基础依赖不足导致的:

bash 复制代码
configure: error: Perl is required to generate v2 to v1 mib converter script
configure: error: /bin/sh '/root/otp_src_20.1/lib/snmp/./configure' failed for snmp/.
configure: error: /bin/sh '/root/otp_src_20.1/lib/configure' failed for lib

解决方案:

bash 复制代码
yum -y install perl perl-devel
# 以下2条指令用于清除上一次安装造成的残留文件
make clean
rm -rf config.cache

重新执行以下命令:

bash 复制代码
 ./configure --prefix=/usr/local/erlang210 --without-javac

没有遇到其他报错后,执行以下2条命令:

bash 复制代码
 make -j 4
 make install

至此,就完成了对erlang语言的编译安装了。

验证erlang语言安装情况:

2-3、安装并启动rabbitmq组件

将rabbitmq的软件压缩包解压缩到指定的文件目录,设置环境变量,并切换到对应的目录下:

bash 复制代码
tar xf rabbitmq-server-generic-unix-3.7.7.tar
mv rabbitmq-server-3.7.7 /usr/local/rabbitmq
vim /etc/profile

配置环境变量:

到文件的末尾添加:

bash 复制代码
export PATH=$PATH:/usr/local/erlang210/bin

export PATH=$PATH:/usr/local/rabbitmq/sbin

使环境变量的配置马上生效:

bash 复制代码
source /etc/profile

查看已经开放的端口:

bash 复制代码
firewall-cmd --list-ports

开启端口:

bash 复制代码
firewall-cmd --zone=public --add-port=5672/tcp --permanent

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

重启防火墙:

bash 复制代码
firewall-cmd --reload
2-4、启用RabbitMQWeb管理插件
bash 复制代码
rabbitmq-plugins enable rabbitmq_management
2-5、由于guest用户仅支持本地登录管理后台,所以需要新建用户并授权与管理员角色
bash 复制代码
./rabbitmqctl add_user rabbit rabbit

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

./rabbitmqctl set_user_tags rabbit administrator
2-6、后台启动rabbitmq
bash 复制代码
./rabbitmq-server -detached

此处,在启动测试过程中,我又遇到一个报错问题,排查下来还是基础依赖未完整安装所导致的。

bash 复制代码
{error,{missing_dependencies,[crypto,ssl],
                                   [amqp10_client,cowboy,cowlib,rabbitmq_aws,
                                    rabbitmq_management,
                                    rabbitmq_management_agent,rabbitmq_shovel,
                                    rabbitmq_trust_store]}}

最终,我这边经过咨询AI并采用的解决方案命令如下:

bash 复制代码
yum -y install openssl-devel

重新执行启动测试命令后,不再遇到之前的报错问题,截图如下:

2-7、使用新创建的rabbit用户的账号密码登录管理后台,进行功能验证

成功完成登录,即表示rabbitmq安装成功。

相关推荐
ezreal_pan2 小时前
Kafka Docker 部署持久化避坑指南:解决重启后 Cluster ID 不匹配问题
分布式·docker·zookeeper·容器·kafka·devops
小张小张爱学习3 小时前
Kafka面试题
分布式·kafka
fengxin_rou5 小时前
RabbitMQ安装教程:windows本地安装和docker部署
java·分布式·后端·rabbitmq
星辰_mya5 小时前
分布式消息领域的“深水区”问题
分布式
juniperhan6 小时前
Flink 系列第20篇:Flink SQL 语法全解:从 DDL 到 DML,窗口、聚合、列转行一网打尽
大数据·数据仓库·分布式·sql·flink
小旭95276 小时前
分布式事务 Seata 详解 + 链路追踪 SkyWalking 实战
java·分布式·后端·信息可视化·skywalking
ElevenS_it1887 小时前
日志在哪里找?分布式环境下日志采集断裂的5个排查路径
运维·网络·分布式
Jackyzhe8 小时前
从零学习Kafka:生产者分区机制
分布式·学习·kafka
以为你知道啊8 小时前
mini-job极简分布式延迟任务队列 — 基于 Redis,支持 Cron 周期任务、异步协程和多执行器
redis·分布式·junit
Francek Chen8 小时前
【大数据存储与管理】NoSQL数据库:05 NoSQL的三大基石
大数据·数据库·分布式·nosql