章节索引 :

Linux 环境下 RabbitMQ 的安装与基础服务命令实操

1. 前言

我们都知道,我们项目的部署离不开 Linux 服务器,如果我们不会在 Linux 服务器上使用 RabbitMQ ,那么我们自己就不会部署带有 RabbitMQ 的项目,所以,出于项目部署与当下主流环境考虑,本节会为大家介绍如何在 Linux 环境下,安装 Rabbit MQ 消息通信中间件,并通过一些基本的 RabbitMQ 基础 Linux 服务命令来为大家介绍,如何在 Linux 服务器上对 RabbitMQ 做一些基本必要的操作。

本节主要内容:

  • Linux 环境下 RabbitMQ 的安装步骤;

  • 安装成功与否的必要性测试;

  • RabbitMQ 基础 Linux 服务命令详解。

2. Linux 环境下 RabbitMQ 的安装

我们知道,如果我们想要在 Windows 环境下来安装 RabbitMQ ,需要我们首先安装 RabbitMQ 的依赖环境,即 erlang 语言支持环境,那么,在 Linux 环境下安装 RabbitMQ ,也需要我们首先来安装 erlang 语言支持环境。

Tips:
1. 本文所使用的 Linux 服务器版本为 CentOS 7 64 Bit 版本,请同学们务必和老师所使用的版本保持一致,否则可能因为 Linux 服务器版本问题而导致安装命令失效;
2. 出于操作简单考虑,本文使用基于 yum 源和 rpm 命令来完成各依赖的安装,如果同学们的 Linux 服务器上不支持这两个命令,请先自行完成这两个命令的安装。

2.1 在 Linux 环境下安装 erlang 语言支持库

在 Linux 环境下安装 erlang 语言支持库还是非常简单的,我们只需要通过以下几条命令即可完成安装:

第一步:初始化 erlang 资源库

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

第二步:安装 erlang 语言支持库

yum -y install erlang

运行该条命令,在等待片刻之后,我们即可完成 erlang 语言支持库的安装。

第三步:校验 erlang 是否安装成功

校验 erlang 是否安装成功,我们只需要在 Linux 服务器上输入一个 erlang 语言的关键字即可,如下所示:

erl

在输入 erl 关键字之后,我们会看到 erlang 语言的命令解释器,如下图所示:

当我们看到这个 erlang 语言命令解释器时,就说明我们的 erlang 语言支持库就已经安装成功了,接下来我们需要退出 erlang 语言命令解释器来安装 RabbitMQ ,退出命令如下所示:

halt().

退出 erlang 语言命令解释器后的界面如下图所示:

2.2 在 Linux 环境下安装 RabbitMQ 消息通信中间件

像安装 erlang 语言支持库那样,我们也需要几个步骤来安装 RabbitMQ 消息通信中间件。

第一步:RabbitMQ key 的导入

使用 rpm 的方式来安装 RabbitMQ 时,需要我们首先导入两个 key 到我们的 Linux服务器上,导入 key 的命令如下所示:

rpm --import https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
rpm --import https://packagecloud.io/gpg.key

第二步:初始化 RabbitMQ 资源库

在将这两个 kye 导入完成之后,我们需要初始化 RabbitMQ 的资源库,初始化命令如下所示:

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

第三步:RabbitMQ 的安装

在初始化完成 RabbitMQ 的资源库文件之后,我们需要将 RabbitMQ 官网的安装包下载下来,并放到我们的服务器中,我们可以直接在服务器中使用 wget 来下载对应的安装包,命令如下:

wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.5/rabbitmq-server-3.8.5-1.el7.noarch.rpm

等待安装包下载完成之后,我们就可以使用 rpm 命令来安装 RabbitMQ 了,安装命令如下所示:

rpm -ivh rabbitmq-server-3.8.5-1.el7.noarch.rpm

等待安装过程结束,我们就完成了 RabbitMQ 消息通信中间件的安装。

Tips: 1. erlang 语言支持库的版本和 RabbitMQ 消息通信中间件的版本一定要保持一致,即保持在一个版本范围之内,这样我们才能顺利安装 erlang 和 RabbitMQ ,如果这两个版本不符合要求,那我们的 erlang 和 RabbitMQ 就不能正常安装成功,这点需要同学们注意;
2. 如果我们在安装 RabbitMQ 的过程中,出现了 nokey 或 socat 依赖未找到错误时,表明我们的 Linux 服务器中缺少对应的 key 或 socat 依赖没有安装,这种错误我们只需要将缺少的 key 导入或安装 socat 依赖即可,命令如下:

导入可能缺少的 key
rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc

安装可能缺少的 socat 依赖
yum install -y epel-release
yum install -y socat

3. 安装成功与否的必要性测试

与 Windows 环境相同的是,检测 RabbitMQ 是否安装成功的方式,也是通过访问 RabbitMQ 的内置监控台来实现,如果我们可以正常访问 RabbitMQ 的内置监控台,就说明我们的 RabbitMQ 服务是安装成功且可用的。

与 Windows 环境不同的是,在经过上述安装过程之后,我们仅仅安装了 RabbitMQ 的 Server 服务,并没有安装 RabbitMQ 的内置监控台,所以,现在我们还不能访问 RabbitMQ 的内置监控台。

3.1 启用 RabbitMQ 内置监控台

