如何在 Linux 上部署 RabbitMQ

如何在 Linux 上部署 RabbitMQ

文章目录

  • 如何在 Linux 上部署 RabbitMQ
    • 安装 Erlang
      • 从预构建的二进制包安装
      • 从源代码编译 Erlang
    • RabbitMQ 的安装
    • 使用 RabbitMQ Assistant 连接

RabbitMQ Assistant 是一款优秀的RabbitMQ 可视化管理工具,提供丰富的管理功能。下载地址:https://www.redisant.cn/rta


RabbitMQ 是由 Erlang 语言编写的,也正因如此,在安装 RabbitMQ 之前需要安装 Erlang 。建议采用较新版的 Erlang ,这样可以获得较多更新和改进,可以到官网下载。

安装 Erlang

从预构建的二进制包安装

大多数操作系统包管理器都提供预构建的二进制包。

  • 对于 macOS 上的 Homebrew:brew install erlang
  • 对于 macOS 上的 MacPorts:port install erlang
  • 对于 Ubuntu 和 Debian: apt-get install erlang
  • 对于 Fedora: yum install erlang
  • 对于 ArchLinux 和 Manjaro: pacman -S erlang
  • 对于 FreeBSD:pkg install erlang

操作系统提供的软件包往往不包含最新版本的 Erlang。因此下面我们将采用从源码安装的方式。

从源代码编译 Erlang

首先从Github下载源代码:https://github.com/erlang/otp/releases 。这里我将安装的版本为:26.1.2,下载的文件名为:otp_src_26.1.2.tar.gz

下载后放到合适的目录,然后解压并配置安装目录:

$ tar zxvf otp_src_26.1.2.tar.gz
$ cd otp_src_26.1.2
$ ./configure --prefix=/opt/erlang

如果出现类似关键报错信息:No curses library functions found。那么此时需要安装 ncurses,安装步骤(遇到提示输入 y 后直接回车即可)如下:

$ apt-get -y install libncurses5-dev

如果还有错误,根据错误说明,安装以下依赖:

# Install the build tools (dpkg-dev g++ gcc libc6-dev make)  
$ apt-get -y install build-essential

# Automatic configure script builder (debianutils m4 perl)  
$ apt-get -y install autoconf

# Needed for HiPE (native code) support, but already installed by autoconf  
$ apt-get -y install m4

# Needed for terminal handling (libc-dev libncurses5 libtinfo-dev libtinfo5 ncurses-bin)  
$ apt-get -y install libncurses5-dev

# For building ssl (libssh-4 libssl-dev zlib1g-dev)  
$ apt-get -y install libssh-dev

# ODBC support (libltdl3-dev odbcinst1debian2 unixodbc)  
$ apt-get -y install unixodbc-dev

安装 Erlang:

$ make
$ make install

修改/etc/profile配置文件,添加下面的环境变量:

ERLANG_HOME=/opt/erlang
export PATH=$PATH:$ERLANG_HOME/bin
export ERLANG_HOME

最后执行如下命令让配置文件生效:

$ source /etc/profile

可以输入 er1 命令来验证 Erlang 是否安装成功,如果出现类似以下的提示即表示安装成功:

$ erl
Erlang/OTP 19 [erts-8.1] [source] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false]

Eshell V8.1 (abort with ^G)
1>

RabbitMQ 的安装

RabbitMQ 的安装比 Erlang 的安装要简单,直接将下载的安装包解压到相应的目录下即可,在官网下载。这里选择将 RabbitMQ 安装到与 Erlang 同一个目录(/opt)下面:

$ tar -xf rabbitmq-server-generic-unix-3.12.8.tar.xz -C /opt
$ cd /opt

同样修改/etc/profile 文件,添加下面的环境变量:

export PATH=$PATH:/opt/rabbitmq_server-3.12.8/sbin
export RABBITMQ_HOME=/opt/rabbitmq_server-3.12.8

