【RabbitMQ】如何在 Ubuntu 安装 RabbitMQ

🥰🥰🥰来都来了,不妨点个关注叭!
👉博客主页:欢迎各位大佬!👈

文章目录

  • [1. 安装部署 Erlang 环境](#1. 安装部署 Erlang 环境)
    • [1.1 具体操作命令](#1.1 具体操作命令)
    • [1.2 如何检查 Erlang 环境是否安装好?](#1.2 如何检查 Erlang 环境是否安装好?)
    • [1.3 如何退出?](#1.3 如何退出?)
  • [2. 安装 RabbitMQ](#2. 安装 RabbitMQ)
    • [2.1 具体操作代命令](#2.1 具体操作代命令)
    • [2.2 查看日志排查问题](#2.2 查看日志排查问题)
  • [3. 安装RabbitMQ管理界面](#3. 安装RabbitMQ管理界面)
  • [4. 启动服务并访问](#4. 启动服务并访问)
    • [4.1 启动服务](#4.1 启动服务)
    • [4.2 通过 IP:port 访问界面](#4.2 通过 IP:port 访问界面)
    • [4.3 添加管理员用户](#4.3 添加管理员用户)
  • [5. 如何操作 RabbitMQ](#5. 如何操作 RabbitMQ)

上一期内容,我们对 RabbitMQ 有了一个初步的了解~ 接下来,我们进行 RabbitMQ 的安装!

特别说明

  • 关于环境的说明: RabbitMQ 通常运行在 Linux 环境下,本专栏均在 Linux 环境下运行 RabbitMQ,因此,本期内容介绍如何在 Ubuntu 安装 RabbitMQ!

  • 关于安装方式的说明: RabbitMQ 已经包含在标准的 Ubuntu 仓库中,但是,包含的版本通常比最新的 RabbitMQ 发行版本落后很多,可能提供的 RabbitMQ 版本已经不支持,RabbitMQ 团队制作了自己的软件包,并使用 Cloudsmith 进行分发,具体操作可以参考:

由于该种方法安装比较复杂,在学习 RabbitMQ 阶段,本期内容采取使用 Ubuntu 仓库中的版本来安装,已经足够在学习阶段使用啦!(即介绍非常简单的安装方式!)

1. 安装部署 Erlang 环境

RabbitMQ 是一套开源的消息队列服务软件,基于 Erlang 语言编写的,因此,在安装 RabbitMQ 之前,我们需要先部署 Erlang 环境,再安装 RabbitMQ 环境(就像运行 Java 程序,需要先安装 JDK~)

注意:采用 root 用户,前面可以不加 sudo,如果不是 root 用户,请加上 sudo

1.1 具体操作命令

  • 更新软件包sudo apt-get update
  • 安装erlangsudo apt-get install erlang

在安装过程中,需要输入 Y ,确认~

(这里有个小 tip:在安装软件之前,最好更新一下软件包,看因为可能有新的导入进来~)

安装过程图:可能所需要的时间会比较长,小伙伴们耐心等待哦!与服务器的网络等因素相关,不要着急~

在我们安装的时候,会进行一个提醒,以下哪些需要重启,我们不需要,按左上角 ------ Esc 键,即可退出

1.2 如何检查 Erlang 环境是否安装好?

安装Java,使用 java version 去查看是否安装好,同理,输入 erl,查看 Erlang 是否安装好:

出现这样一个界面,就说明 Erlang 已经安装好啦~

1.3 如何退出?

可以看到回车后,并没有进行返回!如何退出呢?

使用 halt(). 即可退出

(当然,还有一个比较粗暴的方式:Ctrl+C,一次不够来两次,两次不够来三次嘿嘿)

2. 安装 RabbitMQ

2.1 具体操作代命令

  • 更新软件包sudo apt-get update
  • 安装RabbitMQsudo apt-get install rabbitmq-server
  • 确认安装结果systemctl status rabbitmq-server

(可以不用更新软件包,因为上述安装 Erlang 环境,已经更新过啦,个人感觉不会更新得那么快捏hh)

通过这个命令 sudo apt-get install rabbitmq-server,安装 RabbitMQ:

在安装过程中,需要输入 Y ,确认~

同样会出现这个界面,继续按左上角 ------ Esc 键,即可退出

通过这个命令 systemctl status rabbitmq-server查看 RabbitMQ 的状态~看是否安装成功!

像这种就结束不了,可以用比较粗暴的方式:Ctrl+C,直接结束~

是不是感觉安装 RabbitMQ 这个方式,非常简单!!!(没错~)

2.2 查看日志排查问题

当然,有些小伙伴,可能会出现一些问题,可以通过查看日志的方式进行排查

1)在这个 /var/log/rabbitmq/ 目录下,切换到这个目录:cd /var/log/rabbitmq/

2)接着,输入 ll 命令

3)可以看到,RabbitMQ 的日志在这里:rabbitmq-server.log

小伙伴们如果遇到问题,可以通过如上操作,查看 RabbitMQ 日志进行查看问题~ 一些常见原因,比如:端口号冲突等

3. 安装RabbitMQ管理界面

默认是不安装管理界面的,RabbitMQ 官方提供了插件的方式进行安装管理界面

使用该命令 rabbitmq-plugins enable rabbitmq_management 以插件形式安装 RabbitMQ 管理界面~

4. 启动服务并访问

4.1 启动服务

如果我们的服务已经启动,此步可省略!

启动 RabbitMQ:sudo service rabbitmq-server start

查看服务状态:systemctl status rabbitmq-server(上述提到过)

上述过程,我们查看了 RabbitMQ 状态,是 active(running),说明服务是启动的,此步可以跳过~

(✨✨✨照顾那些没启动服务的小伙伴~)

4.2 通过 IP:port 访问界面

这里用你的 IP + 端口号访问,RabbitMQ 管理界面默认端口号是:15672

记得先添加安全组,开放端口哦~

这样就可以访问界面啦,如下:

默认的用户名和密码都是:guest

但是可以看到,我们并不能访问,如果要使用 guest 访问,则需要本机访问,才可以,因为从 RabbitMQ 3.3.0 开始,禁止使用 guest 权限通过 除了 localhost 外的访问(当然解除的方法也是有的,这里就介绍啦)

在这里,我们添加管理员用户,即可访问!

4.3 添加管理员用户

  1. 添加用户 admin,密码 adminrabbitmqctl add_user admin admin
    (# rabbitmqctl add_user {账号} {密码})
    其中,这个 rabbitmqctl ,RabbitMQ 客户端操作,相当于 MySQL 的客户端,通过命令行来操作~
  2. 给用户添加权限rabbitmqctl set_user_tags admin administrator
    (#rabbitmqctl set_user_tags {账号} {角色名称})

有以下角色可以选择

RabbitMQ 用户角色有六种,分为 Administrator、Monitoring、Policymaker、Management、

Impersonator、None

  • Administrator超级管理员 ,可登陆管理控制台(启用management plugin的情况下),可查看所
    有的信息,并且可以对用户,策略 (policy) 进行操作(简单理解就是所有权限);
  • Monitoring监控者 ,可登陆管理控制台(启用 management plugin的情况下),同时可以查看
    RabbitMQ 节点的相关信息(如进程数,内存使用情况,磁盘使用情况等);
  • Policymaker策略制定者 ,可登陆管理控制台(启用management plugin的情况下),同时可以对
    policy 进行管理,但无法查看节点的相关信息;
  • Management普通管理者 ,仅可登陆管理控制台(启用 management plugin的情况下),无法看到
    节点信息,也无法对策略进行管理;
  • Impersonator模拟者,无法登录管理控制台;
  • None其他用户,无法登陆管理控制台,通常就是普通的生产者和消费者。

用户名和密码输入 admin,即可进入 RabbitMQ 管理界面:

点击登录后,界面如下:


可以看到,这里的管理界面是十分友好的,易于操作~

5. 如何操作 RabbitMQ

从上面分析,可以看到,操作 RabbitMQ 有如下 3 种方式:

  • 通过代码来操作(通过 Java 代码,建立连接,默认端口号 5672)
  • 通过管理界面来操作(默认端口号:15672)
  • 通过命令行来操作(rabbitmqctl)

【A】如何查看默认端口号?

【Q】从 Overview 的 Ports and contexts 可以看到默认的端口号


✨✨✨本期内容到此结束~

✨✨✨下期预告:RabbitMQ 相关术语,管理界面的基础操作以及编写第一个入门程序!✨✨✨

相关推荐
biter008835 分钟前
ubuntu(28):ubuntu系统多版本conda和多版本cuda共存
linux·人工智能·ubuntu·conda
Hello.Reader2 小时前
在 Ubuntu 环境为 Elasticsearch 引入 `icu_tokenizer
ubuntu·elasticsearch·jenkins
电脑玩家粉色男孩4 小时前
2、Ubuntu 环境下安装RabbitMQ
linux·rabbitmq
龙仔7259 小时前
离线安装rabbitmq全流程
分布式·rabbitmq·ruby
foo1st14 小时前
JDK(Ubuntu 18.04.6 LTS)安装笔记
java·笔记·ubuntu
maotou52619 小时前
Ubuntu22学习记录
linux·ubuntu
放飞自我的Coder21 小时前
【win11 安装WSL2 详解一遍过!!】
linux·ubuntu
蜕变的土豆21 小时前
Ubuntu下软件运行常见异常退出问题汇总分析
linux·ubuntu
我是苏苏1 天前
消息中间件RabbitMQ-01:简要介绍及其Windows安装流程
分布式·rabbitmq
码熔burning1 天前
【MQ篇】初识RabbitMQ保证消息可靠性
java·分布式·rabbitmq·可靠性