如何在 Linux 上部署 RabbitMQ

news2024/11/23 12:16:52

如何在 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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

亚里士多德的思想统治西方世界,实体论证明人不是猪

苏格拉底、柏拉图、亚里士多德,并称古希腊三贤。 公元前384年,亚里士多德出生在马其顿的奴隶主家庭,父亲是马其顿国王腓力二世的宫廷御医。 公元前367年,亚里士多德迁居到雅典,进入柏拉图学园,跟随柏拉图…

systemverilog:interface中的modport用法

使用modport可以将interface中的信号分组并指定方向,方向是从modport连接的模块看过来的。简单示例如下: interface cnt_if (input bit clk);logic rstn;logic load_en;logic [3:0] load;logic [7:0] count;modport TEST (input clk, count,output rst…

知识解读:香港轻量云/云服务器/VPS性能差距解读

​  提起香港轻量云/云服务器/VPS 这三类,往往汇聚了中小企业和开发者等群体的讨论声音。当然,这跟它们本身产品定位有关,加上在初级配置这块价格上相差不大,也因此经常被拿来对比。 首先来简单了解一下最基础的区别&#xff1a…

C嘎嘎模板

> 作者简介:დ旧言~,目前大二,现在学习Java,c,c,Python等 > 座右铭:松树千年终是朽,槿花一日自为荣。 > 目标:了解什么是模板,并且能熟练运用函数模…

力扣160:相交链表

力扣160:相交链表 题目描述: 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。 图示两个链表在节点 c1 开始相交: 题目数据 保证 整个链式…

【MySQL】随手笔记(积跬步至千里)

一、常用函数 (1)uuid() select uuid(); //生成随机数 select replace(uuid(),-,); //将随机数的-去掉 select upper(replace(uuid(),-,)); ///改成大写应用举例: (1)非自增主键 非自增主键,insert语…

【LabVIEW学习】1.对labview的初步使用,控制数据流动,快捷键,参考手册打不开怎么办

一。初步使用labview 1.程序图标 2.打开之后继续点击新建VI 原因:最后的程序后缀就是 .vi 3.新建之后,会有三个界面(没有不要紧,找找肯定有) 4.程序操作方法 1.拖动控件到前面板 2.此时程序框图会出现对应的控件 拖动…

分享篇:最近在研究的AIGC内容

最近在研究AIGC自助生成报告的内容,分享一些查到的资料 前言(一些使用心得) 1、大模型会颠覆一些生产力,让强的人更强 归根到底,大模型是工具,和早些年的excel、python、ps没差,能不能用好工…

今年副业比主业赚得多...

我是从20年开始接触副业的,主要是在程序员外包平台上接单。从一开始的月入0到几百,到现在每个月稳定有小一万的收入。这个月接了一个比较大的项目,结款之后发现今年的副业已经比主业赚得多了,简直美滋滋~ 今年主业收入8w&#xff…

优维产品最佳实践第14期:让重要告警能有序跟进,最终根治

监控系统的首要任务是利用特定指标来反映系统内部的健康状态,当指标异常时,会触发告警。对于简单告警的处理,基于告警轨迹可清晰记录和观察告警的状态变化过程。 然而,对于一个复杂告警的处理,可能需要多角色多部门协…

NSSCTF第12页(2)

[CSAWQual 2019]Unagi 是xxe注入,等找时间会专门去学一下 XML外部实体(XXE)注入 - 知乎 【精选】XML注入学习-CSDN博客 【精选】XML注入_xml注入例子-CSDN博客 题目描述说flag在/flag下 发现有上传点,上传一句话木马试试 文件…

C语言不可不敲系列:跳水比赛排名问题

目录 1题干: 2解题思路: 3代码: 4运行结果: 5总结: 1题干: 5位运动员参加了10米台跳水比赛,有人让他们预测比赛结果 A选手说:B第二,我第三; B选手说:我第二,E第四&am…

5种方法,教你如何清理接口测试后的测试数据!

在接口测试之后,清理测试数据是一个很重要的步骤,以确保下一次测试的准确性和一致性。以下是一些常见的测试数据清理方法: 1. 手动清理: 这是最基本的方法,即手动删除或重置测试数据。您可以通过访问数据库、控制台或…

4、智能家居框架设计和代码文件工程建立

目录 一、智能家居项目框架 二、智能家居工厂模式示意 三、代码文件工程建立 SourceInsight创建新工程步骤 一、智能家居项目框架 二、智能家居工厂模式示意 三、代码文件工程建立 创建一个名为si的文件夹用于保存SourceInsight生成的文件信息,然后在SourceInsig…

SOLIDWORKS Flow Simulation阀门内流体仿真

Flow Simulation 导读 阀门作为输送系统中的控制设备其主要功能是接通管路中的流体介质,又或是调节流体的流量、压力等,在阀门的设计中,流量系数Cv,Kv,以及流阻系数都是基本参数,本节将讲解通过SOLIDWORKS Flow Simulation在三维…

记录一次 添加脚本的记录+改错记录

1.Update 和 Delete 一定要记得where条件 update 表名称 set 字段1‘修改的值’ (单引号) where 字段‘’ and Aid‘’; update jxkh22 set JXKH2200001 ,JXKH2201002 where B003 and JXKH22034;delete from table_name where condition delete from …

from PIL import Image报错

ERROR: Could not find a version that satisfies the requirement PIL (from versions: none) ERROR: No matching distribution found for PIL 报错原因:PIL导包是用的from PIL import Image,但是安装的时候是Pillow库 正确的包名为:Pillo…

15分钟,不,用模板做数据可视化只需5分钟

测试显示,一个对奥威BI软件不太熟悉的人来开发数据可视化报表,要15分钟,而当这个人去套用数据可视化模板做报表,只需5分钟! 数据可视化模板是奥威BI上的一个特色功能板块。用户下载后更新数据源,立即就能获…

ALPC_Natural_Selection

刚刚结束的ICPC2023沈阳是自然选择号的最后一场 XCPC 区域赛,很高兴也很幸运能拿到校排名 rk4,圆了一个这半年才开始做的梦。在这里讲一下这支队伍的故事。 组队、训练 本来和wjy666(aka maple)打完 EC Final 之后是想要退役的&…

linux高级篇基础理论一(详细文档、Apache,网站,MySQL、MySQL备份工具)

♥️作者:小刘在C站 ♥️个人主页: 小刘主页 ♥️不能因为人生的道路坎坷,就使自己的身躯变得弯曲;不能因为生活的历程漫长,就使求索的 脚步迟缓。 ♥️学习两年总结出的运维经验,以及思科模拟器全套网络实验教程。专栏:云计算技…