之后执行 source /etc/profile 命令让配置文件生效。

在修改了 /etc/profile 配置文件之后,可以任意打开一个 Shell 窗口,输入如下命令以运行 RabbitMQ 服务:

$ rabbitmq-server -detached

rabbitmq-server 命令后面添加一个 -detached 参数是为了能够让 RabbitMQ 服务以守护进程的方式在后台运行,这样就不会因为当前 Shell 窗口的关闭而影响服务。

可以运行 rabbitmqctl status 命令查看 RabbitMQ 是否正常启动。

使用 RabbitMQ Assistant 连接

RabbitMQ Assistant 是一款优秀的RabbitMQ 可视化管理工具,提供丰富的管理功能。下载地址:https://www.redisant.cn/rta

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

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

相关文章

【python】OpenCV—Rectangle, Circle, Selective Search(1.2)

文章目录 1 画框画圈1.1 画矩形框1.2 画圆 / 点1.3 椭圆 2 Selective Search3 Resize 1 画框画圈 1.1 画矩形框 # Copy the image img_rgb_copy img_rgb.copy()# Draw a rectangle cv2.rectangle(img_rgb_copy, pt1 (405, 90), pt2 (740, 510),color (255, 0, 0), thickne…

hash路由模式

hash模式 hash模式是一种把前端路由的路径用井号 # 拼接在浏览器 URL 后面的模式。 一个完整的 URL 包括:协议、域名、端口、虚拟目录、文件名、参数、锚。 https://www.wangyuegyq.top/utils/index.html?name123&phone123#home协议:https域名&am…

关于400G光模块的常见问题解答

最近在后台收到了很多用户咨询关于400G光模块的信息,那400G光模块作为当下主流的光模块类型,有哪些问题是备受关注的呢?下面来看看小易的详细解答! 1、什么是400G QSFP-DD光模块? 答:400G光模块是指传输速…

《011.SpringBoot之餐厅点餐系统》

《011.SpringBoot之餐厅点餐系统》【界面简洁功能简单】 项目简介 需要源码及数据库的私信… [1]本系统涉及到的技术主要如下: 推荐环境配置:DEA jdk1.8 Maven MySQL 前后端分离; 后台:SpringBootMybatisPlus; 前台:Layuivue; …

如何批量在文件名中加标点符号?

如何批量在文件名中加标点符号?标点符号在文件名中的作用通常是用来分隔不同部分的内容,或者用来表示特定的含义。例如,下划线"_" 可以用来连接文件名的不同部分,使得文件名更易于阅读和理解。另外,使用连字…

苏宁API:一键搜索,海量商品任你选!

使用苏宁API按关键字搜索商品,可以在API的搜索参数中设置关键字。 例如,在搜索商品时,可以在API的请求参数中设置q关键字。例如,要搜索“鞋子”,可以将q设置为“鞋子”。 另外,还可以设置其他的搜索参数&…

九、Nacos集群搭建

Nacos集群搭建 1.集群结构图 官方给出的Nacos集群图: 其中包含3个nacos节点,然后一个负载均衡器代理3个Nacos。这里负载均衡器可以使用nginx。 我们计划的集群结构: 三个nacos节点的地址: 节点ipportnacos1192.168.150.18845n…

八、Nacos配置管理(统一配置管理、配置热更新、配置共享)

目录 一、新增配置 二、配置的获取 三、配置自动刷新 3、实现配置的热更新 方式一:在controller上添加注解,并重启服务 方式二:使用configuration注解 四、多环境配置共享 五、多环境配置优先级 一、新增配置 配置创建成功 二、配置的…

所有社区工作者!能救一个是一个

救命啊,这东西我怎么早不知道呢! 社区人到年底了各种要写的东西很烦啊!突然看到这个,真的救我大命了啊! 谁懂啊?!!平时写个东西起码两三天,试了一下这东西!…

