【软件安装】Linux中RabbitMQ的安装

news2024/11/24 14:42:13

① 本篇是基于Linux操作系统中的安装,故先准备一个干净的Linux操作系统。本文中所有的操作基于CentOS8进行安装演示;

② 接下来的演示文本中,红色字体为操作步骤,黑色字体为解释说明;

③ 确保Linux系统中已经安装好必要的环境,不确定环境是否配置齐全的,可以执行: yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC unixODBC-devel

1、下载RabbitMQ安装包和Erlang安装包到本地

RabbitMQ是一个开源的遵循AMQP协议实现的基于Erlang语言编写,支持多种客户端(语言),用于在分布式系统中存储消息,转发消息,具有高可用高可扩性,易用性等特征。也正因为RabbitMQ是采用 Erlang语言开发的,所以系统环境必须提供 Erlang环境。

RabbitMQ官网下载地址: https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.11.4

右键复制链接,进入到系统下载目录,使用wget下载到本地:

cd /usr/local/

mkdir source

cd source/

注:因为本人习惯将下载的源码压缩包存在在本地 /usr/local/source/ 文件夹中,这边以此作为示范,具体的存放路径根据个人习惯各自存放即可。

wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.11.4/rabbitmq-server-generic-unix-3.11.4.tar.xz

根据官网提供的RabbitMQ和Erlang对应版本对比:https://www.rabbitmq.com/which-erlang.html,下载的RabbitMQ版本是3.11.4,对应的Erlang版本应该为25.1

Erlang官方下载地址:https://www.erlang.org/patches/otp-25.1

右键复制链接,使用wget下载到本地:

wget https://github.com/erlang/otp/releases/download/OTP-25.1/otp_src_25.1.tar.gz

2、解压Erlang压缩包并进行安装

tar -xvf otp_src_25.1.tar.gz

进入解压后的文件夹中:cd otp_src_25.1/

创建Erlang安装目录:mkdir -p /usr/local/app/erlang

配置Erlang的安装位置及各参数:./configure --prefix=/usr/local/app/erlang --with-ssl --enable-threads 
--enable-smp-support --enable-kernel-poll --enable-hipe --without-javac

编译:make,这一步耗费时间会比较久,有1说1,所有软件的编译过程中,这个Erlang的编译是数1数2的慢

安装:make install

配置Erlang环境变量:vim /etc/profile

刷新环境配置:source /etc/profile,验证Erlang环境变量是否配置成功

3、解压RabbitMQ压缩包并进行安装

cd /usr/local/source/

tar -xvf rabbitmq-server-generic-unix-3.11.4.tar.xz

进入解压后的文件夹中:cd rabbitmq_server-3.11.4/

将解压后的文件夹整体复制到/usr/local/app目录下并重命名:

cd ..

cp -r rabbitmq_server-3.11.4/ /usr/local/app/rabbitmq

配置RabbitMQ环境变量:

vim /etc/profile

刷新环境配置:source /etc/profile

4、开启web管理插件

进入RabbitMQ的sbin目录下:cd /usr/local/app/rabbitmq/sbin

查看插件列表:./rabbitmq-plugins list

启动指定的插件:./rabbitmq-plugins enable rabbitmq_management

再次查看插件列表:./rabbitmq-plugins list,可以看到已经启动成功的插件:

5、启动RabbitMQ

执行:./rabbitmq-server,可以看到控制台输出的日志,RabbitMQ已经和3个插件成功启动

注意:如果在启动过程中,发错报错【ERROR: could not bind to distribution port 25672, it is in use by another node: rabbit@localhost】,可以通过:rabbitmqctl stop,结束RabbitMQ之后再重新启动即可。

在浏览器访问RabbitMQ的管理页面:http://192.168.126.134:15672/

使用RabbitMQ自带的 guest / guest 账号进行登录:

会发现guest账号只能够在RabbitMQ服务本机进行登录,如果想要远程登录RabbitMQ的管理页面,就需要创建新的可登录角色。

6、创建RabbitMQ远程登录角色并授权

由于刚刚那个窗口用来阻塞启动RabbitMQ服务,方便查看打印日志。重新开一个终端窗口,来到RabbitMQ的安装目录下:cd /usr/local/app/rabbitmq/sbin/

创建RabbitMQ远程登录账户:./rabbitmqctl add_user feenix Lee@0629

用户账号创建成功,还不忘贴心提醒给创建的账号授予权限。既然如此,那么就将刚刚创建的用户授予管理员的角色:./rabbitmqctl set_user_tags feenix administrator

再给账户授予完整的操作权限:./rabbitmqctl set_permissions -p "/" feenix ".*" ".*" ".*"

RabbitMQ默认的角色共有5种:

使用刚刚创建的feenix用户远程登录RabbitMQ服务

至此,RabbitMQ安装完成。 

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

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

相关文章

LightGBM 实现基于内容的个性化推荐

大家好,本文中,我将和大家一起学习如何训练 LightGBM 模型来估计电子商务广告的点击率的推荐系统的例子。将在Criteo数据集上训练一个基于LightGBM的模型。 LightGBM是一个基于树的梯度提升学习算法框架。是基于分布式框架设计的,因而非常高…

汇川伺服电机位置控制模式参数配置

1. 基本控制参数设置 1)设置位置控制模式 2)绝对值位置线性模式 2.端子输入参数设置 1)将输入端子使能失效 3. 位置控制参数设置 1)将位置来源设置为2:多段位位置指令 4.通信参数设置 1)波特率设置为960…

单元测试我们需要知道哪些?

