RabbbitMQ篇(环境搭建 - 下载 安装)(持续更新迭代)

目录

一、Windows

1. 下载安装程序

2. 安装配置erlang

3. 安装rabbitMQ

4. 验证

二、Linux

1. 下载rpm包

1.1. 下载Erlang的rpm包

1.2. 下载socat的rpm包

1.3. 下载RabbitMQ的rpm包

2. 安装

2.1. 安装Erlang

2.2. 安装socat

2.3. 安装RabbitMQ

3. 启动RabbitMQ服务

4. RabbitMQWeb管理界面及授权操作

5. 卸载

6. 管理界面

三、Mac

1. brew 命令安装Mac安装 RabbitMQ

2. Mac 后台启动 RabbitMQ

3. Rabbit 用户操作

4. 下载 RabbitMQ 源文件安装 RabbitMQ

四、Docker

1. 单机部署

1.1. 下载镜像

1.2. 安装MQ


一、Windows

1. 下载安装程序

rabbitMQ安装程序下载路径:https://www.rabbitmq.com/install-windows.html

拉到页面中间找到如下点击:

erlang环境安装程序下载路径:Downloads - Erlang/OTP

2. 安装配置erlang

点击刚才下载的otp_win64_23.0.exe。如果对于安装路径没有特殊要求的话,就一路next直至安装成功即可,默

认安装路径为:C:\Program Files\erl-23.0。

接下来配置环境变量,常规操作,新建系统变量-键入变量名ERLANG_HOME,键入变量值:erlang安装路径。

如下图:

然后添加系统path路径中,添加 : %ERLANG_HOME%\bin

然后打开cmd,输入erl,看到我们的erlang版本号,就说明安装成功了

3. 安装rabbitMQ

双击我们刚才下载的rabbitmq-server-3.8.5程序,next,install即可,此处需要注意,如果要自定义安装路径的

话,路径中最好不要存在中文,会出现错误

安装完成之后,需要我们激活rabbitmq_management

打开cmd,进到sbin目录下,运行命令

rabbitmq-plugins enable rabbitmq_management

执行成功之后会看到如下图:三个插件被启动

4. 验证

上面的命令执行成功之后,我们就可以通过http://localhost:15672来访问web端的管理界面

初始可以通过用户名:guest 密码guest来登录。

这就说明我们安装成功了。

分享几条命令:

net start RabbitMQ  启动
net stop RabbitMQ  停止
rabbitmqctl status  查看状态

二、Linux

1. 下载rpm包

1.1. 下载Erlang的rpm包

RabbitMQ是采用 Erlang语言开发的,所以系统环境必须提供 Erlang环境,因此首先需要是安装 Erlang 注:

Erlang环境一定要与RabbitMQ版本匹配:

Erlang下载地址:(根据自身需求及匹配关系,下载对应rpm包)

https://www.rabbitmq.com/releases/erlang/

1.2. 下载socat的rpm包

rabbitmq安装依赖于socat,所以也需要下载socat

socat下载地址:http://repo.iotti.biz/CentOS/7/x86_64/socat-1.7.3.2-5.el7.lux.x86_64.rpm

1.3. 下载RabbitMQ的rpm包

RabbitMQ下载地址:(注意:不要忘记和Erlang版本匹配)

https://www.rabbitmq.com/download.html

最终:我们就回发现上面的三个rpm包下载成功了:

下载好之后,我们就可以在虚拟机中进行安装并启动RabbitMQ了:

2. 安装

2.1. 安装Erlang

首先将下载好的文件上传到虚拟机服务器,创建一个文件夹用来存放该Erlang文件

mkdir -p /usr/rabbitmq

然后切换到/usr/rabbitmq目录,解压安装erlang

# 解压
解压命令:rpm -Uvh erlang-23.2.7-2.el7.x86_64.rpm

# 安装
安装命令:yum install -y erlang

安装完成后输入如下指令查看版本号:

查看版本号命令:erl -v

2.2. 安装socat

注意:在安装rabbitmq之前需要先安装socat,否则,报错。

同理先把socat的rpm安装包上传到虚拟机服务器对应的rabbitmq目录下:

