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安装成功。

相关推荐
Coder_Boy_1 天前
分布式系统核心技术完整梳理(含分库分表、分布式事务、熔断补偿)
jvm·分布式·spring·中间件
摇滚侠1 天前
Java 项目教程《黑马商城-MQ 篇》,分布式架构项目,从开发到部署
java·分布式·架构
蜜獾云1 天前
Kafka(4)-kafka生产环境规划部署
分布式·kafka
若水不如远方1 天前
分布式一致性协议(五):殊途同归 —— ZAB 协议与 ZooKeeper 架构
分布式·后端·zookeeper
星辰_mya1 天前
分布式锁:跨 JVM 的“工商局备案章”
jvm·分布式·面试
wanhengidc1 天前
服务器分布式存储的功能
运维·服务器·分布式
码云数智-大飞1 天前
分布式锁的三种实现方案:Redis、ZooKeeper与数据库的深度对比与选型指南
数据库·redis·分布式
xUxIAOrUIII1 天前
【Kafka】快速入门
分布式·kafka
Coder_Boy_1 天前
分布式系统“三高”与数据一致性核心实践(基于实操梳理)
java·jvm·spring boot·分布式·微服务·性能优化
SoleMotive.1 天前
rabbitmq消息堆积怎么处理?
分布式·rabbitmq