RabbitMQ安装教程(超详细)
创始人
2024-03-24 14:43:40
0

本教程是在centos8下试验的,其实linux系统的都差不多

RabbitMQ官方:Messaging that just works — RabbitMQ

RabbitMQ是开源AMQP实现,服务器端用Erlang语言编写,Python、Ruby、 NET、Java、JMS、c、PHP、action screcrive AMQP (高级消息队列协议)和高级消息队列协议是APP应用层协议的开放标准,是为面向消息的中间件而设计的。

消息中间件主要用于组件之间的解耦,其中消息的发送方不需要知道消息使用者的存在,反之亦然。 AMQP的主要特点是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性和安全性。

一、安装Erlang

1、RabbitMQ是用Erlang语言编写的,所以在安装RabbitMQ之前需要安装Erlang

2、在构建RabbitMQ环境的过程中,RabbitMQ和Erlang的版本要对应关系,官网上可以查看RabbitMQ和Erlang的版本问题:RabbitMQ Erlang Version Requirements — RabbitMQ

3、安装前,先设置Eralng的存储库

curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash

当出现 The repository is setup! You can now install packages即成功,存储库已设置,可以安装软件包了

4、执行安装Erlang

yum install erlang

5、安装Eralng完后,输入erl -v 查看版本是否安装成功 ,返回如下:

[root@cnetos8 ~]# erl -v
Erlang/OTP 25 [erts-13.1.1] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [jit:ns]Eshell V13.1.1  (abort with ^G)
1> 

二、安装RabbitMQ

1、设置存储库 (在库中提供脚本安装)

curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash

出现 The repository is setup! You can now install packages即成功

三、RabbitMQ 和 Erlang 添加yum 存储库

1、为了使用 Yum 存储库,必须在 /etc/yum.repos.d/ 目录下添加一个 .repo 文件(例如 rabbitmq.repo)。文件的内容在发行版之间会略有不同(例如 CentOS Stream 9、CentOS Stream 8 或 OpenSUSE)。

# In /etc/yum.repos.d/rabbitmq.repo##
## Zero dependency Erlang
##[rabbitmq_erlang]
name=rabbitmq_erlang
baseurl=https://packagecloud.io/rabbitmq/erlang/el/8/$basearch
repo_gpgcheck=1
gpgcheck=1
enabled=1
# PackageCloud's repository key and RabbitMQ package signing key
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkeyhttps://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300[rabbitmq_erlang-source]
name=rabbitmq_erlang-source
baseurl=https://packagecloud.io/rabbitmq/erlang/el/8/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
# PackageCloud's repository key and RabbitMQ package signing key
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkeyhttps://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300##
## RabbitMQ server
##[rabbitmq_server]
name=rabbitmq_server
baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/8/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
# PackageCloud's repository key and RabbitMQ package signing key
gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkeyhttps://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300[rabbitmq_server-source]
name=rabbitmq_server-source
baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/8/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

2、更新软件包数据

# yum update -y
yum -q makecache -y --disablerepo='*' --enablerepo='rabbitmq_erlang' --enablerepo='rabbitmq_server'

3、安装logrotate 依赖

yum install socat logrotate -y

4、最后安装 Eralng 和 RabbitMQ

yum install --repo rabbitmq_erlang --repo rabbitmq_server erlang rabbitmq-server -y

四、开启Rabbitmq-server 服务

1、开启Rabbitmq-server 服务

systemctl start rabbitmq-server

2、开启Rabbitmq-server 服务

systemctl start rabbitmq-server

 3、查看MQ进程

ps -ef | grep rabbitmq

4、查看mq占用的端口

lsof -i | grep rabbit
# 或者
netstat -tunlp | grep rabbitmq

五、网页管理控制台

1、启动应用

rabbitmq-plugins enable rabbitmq_management

默认账号 : guest,默认密码:guest

输入 https:{ip}:15672 访问(15672 是访问网页控制台)

当不能访问的时候,查看下防火墙是否开启、是否开放端口

 2、当登录的时候出现 User can only log in via localhost ,在服务端上,需要添加一个admin账号

 

#第一步:添加 admin 用户并设置密码
rabbitmqctl add_user admin 123456
#第二步:添加 admin 用户为administrator角色
rabbitmqctl set_user_tags admin  administrator
#第三步:设置 admin 用户的权限,指定允许访问的vhost以及write/read
rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
#第四步:查看vhost(/)允许哪些用户访问
rabbitmqctl list_permissions -p /
#第五步:查看用户列表
rabbitmqctl list_users

 就可以远程访问网页控制台了

 六、使用composer安装php-amqpblib扩展

以php语言为例子

1、使用composer安装php-amqpblib扩展

composer require php-amqplib/php-amqplib=^3.0

2、在composer.json文件中添加

"php-amqplib/php-amqplib": "^3.0"

到此,安装完成!

相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...