【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 相关术语,管理界面的基础操作以及编写第一个入门程序!✨✨✨

相关推荐
至天2 小时前
MacPorts 中安装高/低版本软件方式,以 RabbitMQ 为例
macos·rabbitmq·安装·降级·升级·macports·checksums
Huazzi.3 小时前
Linux(Ubuntu)命令大全——已分类整理,学习、查看更加方便直观!(2024年最新编制)
linux·学习·ubuntu
Algorithm15765 小时前
linux/ubuntu安装Prometheus&Grafana
linux·ubuntu·prometheus
龚建波6 小时前
记录:virt-manager配置Ubuntu arm虚拟机
linux·ubuntu·virt-manager
zhy295637 小时前
【UBUNTU 20】环境变量
linux·运维·ubuntu
Crime_man7 小时前
Ubuntu系统安装MySQL
mysql·ubuntu·adb
vvw&8 小时前
如何在 Ubuntu 22.04 上安装 JupyterLab 环境教程
linux·运维·服务器·ubuntu·jupyter·开源·python3.11
zengshitang5208 小时前
Intel-ECI之Codesys PLC + Ethercat 远端IO + Codesys IDE编程
linux·windows·ubuntu
freesky10 小时前
Ubuntu安装及删除httpd(Apache)
linux·运维·服务器·ubuntu·apache
Py办公羊大侠10 小时前
【SH】在Ubuntu Server 24中基于Python Web应用的Flask Web开发(实现POST请求)学习笔记
后端·python·ubuntu·flask·web·post