EmmmuaCode EmmmuaCode
首页​
导航🚀​
  • 数据结构
  • 计算机网络
  • Java基础

    • JavaSE
    • JVM虚拟机
    • JUC并发编程
  • JavaWeb

    • Servlet
    • MVC
    • filter|listener
  • HTML
  • CSS
  • JavaScript
  • Vue
  • uni-app
  • Spring5
  • SpringMVC
  • SpringBoot2
  • SpringCloud
  • SpringSecurity
  • 搜索引擎

    • ElasticSearch
  • 消息队列

    • RabbitMQ
  • 服务器

    • Nginx🌐
  • 服务框架

    • Dubbo
  • Python基础
  • 数据分析
  • Hadoop
  • SQL 数据库

    • MySQL
  • NoSQL 数据库

    • NoSQL数据库概论
    • Redis
    • MongoDB
    • HBase
  • 框架

    • MyBatis
    • MyBatis-Plus
    • ShardingSphere
  • 部署

    • Linux
    • Docker
  • 管理

    • Maven
    • Git
  • 友情链接
  • 优秀博客文章
  • 索引

    • 分类
    • 标签
    • 归档
  • 其他

    • 关于
Github (opens new window)

wufan

海内存知己,天涯若比邻。
首页​
导航🚀​
  • 数据结构
  • 计算机网络
  • Java基础

    • JavaSE
    • JVM虚拟机
    • JUC并发编程
  • JavaWeb

    • Servlet
    • MVC
    • filter|listener
  • HTML
  • CSS
  • JavaScript
  • Vue
  • uni-app
  • Spring5
  • SpringMVC
  • SpringBoot2
  • SpringCloud
  • SpringSecurity
  • 搜索引擎

    • ElasticSearch
  • 消息队列

    • RabbitMQ
  • 服务器

    • Nginx🌐
  • 服务框架

    • Dubbo
  • Python基础
  • 数据分析
  • Hadoop
  • SQL 数据库

    • MySQL
  • NoSQL 数据库

    • NoSQL数据库概论
    • Redis
    • MongoDB
    • HBase
  • 框架

    • MyBatis
    • MyBatis-Plus
    • ShardingSphere
  • 部署

    • Linux
    • Docker
  • 管理

    • Maven
    • Git
  • 友情链接
  • 优秀博客文章
  • 索引

    • 分类
    • 标签
    • 归档
  • 其他

    • 关于
Github (opens new window)
  • 搜索引擎-ElasticSearch

    • ElasticSearch 概述
    • ElasticSearch 安装
    • ElasticSearch 基本操作
    • ElasticSearch 高级操作
    • ElasticSearch Java整合
    • ElasticSearch 集群搭建
    • ElasticSearch 进阶
    • ElasticSearch 分布式集群和路由计算
    • ElasticSearch 分片控制流程
    • ElasticSearch 分片操作原理
    • ElasticSearch 多种分析器
    • ElasticSearch 冲突问题处理
    • ElasticSearch 多框架集成
    • ElasticSearch 进阶优化
    • ElasticSearch 面试题
  • 消息队列-RabbitMQ

    • MQ的相关概念
    • RabbitMQ 介绍
    • RabbitMQ 安装
      • 环境
      • 下载
        • 下载RabbitMQ
        • 下载Erlang
      • 安装
        • 传输
        • 安装Erlang
        • 安装RabbitMQ
        • 启动
      • 管理界面及授权操作
      • Docker安装RabbitMQ
    • RabbitMQ 入门案例
    • RabbitMQ 消息应答与发布
    • RabbitMQ 交换机
    • RabbitMQ 死信队列
    • RabbitMQ 延迟队列
    • RabbitMQ 发布确认高级
    • RabbitMQ 其他知识点
  • 服务器-Nginx

    • Nginx 介绍
    • Nginx 安装
    • Nginx 基本使用
    • Nginx 核心配置文件
    • Nginx 基础配置实例
    • Nginx 静态资源部署
    • Nginx 静态资源访问
    • Nginx 反向代理
    • Nginx 负载均衡
    • Nginx 缓存集成
    • Nginx 部署与集群
    • Nginx 站点与认证
    • Nginx Lua学习
    • Nginx Lua扩展模块
  • 服务框架-Dubbo

    • Dubbo 概述
    • Dubbo 快速入门
    • Dubbo 高级特性
  • studynotes
  • middleware
  • RabbitMQ
wufan
2022-07-23
目录

RabbitMQ 安装

# RabbitMQ 安装

# 环境

Linux 的 CentOS 7.x 版本。

Xftp 传输安装包到 Linux。

Xshell 连接 Linux,进行解压安装。

# 下载

首先我们需要2个 rpm 安装包,分别是 RabbitMQ 安装包和 Erlang 环境安装包,后者提供环境给前者运行。

# 下载RabbitMQ

RabbitMQ最新版下载地址 (opens new window)

选择以 noarch.rpm 结尾的安装包

image

# 下载Erlang

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

Erlang 和 RabbitMQ 版本对照:点击跳转 (opens new window)

image

这里安装的是 3.8.8 版本的 RabbitMQ,需要的 Erlang 版本依然是21.3。

Erlang 21.3下载地址 (opens new window)

image

版本选择

CentOs 7.x 版本需要e17。

CentOs 8.x 版本需要e18。包括 Red Hat 8,modern Fedora 版本。

最终下载的两个安装包,如图:

image