解压socat的rpm安装包:

# 解压
解压命令:rpm -Uvh socat-1.7.3.2-1.el6.lux.x86_64.rpm

# 解压完之后,安装即可
安装命令:yum install -y socat

2.3. 安装RabbitMQ

上面的两个安装好之后,就可以解压PabbitMQ的rpm安装包进行解压安装了:

# 解压命令: 
rpm -Uvh rpm -ivh rabbitmq-server-3.8.1-1.el7.noarch.rpm

# 安装命令:yum install -y rabbitmq-server

3. 启动RabbitMQ服务

也就是说上面的三个全部安装完成之后,那么我们就可以启动RabbitMQ服务了:

# 启动rabbitmq
命令:systemctl start rabbitmq-server
# 查看rabbitmq状态
命令:systemctl status rabbitmq-server

注意:再使用启动rabbitmq命令的时候,要先通过命令把防火墙给关闭,不关闭的话输入启动rabbitmq命令会出

现霸屏的问题。

关闭防火墙命令:systemctl stop firewalld.service

关闭之后就可以输入启动rabbitmq和查看rabbitmq状态的命令了:

显示active则表示服务安装并启动成功

其他命令:

# 设置rabbitmq服务开机自启动
systemctl enable rabbitmq-server

# 关闭rabbitmq服务
systemctl stop rabbitmq-server

# 重启rabbitmq服务
systemctl restart rabbitmq-server

4. RabbitMQWeb管理界面及授权操作

默认情况下,rabbitmq没有安装web端的客户端软件,需要安装才可以生效

# 打开RabbitMQWeb管理界面插件命令:
rabbitmq-plugins enable rabbitmq_management

然后我们打开浏览器,访问服务器公网ip:15672(注意打开阿里云安全组以及防火墙的15672端口,我们刚才

上面已经通过命令关闭防火墙了),就可以看到管理界面 :

访问格式:虚拟机ip:15672/

输入默认账号密码: guest , guest,guest用户默认不允许远程连接。

还可以自定义账户和密码:

增加自定义账号

添加管理员账号密码:rabbitmqctl add_user admin admin

分配账号角色:rabbitmqctl set_user_tags admin administrator

修改密码:rabbitmqctl change_password admin 密码

查看用户列表:rabbitmqctl list_users

使用新账号登录,成功登录界面

管理界面标签页介绍:

overview:概览

  • connections:无论生产者还是消费者,都需要与RabbitMQ建立连接后才可以完成消息的生产和消费,在这里可以查看连接情况
  • channels:通道,建立连接后,会形成通道,消息的投递获取依赖通道。
  • Exchanges:交换机,用来实现消息的路由
  • Queues:队列,即消息队列,消息存放在队列中,等待消费,消费后被移除队列。

端口:

  • 5672:rabbitMq的编程语言客户端连接端口
  • 15672:rabbitMq管理界面端口
  • 25672:rabbitMq集群的端口

5. 卸载

rpm -qa | grep rabbitmq
rpm -e rabbitmq-server

6. 管理界面

添加用户

如果不使用guest,我们也可以自己创建一个用户:

创建Virtual Hosts

设置权限

三、Mac

一般来说,安装分为两种方式:

  1. 下载 RabbitMQ 源文件,解压源文件之后进行安装。
  2. 通过 brew 命令安装。在这里,推荐使用 brew 来安装,非常强大的 Mac 端包管理工具。

1. brew 命令安装Mac安装 RabbitMQ

1、安装 erlang

# 终端输入
 
brew install erlang

2、安装 rabbitmq

# 终端输入
 
brew install rabbitmq

3、配置 RabbitMQ 环境变量

# 终端输入
 
vi ~/.bash_profile
复制

#添加配置 终端输入

vim ~/.bash_profile

export RABBIT_HOME=/usr/local/Cellar/rabbitmq/3.12.12
export PATH=$PATH:$RABBIT_HOME/sbin

#更新配置 终端输入

source ~/.bash_profile

4、安装 RabiitMQ 的可视化监控插件

# 终端输入
 
sudo sbin/rabbitmq-plugins enable rabbitmq_management