在 Linux 环境中,RabbitMQ 消息通信中间件被拆分成了 Server 服务和客户端插件 Plugins 两部分内容,当我们安装好了 Server 服务之后,RabbitMQ 自带的一些 Plugins 也已经准备就绪了,其中,就包括 RabbitMQ 的内置监控台。所以,要想访问 RabbitMQ 内置监控台,我们只需要启动这一插件即可

在 Linux 环境中,启用 RabbitMQ 内置监控台命令如下:

rabbitmq-plugins enable rabbitmq_management

在启用了该插件之后,最后我们需要启动我们的 RabbitMQ 的 Server 服务,命令如下:

systemctl start rabbitmq-server

3.2 检查 RabbitMQ 是否安装成功

执行服务启动命令之后,Centos 7 下并不会打印任何启动日志,我们需要查询 RabbitMQ 服务的状态来确定 RabbitMQ 服务是否已经启动了,命令如下:

systemctl status rabbitmq-server

服务状态查询结果如下图所示:

当我们看到绿色字样的 running 单词时,表明我们的 RabbitMQ 服务已经正常启动了。

在 RabbitMQ Server 服务启动完成之后,我们就可以访问 RabbitMQ 的内置监控台了。当我们看到如下图所示效果时,就说明我们的 RabbitMQ 已经成功安装了:

4. RabbitMQ 基础 Linux 服务命令详解

在上述内容中,我们已经在 Linux 环境中安装好了 RabbitMQ 消息通信中间件,在安装过程中,涉及到了一些关于 RabbitMQ 的基础 Linux 命令,这些命令都表示什么意思呢,接下来让我们一探究竟。

基础 Linux 命令

命令:

systemctl [operation] [serviceName]

解释:

该命令是 Linux 中使用非常频繁的命令之一,表示对具体的服务进行一些操作,其中,systemctl 为固定格式,operation 表示操作的类型,目前可选的类型有:start restart stop status,分别表示:服务启动、服务重启、服务停止、服务状态。

serviceName 表示服务的具体名称,这里的服务名称并不是我们通常所说的名称,而是存在于 Linux 系统中的特定服务名称,比如 RabbitMQ 服务,他的服务名称并不是 rabbitmq ,而是 rabbitmq-server 。

该命令主要对 Linux 中的具体服务进行相应操作,目前可操作的类型有:启动服务、重启服务、停止服务、查看服务状态。

基础 RabbitMQ 命令

命令:

rabbitmq-plugins [operation] [pluginName]

解释:

该命令是 RabbitMQ 在 Linux 中独有的命令,其主要作用于 RabbitMQ 中的插件,其中,rabbitmq-plugins 为固定格式,operation 为操作的类型,目前可选的类型有:disable、enable,分别表示:禁用插件、启用插件;pluginName 表示 RabbitMQ 中插件的名称。

一般而言,我们使用 RabbitMQ 自带的插件就可以了,但是有些业务场景并不能很好地支撑,所以我们也可以自己安装一些第三方的 RabbitMQ 插件。

5. 小结

在本小节中,为大家介绍了在 Linux 环境下,安装 RabbitMQ 消息通信中间件的步骤。针对每个步骤中的每个过程都做了详细的介绍,针对在安装过程中容易出现问题的地方也做了相应的提示,在安装完成之后,针对在 Linux 环境下,常用的一些 Linux 命令和 RabbitMQ 命令都做了详细的介绍,旨在帮助同学们在 Linux 环境下安装 RabbitMQ 的过程中可以少踩一些坑。

RabbitMQ 简介
RabbitMQ 简介
RabbitMQ 基础
Win环境-SpringBoot集成MQ Mac OS环境下RabbitMQ的安装与集成 Linux环境下RabbitMQ安装与服务命令实操 RabbitMQ 核心基础概念详解 RabbitMQ 基础核心配置文件介绍 RabbitMQ 消息发送原理概述 RabbitMQ 消息发送模式详解 RabbitMQ 交换机详解 RabbitMQ 消息监控平台介绍
RabbitMQ 基础特性与进阶
RabbitMQ的幂等性概念 RabbitMQ中消息确认与返回机制 RabbitMQ中消费者ACK与重回队列机制 RabbitMQ中的TTL消息是什么 死信队列基础概念详解与配置
RabbitMQ 整合 Spring 生态链
RabbitAdmin基础概念详解与配置 RabbitTemplate基础概念详解与配置 消息容器介绍 消息适配器概念讲解与基本属性介绍 消息适配器应用实操 消息转换器概念讲解与基本属性介绍 消息转换器应用实操
RabbitMQ 集群基础
Warren模式与Shovel模式介绍 Mirror模式与Federation模式介绍 RabbitMQ集群配置文件概述 KeepAlived组件基础属性介绍 HaProxy组件基础属性介绍 RabbitMQ集群故障排查与恢复概述
RabbitMQ 实战
消息发送模式实战之直接模式与主题模式 消息发送模式实战之发布订阅模式 消息发送模式实战之普通队列模式与工作队列模式 使用RabbitMQ优化用户登录功能 使用RabbitMQ优化用户注册功能 RabbitMQ集成KeepAlived组件实操 RabbitMQ集群集成HaProxy组件实操 使用RabbitMQ打造扛得住的高并发环境(一) 使用RabbitMQ打造扛得住的高并发环境(二) 使用RabbitMQ打造扛得住的高并发环境(三)