# 安装

# 传输

将在 Windows 或 Mac 下载好的安装包传输到 Linux 中。

首先在 Linux 的 /usr/local 目录下创建一个文件夹 rabbitmq。请根据需求自定义路径

mkdir /usr/local/rabbitmq
1

利用 xftp 工具将两个 .rpm 文件传输到刚刚创建的文件夹里

image

# 安装Erlang

进入 /usr/local/rabbitmq 目录,解压安装 Erlang

cd /usr/local/rabbitmq
rpm -ivh erlang-21.3-1.el7.x86_64.rpm
1
2
[root@master rabbitmq]# rpm -ivh erlang-21.3-1.el7.x86_64.rpm
警告:erlang-21.3-1.el7.x86_64.rpm: 头V4 RSA/SHA1 Signature, 密钥 ID 6026dfca: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:erlang-21.3-1.el7                ################################# [100%]
1
2
3
4
5

安装完成后输入指令查看到版本号,代表成功

erl -v
1
[root@master rabbitmq]# erl -v
Erlang/OTP 21 [erts-10.3] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:1] [hipe]

Eshell V10.3  (abort with ^G)
1>
1
2
3
4
5

问题记录

如果安装 Erlang 过程出现了如下问题:

image

出现这个错误的主要原因是没有libcrypto.so.10(OPENSSL_1.0.2)(64bit)依赖,我们去下载一个就可以了

下载地址:libcrypto.so.10(OPENSSL_1.0.2)(64bit) (opens new window)

滑到最下面,下载最后一个

image

下载到本地后通过 Xftp 上传到 Linux 中,传输目录一致。接着使用命令安装

rpm -ivh openssl-libs-1.0.2k-19.el7.x86_64.rpm --force
1

安装好这个后,再次安装 Erlang 即可成功

image

# 安装RabbitMQ

在 RabiitMQ 安装过程中需要依赖 socat 插件,首先安装该插件

yum install socat -y
1

解压 RabbitMQ 安装包

rpm -ivh rabbitmq-server-3.8.8-1.el7.noarch.rpm
1
[root@master rabbitmq]# rpm -ivh rabbitmq-server-3.8.8-1.el7.noarch.rpm
警告:rabbitmq-server-3.8.8-1.el7.noarch.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID 6026dfca: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:rabbitmq-server-3.8.8-1.el7      ################################# [100%]
1
2
3
4
5

i 代表 install

vh 代表显示安装进度过程

# 启动

# 启动服务
systemctl start rabbitmq-server
# 查看服务状态
systemctl status rabbitmq-server
1
2
3
4

启动 RabbitMQ 服务后,查看该服务状态,显示绿色的 active 则表示服务安装并启动成功

image

其他指令:

# 开机自启动
systemctl enable rabbitmq-server
# 停止服务
systemctl stop rabbitmq-server
# 重启服务
systemctl restart rabbitmq-server
1
2
3
4
5
6

# 管理界面及授权操作

默认端口

RabbitMQ 的默认访问端口是 15672

如果 Linux 有防火墙,记得开放 15672 端口,否则 Windows 无法访问

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

rabbitmq-plugins enable rabbitmq_management
1

安装完毕以后,重启服务

systemctl restart rabbitmq-server
1

通过 http://ip:15672 访问,ip 为 Linux 的 ip。rabbitmq 有一个默认的账号密码 guest,但是登录该账号密码会出现权限问题

image

默认的账号密码仅限于本机 localhost 进行访问,所以需要添加一个远程登录的用户

# 创建账号和密码
rabbitmqctl add_user 用户名 密码

# 设置用户角色
rabbitmqctl set_user_tags 用户名 角色

# 为用户添加资源权限,添加配置、写、读权限
# set_permissions [-p <vhostpath>] <user> <conf> <write> <read>
rabbitmqctl set_permissions -p "/" y ".*" ".*" ".*"
// Make sure to add code blocks to your code group
1
2
3
4
5
6
7
8
9
10

角色固定有四种级别:

  • administrator:可以登录控制台、查看所有信息、并对rabbitmq进行管理
  • monToring:监控者;登录控制台,查看所有信息
  • policymaker:策略制定者;登录控制台指定策略
  • managment:普通管理员;登录控制

添加用户和权限后,再次访问 http://ip:15672 登录,输入添加好的用户名和密码,即可进入后台

image

其他指令:

# 修改密码
rabbitmqctl change_ password 用户名 新密码

# 删除用户
rabbitmqctl delete_user 用户名

# 查看用户清单
rabbitmqctl list_user
1
2
3
4
5
6
7
8

# Docker安装RabbitMQ

# 安装启动 rabbitmq 容器
docker run -d --name myRabbitMQ -e RABBITMQ_DEFAULT_USER=用户名 -e RABBITMQ_DEFAULT_PASS=密码 -p 15672:15672 -p 5672:5672 rabbitmq:3.8.14-management
1
2
#RabbitMQ
上次更新: 2024/04/21, 09:42:22
RabbitMQ 介绍
RabbitMQ 入门案例

← RabbitMQ 介绍 RabbitMQ 入门案例→

最近更新
01
微信支付功能的实现与流程
11-21
02
购物车与结算区域的深入优化与功能完善
11-21
03
购物车与结算区域的功能实现与优化
11-21
更多文章>
Theme by Vdoing | Copyright © 2023-2024 EmmmuaCode | 黔ICP备2022009864号-2
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式