2. Mac 后台启动 RabbitMQ

1、后台启动

# 终端输入
 
sudo rabbitmq-server -detached 

2、查看状态

# 终端输入
sudo rabbitmqctl status

3、访问可视化监控插件的界面

# 浏览器内输入
http://localhost:15672

默认的用户名密码都是 guest,登录后可以在 Admin 那一列菜单内添加自己的用户


4、后台关闭

# 终端输入
rabbitmqctl stop

3. Rabbit 用户操作

1、添加 Rabbit用户

# 用户角色权限:

超级管理员(administrator):可登陆管理控制台,可查看所有的信息,并且可以对用户,策略(policy)进行操

作。

监控者(monitoring):可登陆管理控制台,同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,

磁盘使用情况等)

策略制定者(policymaker):可登陆管理控制台, 同时可以对policy进行管理。但无法查看节点的相关信息(上图

红框标识的部分)。

普通管理者(management):仅可登陆管理控制台,无法看到节点信息,也无法对策略进行管理。

其他:无法登陆管理控制台,通常就是普通的生产者和消费者。

2、创建 Virtual Hosts

3、选中 Admin 用户设置权限

4. 下载 RabbitMQ 源文件安装 RabbitMQ

下载地址Generic Binary Build ("Generic UNIX Build") — RabbitMQ

备用下载地址:备用下载地址

文件目录下,分别执行以下命令 ※注意分别执行

xz -d rabbitmq-server-generic-unix-3.12.12.tar.xz
tar xvf rabbitmq-server-generic-unix-3.12.12.tar -C /home/esaas/rabbitmq

执行以下命令编辑 rabbitmq.env.conf

vim etc/rabbitmq/rabbitmq.env.conf 

加入以下配置。将目录替换为自己的目录。并在rabbitmq_server-3.12.12 下创建data目录

#node name
NODENAME=rabbit
#data dir
MNESIA_BASE=/你的目录/rabbitmq_server-3.12.12/data

编辑配置文件rabbitmq.conf

vim etc/rabbitmq/rabbitmq.conf 

加入以下配置。将目录替换为自己的目录。并在rabbitmq_server-3.12.12 下创建logs目录

#listen port
listeners.tcp.default = 5672
#log dir
log.dir =/你的目录/rabbitmq_server-3.12.12/logs
#open remote request
loopback_users = none

配置环境变量

sudo vim /etc/profile

加入以下内容

export RABBIT_MQ=/home/esaas/rabbitmq/rabbitmq_server-3.12.12
export PATH=$PATH:$RABBIT_MQ/sbin

使环境变量生效

source /etc/profile

安装后和以上相同操作,运行RabbitMQ

四、Docker

1. 单机部署

我们在Centos7虚拟机中使用Docker来安装。

1.1. 下载镜像

方式一:在线拉取

docker pull rabbitmq:3-management

方式二:从本地加载

上传到虚拟机中后,使用命令加载镜像即可:

docker load -i mq.tar

1.2. 安装MQ

执行下面的命令来运行MQ容器:

docker run \
 -e RABBITMQ_DEFAULT_USER=ylh \
 -e RABBITMQ_DEFAULT_PASS=20020630 \
 --name mq \
 --hostname mq1 \
 -p 15672:15672 \
 -p 5672:5672 \
 -d \
 rabbitmq:3-management

访问15672端口http://192.168.205.128:15672

输入账号密码就能进入RabbitMQ的首页

挂载数据据

docker run \
 -e RABBITMQ_DEFAULT_USER=wclass \
 -e RABBITMQ_DEFAULT_PASS=wclass \
 -v mq-plugins:/plugins \
 --name mq \
 --hostname mq1 \
 -p 15672:15672 \
 -p 5672:5672 \
 -d \
 rabbitmq:3-management

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

小程序原生-利用setData()对不同类型的数据进行增删改