前言趁着刚读完《认知天性》这书,书有一点这样说:「我们学习行为更多凭着直觉,即使我们已经看到了科学数据,但我们也不愿意去相信自己的直觉存在问题。」那和我们单元测试有什么关系呢?这时我突然有一个问题&#xff1…

19-28-hive-数据类型-DDL

19-hive-数据类型-DDL: 基本数据类型 Hive 数据类型Java 数据类型长度例子TINYINTbyte1byte 有符号整数20SMALINTshort2byte 有符号整数20INTint4byte 有符号整数20BIGINTlong8byte 有符号整数20BOOLEANboolean布尔类型,true 或者falseTRUE FALSEFLOAT…

【Python】Labelme/PIL读取图片朝向错误解决

文章目录一、问题背景二、产生原因三、解决方案一、问题背景 发现使用labelme直接读取含imageData(将图片bytes数据使用base64编码后的str数据)的json文件时,读上来的图片会发生自动旋转的问题。比如原先是横放的图,读进来后就成…

虚拟化基本知识及virtio-net初探

QEMU/KVM是在Linux中被广泛使用的虚拟化技术之一,而virtio作为一个半虚拟化I/O事实上的标准[1],是QEMU/KVM在I/O虚拟化部分的默认实现。virtio-net是virtio标准中的网卡设备,被广泛应用。本文将会沿着虚拟化,virtio半虚拟化I/O&am…

非对称风险模型

推荐模型:非对称性风险,让自己置身于一个好结果比坏结果影响大得多的环境中 比如投资,将85%~90%投入到极低风险的资产中(国债),来享受确定性收益;剩下的投入的10%~15%投入到极高风险资产中&…

使用FeatureTask多线程优化in,提高查询速度

场景是这样的:使用in查询数据的时候,in的数量越多,效率越低,所以一个优化的思路是,缩小in查询的数量,用多线程的方式查询缩小数量后in的sql,并行查询。 直接上代码: public List&l…

Linux零基础入门(四)Linux实用操作

Linux零基础入门(四)Linux实用操作前言Linux实用操作一 各类小技巧(快捷键)1 ctrl c 强制停止2 ctrl d 退出或登出3 历史命令搜索4 光标移动快捷键5 清屏二 软件安装1 Linux系统的应用商店2 yum命令3 apt命令 - 扩展三 systemct…

全光谱台灯对孩子有伤害吗?儿童用台灯的好处和坏处是什么

全光谱台灯是指灯光色谱丰富度与太阳光一般全面的台灯,这样的灯光照射下的任何物体,不但颜色丰富多彩,而且极其真实,无限接近太阳光下的真实色彩,对人眼舒适度有巨大的提升,所以全光谱台灯不但对孩子无害&a…

5G无线技术基础自学系列 | MU-MIMO原理

素材来源:《5G无线网络规划与优化》 一边学习一边整理内容,并与大家分享,侵权即删,谢谢支持! 附上汇总贴:5G无线技术基础自学系列 | 汇总_COCOgsta的博客-CSDN博客 MU-MIMO是指多个用户在上下行数据传输时…

算法实操:Python代码实现直插排序(含有序在前有序在后)

【学习的细节是欢悦的历程】Python 官网:https://www.python.org/ Free:大咖免费“圣经”教程《 python 完全自学教程》,不仅仅是基础那么简单…… 自学并不是什么神秘的东西,一个人一辈子自学的时间总是比在学校学习的时间长&a…

[附源码]SSM计算机毕业设计音乐网站JAVA

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

用结构体解决实际问题中构造数据类型

用结构体解决实际问题中构造数据类型。 实验内容 (1)题目:编写input()和output()函数输入,输出5个学生的数据记录。学生数据定义如下: #define N 5struct student{ char num[6];char name[8];int score[4];} stu[N];…

anaconda安装paddle(安装CUDA,CUDNN)

前言 为什么会写这样一篇呢,应该早晚会用到paddlelite,所以paddle还是要学的,与其在飞桨平台上跑,不如在自己电脑上跑。我以为安装paddle只需要三行代码: # 打开Anaconda Prompt conda create -n paddle python3.9 c…

C++异常及异常优缺点

🧸🧸🧸各位大佬大家好,我是猪皮兄弟🧸🧸🧸 文章目录一、C语言传统的处理错误的方式二、C异常1.throw catch2.异常的抛出和捕获3.异常的抛出和捕获原则4.函数调用链 异常 栈展开匹配原则5.异常的…

微信小程序怎样开发?【小程序开发】

说到微信小程序,很多公司企业商家都会有自己的微信小程序,已经是他们的标配了。那么还没有自己的微信小程序的小伙伴,也在筹备着开发小程序。那么微信小程序怎样开发的呢,今天就教大家一个比较简单的开发方法。 微信小程序怎样开…

Linux进程通信之共享内存

一、共享内存之原理 1.是在物理内存中开辟了一片空间; 2.不同的进程通过页表将物理内存空间映射到自己的进程虚拟地址空间之中 3.不同的进程可以通过操作自己的虚拟地址空间中的虚拟地址去操作共享内存(物理地址) 共享内存是最快的进程之间…

为什么计算机中的负数要用补码表示?

本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 提问。 前言 大家好,我是小彭。 在前面的文章里,我们聊到了计算机的冯诺依曼架构的 3 个基本原则。其中第 1 个原则是计算机中所有信息都是采用二进制格式的编…

【在Spring MVC框架中,关于限制请求方式】

目录 1.关于限制请求方式 2. 附:关于GET和POST请求方式 1.关于限制请求方式 在Spring MVC框架中,RequestMapping注解的主要作用是配置请求路径,除此以外,还可以配置请求方式,例如: RequestMapping(value…