CDR最新CorelDRAWX8安装步骤教程

CorelDRAW Graphics Suite非凡的设计能力广泛地应用于商标设计、标志制作、模型绘制、插图描画、排版及分色输出等等诸多领域。作为一个强大的绘图软件,它被喜爱的程度可用事实说明:用作商业设计和美术设计的PC机几乎都安装了 。CorelDRAW让您轻松应对创…

LeetCode(22)N 字形变换【数组/字符串】【中等】

目录 1.题目2.答案3.提交结果截图 链接: N 字形变换 1.题目 将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 "PAYPALISHIRING" 行数为 3 时,排列如下: P A …

硬链接和软链接的区别

硬链接: 硬链接指向计数器,计数器指向原始文件,计数器标记使用的链接的数量 软链接: 软链接是指向硬链接的链接,软链接是绝对地址,软链接也叫符号链接;软链接创建后计数器的值不会变&#xff…

sqli-labs(Less-4) extractvalue闯关

extractvalue() - Xpath类型函数 1. 确认注入点如何闭合的方式 2. 爆出当前数据库的库名 http://127.0.0.1/sqlilabs/Less-4/?id1") and extractvalue(1,concat(~,(select database()))) --3. 爆出当前数据库的表名 http://127.0.0.1/sqlilabs/Less-4/?id1") …

一言成文大模型:大模型实践落地之路

百度CEO,李彦宏指出、深度学习技术,大语言模型具备了理解、生成、逻辑、记忆等人工智能的核心基础能力,为通用人工智能带来曙光。 元宇宙_一言成文大模型 一言成文大模型:大模型实践落地之路

【用unity实现100个游戏之15】开发一个类保卫萝卜的Unity2D塔防游戏2(附项目源码)

文章目录 先看本次实现的最终效果前言敌人生命值扣血测试,敌人死亡控制敌人动画敌人死亡动画敌人转向问题源码完结 先看本次实现的最终效果 前言 本期紧接着上一篇,主要内容是实现本期主要内容是实现敌人血条、动画和行为逻辑。 敌人生命值 绘制血条U…

15 万奖金!开放原子开源大赛OpenAnolis 赛题@你报名

8 月 29 日,2023 开源和信息消费大赛新闻发布会在北京召开,首届“开放原子开源大赛”正式启动报名。大赛由工业和信息化部、江苏省人民政府、湖南省人民政府共同主办,开源赛道拟由开放原子开源基金会、央视网、江苏省工业和信息化厅、无锡市人…

掌握这个技巧,你也能成为资产管理高手!

资产管理是企业管理中至关重要的一环,涉及到对公司财务、物资和信息等各个方面的有效监控和管理。 随着企业规模的扩大和业务复杂性的增加,采用先进的资产管理系统成为确保企业高效运营的必要条件之一。 客户案例 医疗机构 温州某医疗机构拥有大量的医…

超越传统:明懿金汇定义现代金融服务

量化交易的新纪元:明懿金汇引领创新浪潮 在数字化时代的飞速发展下,明懿金汇凭借其独特的跟单平台和卓越的金融服务,成为互联网金融行业的佼佼者。自2020年起,公司重点投资于互联网金融行业,并通过与国内知名证券软件开…

xxl-job配置须知

执行器也有自己的一个接口等 配置xxl-job YAML xxl:job:admin:addresses: http://localhost:8080/xxl-job-admin/executor:appname: media-process-serviceaddress:ip:port: 9999logpath: /data/applogs/xxl-job/jobhandlerlogretentiondays: 30accessToken: default_token--…

java面试常问

文章目录 java 基础1、JDK 和 JRE的区别2、 和equals的区别3、String、StringBuffer、StringBuilder4、String str “a”、 new String(“a”)一样吗?5、ArrayList 和 LinkedList的区别?6、HashMap的原理与实现6.1、容量与扩容6.2、扩容机制 7、HashMa…