1. 声明和绑定数据 wxml文件 <view> {{school}} </view> <view>{{obj.name}}</view> <view id"{{id}}" > 绑定属性值 </view> <checkbox checked"{{isChecked}}"/> <!--算数运算--> <view>{{ id …

数理统计(第1章第2节:一些常用的抽样分布)

目录 统计量的概率分布称为“抽样分布” 1. 正态母体的子样平均数的抽样分布 正态分布 2. 卡方分布 3. t分布 4. F分布 5. 例题 6. 总结 统计量的概率分布称为“抽样分布” 1. 正态母体的子样平均数的抽样分布 正态分布 若随机变量X的概率密度为&#xff1a; 则称X服…

Qt开发技巧(九)去掉切换按钮,直接传样式文件,字体设置,QImage超强,巧用Qt的全局对象,信号槽断连,低量数据就用sqlite

继续讲一些Qt开发中的技巧操作&#xff1a; 1.去掉切换按钮 QTabWidget选项卡有个自动生成按钮切换选项卡的机制&#xff0c;有时候不想看到这个烦人的切换按钮&#xff0c;可以设置usesScrollButtons为假&#xff0c;其实QTabWidget的usesScrollButtons属性最终是应用到QTabWi…

重学SpringBoot3-集成Redis(三)之注解缓存策略设置

更多SpringBoot3内容请关注我的专栏&#xff1a;《SpringBoot3》 期待您的点赞&#x1f44d;收藏⭐评论✍ 重学SpringBoot3-集成Redis&#xff08;三&#xff09;之注解缓存策略设置 1. 引入 Redis 依赖2. 配置 RedisCacheManager 及自定义过期策略2.1 示例代码&#xff1a;自定…

Vue - 路由用法

前端路由就是URL中的hash与组件之间的对应关系。Vue Router是Vue的官方路由。 组成&#xff1a; VueRouter&#xff1a;路由器类&#xff0c;根据路由请求在路由视图中动态渲染选中的组件。<router-link>&#xff1a;请求链接组件&#xff0c;浏览器会解析成<a>。…

【易上手快捷开发新框架技术】nicegui组件button用法庖丁解牛深度解读源代码IDE运行和调试通过截图为证

传奇开心果微博文系列 前言一、button 组件基本用法1. 最基本用法示例2. 创建带图标按钮 二、button按钮组件样式定制1. 按钮的尺寸调整2. 改变颜色示例3. 按钮的自定义字体大小4. 圆角形状示例5. 自定义边框6. 添加阴影7. 复合按钮8. 浮动按钮9. 可扩展浮动操作按钮QFAB10. 按…

【MAUI】CommunityToolkit社区工具包介绍

一、为什么需要声明式开发 .NET的MVVM,始于WPF,很古典,它甚至可能是现代前端框架“声明式开发”的鼻祖。声明式开发,之所以出现,是因为命令式开发在UI层和代码层上无法解耦的问题。如下图所示: 1、命令式开发:后台代码需要调用UI层的控件(label.Text),如果更新UI层…

Bellman-Ford算法和SPFA算法

Bellman-Ford算法 能够处理存在负边权的情况。 算法时间复杂度:O(n*m)&#xff0c;n是顶点数&#xff0c;m是边数。 算法实现: 设s为起点&#xff0c;dis[v]即为s到v的最短距离&#xff0c;pre[v]为v前驱。w[j]是边j的长度&#xff0c;且j连接u、v。 dis[s] 0;dis[v] 0x3…

4款专业电脑数据恢复软件,帮你保障数据安全。

电脑里面会出现的数据丢失场景有很多&#xff0c;像硬盘故障、回收站清空、电脑格式化、系统崩溃、病毒入侵等等&#xff1b;如果发现数据丢失后&#xff0c;建议应停止使用电脑&#xff0c;避免新的数据写入覆盖丢失的数据。然后再尝试进行数据找回&#xff0c;如果想自己进行…

UGUI(六大UI根基组件)

Rect Transform 各种参数 是显示pos还是width/height 还是left/top/right/bottom之类巴拉巴拉&#xff0c;各种混合的展示baby&#xff0c;都是看anchor的设置 pivot的设置影响具体数值 至于blueprint mode &#xff0c;就是用了之后框框不变&#xff0c;who wanna do thi…

从WIFI到NB-IoT,探秘智能门锁的高科技接入方式

我是小米,一个喜欢分享技术的29岁程序员。如果你喜欢我的文章,欢迎关注我的微信公众号“软件求生”,获取更多技术干货! Hello大家好!我是小米,一个29岁、活力满满、热爱分享技术的小米!今天,我想和大家聊聊一个与智能家居密切相关的技术话题——智能门锁的接入方式。无…

哪个编程工具让你的工作效率翻倍?

文章目录 哪个编程工具让你的工作效率翻倍&#xff1f;1. 编辑器与 IDE&#xff1a;高效编码的基础1.1 Visual Studio Code提升效率的关键功能&#xff1a; 1.2 JetBrains 系列 IDE提升效率的关键功能&#xff1a; 1.3 Vim提升效率的关键功能&#xff1a; 2. 版本控制工具&…

使用Java调用OpenAI API并解析响应:详细教程

使用Java调用OpenAI API并解析响应&#xff1a;详细教程 在现代应用程序中&#xff0c;API调用是一个非常常见的任务。本文将通过一个完整的示例&#xff0c;讲解如何使用Java调用OpenAI的ChatGPT API&#xff0c;并通过ObjectMapper处理JSON响应。本文的示例不仅适用于OpenAI…

习题5 循环

选择题 1、如下程序的运行结果为 【 正确答案: B】。 A.9 B.8 C.7 D.6 2、C语言的for语句中的表达式可以部分或全部省略&#xff0c;但两个 【 正确答案: C】不能省略。 但当三个表达式均省略后&#xff0c;因缺少判断条件&#xff0…

翔云 OCR:发票识别与验真

在数字化时代&#xff0c;高效处理大量文档和数据成为企业和个人的迫切需求。翔云 OCR 作为一款强大的光学字符识别工具&#xff0c;在发票识别及验真方面表现出色&#xff0c;为我们带来了极大的便利。 一、翔云 OCR 简介 翔云 OCR 是一款基于先进的人工智能技术开发的文字识别…

第十一章 缓存之更新/穿透/雪崩/击穿

目录 一、什么是缓存 二、缓存更新策略 2.1. 缓存主动更新策略 2.1.1. Cache Aside模式&#xff08;主流&#xff09;‌ 2.1.2. Read/Write Through模式‌ 2.1‌.3. Write Behind模式‌ 2.1.4. 总结 三、缓存穿透 四、缓存雪崩 五、缓存击穿 5.1. 互斥锁实现 5.1.1…

【从0开始搭建微服务并进行部署】SpringBoot+dubbo+zookeeper

文章目录 说明环境搭建创建项目父模块设置子模块 dubbo-api子模块 dubbo-provider子模块 dubbo-consumer测试项目 docker部署项目完整项目地址 说明 jdk1.8SpringBoot2.x低版本dubbo&#xff1a;请查看之前教程【微服务】SpringBootDubboZooKeeper 实战 关于本教程将采用jdk1…

Windows应急响应-Auto病毒

文章目录 应急背景分析样本开启监控感染病毒查看监控分析病毒行为1.autorun.inf分析2.异常连接3.进程排查4.启动项排查 查杀1.先删掉autorun.inf文件2.使用xuetr杀掉进程3.启动项删除重启排查入侵排查正常流程 应急背景 运维人员准备通过windows共享文档方式为公司员工下发软件…

新版IDEA中Git的使用(四)——解决冲突

说明&#xff1a;之前介绍过新版IDEA中Git的基础操作、分支操作和回滚代码&#xff0c;本文介绍基于新版IDEA&#xff0c;如何解决代码冲突。 避免冲突 解决冲突的最好方法就是不要发生冲突&#xff0c;这里我介绍下面几点&#xff0c;可以避免代码冲突&#xff1b; 时常做pu…

C语言:预编译过程的剖析

目录 一.预定义符号和#define定义常量 二.#define定义宏 三.宏和函数的对比 四、#和##运算符 五、条件编译 在之前&#xff0c;我们已经介绍了.c文件在运行的过程图解&#xff0c;大的方面要经过两个方面。 一、翻译环境 1.预处理&#xff08;预编译&#xff09; 2.编译 3…