RabbitMQ-安装篇(阿里云主机)

news2024/11/14 0:10:19

一、操作系统

用的是Alibaba Cloud Linux release 3 (Soaring Falcon)系统,可以通过命令:lsb_release -a 查看系统信息。

 二、安装RabbitMQ

       RabbitMQ 是基于 Erlang 语言构建的,要安装RabbitMQ,需先安装Erlang环境。通过Erlang Version Requirements | RabbitMQ此页面,可以看到对应RabbitMQ版本所需的Erlang版本。

1.安装Erlang环境

步骤 1: 更新系统包列表

首先,更新你的系统包列表,确保所有依赖项都是最新的

sudo yum update --nogpgcheck

步骤 2: 安装必要的依赖

安装编译 Erlang 所需的一些基本工具和库:

sudo yum install -y make gcc gcc-c++ kernel-devel openssl-devel ncurses-devel zlib-devel

步骤 3: 下载 Erlang/OTP 源码包

访问 Erlang/OTP 的官方网站或者 GitHub 仓库下载最新版本的源码包Otp 26.1 - Erlang/OTP。对于 Erlang/OTP 26 版本,你可以使用 wget 或 curl 下载:(切换到你想存放下载文件的目录,然后执行下面命令)

wget https://erlang.org/download/otp_src_26.1.tar.gz

步骤 4: 解压源码包

解压下载好的 tar.gz 文件:

tar -xzf otp_src_26.1.tar.gz

步骤 5: 编译和安装 Erlang/OTP

进入解压后的目录,然后运行 configure 脚本来准备编译:

cd otp_src_26.1

配置编译: 

./configure --prefix=/usr/local/erlang --with-ssl -enable-threads -enable-smmp-support -enable-kernel-poll --enable-hipe --without-javac

如果出现以下错误,我们还需要进行处理。 

 有些情况下,xsltproc 可能包含在额外的软件源中。你可以尝试添加一个包含这个软件包的额外软件源。例如,你可以尝试添加 EPEL (Extra Packages for Enterprise Linux) 软件源,因为 xsltproc 通常会被包含在这个源中。

安装 EPEL 软件源

sudo yum install -y epel-release --allowerasing

 再次尝试安装 xsltproc

sudo yum install -y xsltproc

编译源码:

make

最后安装 Erlang/OTP:

sudo make install

步骤 6: 设置环境变量

为了能够顺利运行 Erlang,你需要设置 ERL_HOME 和将其添加到 PATH 环境变量中:

编辑文件:/etc/profile,增加:

export ERL_HOME=/usr/local/erlang
PATH=$ERL_HOME/bin:$PATH
export ERL_HOME PATH

使profile文件立即生效:

source /etc/profile

步骤 7: 验证安装

检查 Erlang 是否正确安装:

erl -version

这将显示 Erlang/OTP 的版本号,如果你看到输出类似于 Erlang/OTP 26 的字样,那么说明安装成功了。

2.安装RabbitMQ

步骤 1: 下载 RabbitMQ

下载 RabbitMQ 的源码包。假设我们要安装的版本是 3.13.6,下载地址:Generic Binary Build | RabbitMQ

cd /web/rabbitmq
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.13.6/rabbitmq-server-generic-unix-3.13.6.tar.xz
xz -d rabbitmq-server-generic-unix-3.13.6.tar.xz
tar -xvf rabbitmq-server-generic-unix-3.13.6.tar

将rabbitmq移动到/usr/local下,方便操作。 

mv /web/rabbitmq/rabbitmq_server-3.13.6 /usr/local/rabbitmq/

步骤 2:配置rabbitmq环境变量

修改文件:/etc/profile,增加内容:

export PATH=$PATH:/usr/local/rabbitmq/sbin

使环境变量生效:

source /etc/profile

步骤 3:启动服务

rabbitmq-server -detached //启动rabbitmq,-detached代表后台守护进程方式启动。

步骤 4:查看状态

rabbitmqctl status

其他相关命令

  • 关闭服务:rabbitmqctl stop
  • 列出角色:rabbitmqctl list_users

步骤 5:配置网页插件 

首先创建目录,否则可能报错:

mkdir /etc/rabbitmq
rabbitmq-plugins enable rabbitmq_management

步骤 6:配置防火墙

firewall-cmd --permanent --add-port=15672/tcp
firewall-cmd --permanent --add-port=5672/tcp
systemctl restart firewalld.service

步骤 7:配置账号密码和权限

默认网页是不允许访问的,需要增加一个用户修改一下权限,代码如下:

rabbitmqctl add_user superrd superrd  //添加用户superrd,密码也是superrd
rabbitmqctl set_permissions -p / superrd ".*" ".*" ".*"  //添加权限
rabbitmqctl set_user_tags superrd administrator  //修改用户角色

然后就可以远程访问了,然后可直接配置用户权限等信息。

登录:http://ip:15672 ,之后在admin里面把guest账户删除。

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

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

相关文章

【IO】使用有名管道实现,一个进程用于给另一个进程发消息,另一个进程收到消息后,展示到终端上,并且将消息保存到文件上一份

目录 1、使用有名管道实现,一个进程用于给另一个进程发消息,另一个进程收到消息后,展示到终端上,并且将消息保存到文件上一份 2、使用有名管道实现两个进程间相互通信 1、使用有名管道实现,一个进程用于给另一个进程发…

Linux权限-普通权限

作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注我,我尽量把自己会的都分享给大家,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。 根据前面Linux用户介绍,里面涉及到超级管理员,普通用户&…

AI技术重塑招聘流程:效率与精准度的双重提升

一、引言 在21世纪的数字经济浪潮中,人工智能(AI)正以前所未有的速度渗透到社会经济的各个领域,其中,人力资源(HR)管理领域也不例外。作为组织发展与人才战略的核心环节,招聘流程正经…

VoNR网络架构与网元 IMS终端号码结构(VoLTE和VoNR适用)

目录 1. VoNR网络架构与网元 1.1 VoNR架构 vs VoLTE架构 1.2 回顾语音网络的演进与“分离” 1.3 TS23.228给出的5G的VoNR国际漫游 Home Routed 方案架构图 1.4 VoNR 网络架构图(2022版) 1.5 IMS 网元分类(VoNR VoLTE 适用&#xff09…

【SpringBoot】集成Redis

[TOC] 1 redis ​ redis是一个用C语言开发的,基于内存结构进行键值对数据存储、高性能、非关系型NoSQL数据库 ​ 官网: https://redis.io/ 1.1 特点 基于内存存储,数据读写效率很高本身支持持久化虽然基于key-value存储,但是…

excel中有些以文本格式存储的数值如何批量转换为数字

一、背景 1.1 文本格式存储的数值特点 在平时工作中有时候会从别地方导出来表格,表格中有些数值是以文本格式存储的(特点:单元格的左上角有个绿色的小标)。 1.2 文本格式存储的数值在排序时不符合预期 当我们需要进行排序的时候…

HashMap中 put()方法的流程、扩容的思路(源码分析~)

文章目录 put() 方法的流程扩容流程为什么它会按照2的幂次方进行扩容呢? put() 方法的流程 下面我们通过分析源码来总结一下 put() 方法的流程 扩容流程 根据上图的分析,就可以总结出 HashMap 的扩容流程: 在插入元素时,会先…

LMDrive 端到端闭环自动驾驶框架

LMDrive,一种新颖的语言引导的端到端闭环自动驾驶框架。LMDrive独特地处理和整合多模态传感器数据与自然语言指令,使车辆能够在现实的指令设置中与人类和导航软件进行交互。 LMDrive由两个主要部分组成: 1)一个视觉编码器&#x…

(javaweb)java中spring项目的搭建

spring 1.地位高-- 后端web开发--基于springboot开始 二.SpringBoot Web入门 1. http--请求协议 localhost--本机服务 8080--端口号 /hello--访问的资源 发起请求之后要被web应用程序处理 路径访问成功!!!localhost:8080/hel…

桌面云备份可以删除吗?安不安全

桌面云备份可以删除吗?答案是可以的。如果用户不需要这些备份或者想要释放存储空间,桌面云备份是可以进行删除的,并且删除桌面云备份是一个相对安全的过程,但需要注意以下几点来确保操作的安全性和数据的完整性。 一、桌面云备份…

C# Unity 面向对象补全计划 泛型约束

本文仅作学习笔记与交流,不作任何商业用途,作者能力有限,如有不足还请斧正 1.泛型约束了什么 在C#中,泛型约束用于限制泛型类型参数的类型 可以在泛型类型或方法的声明中使用 where 关键字来指定这些约束 2.约束栗子 基类约束…

ShardingSphere之ShardingProxy实战操作、分布式事务

文章目录 简介基础使用部署ShardingProxy配置分库分表策略 分布式事务机制介绍XA事务Demo使用另外两种XA事务管理器 简介 ShardingSphere的两个核心产品分别为ShardingJDBC和ShardingProxy。前文已经详细介绍了ShardingJDBC的具体使用,接下来介绍服务端的分库分表S…

MyBatis搭建和增删改查

MyBatis是一个开源的持久层框架,用于处理数据库的增删改查操作。它能够将Java对象与数据库中的数据进行映射关系的配置,并自动生成对应的SQL语句,从而简化了数据库操作的编码工作。 MyBatis的核心思想是将SQL语句与Java代码分离,…

Java01 Java预备知识

第一节:Java预备知识 进制转化 (1):二进制转十进制采用数字与阶码相乘并相加,阶码从右往左依次增大,从左往右依次减小。 例:100(2)0*2^00*2^11*2^44(10) (2)&#xff1a…

【远程桌面】远程连接服务器时出现“这可能是由于CredSSP加密数据库修正”的错误提示的解决办法

转发原文:https://blog.csdn.net/juanjuan_01/article/details/127005255 错误提示 Windows10系统中远程连接服务器的时候出现如下错误的提示: 解决方案一: 步骤1、winR打开运行窗口 步骤2、输入gpedit.msc命令,点击“确定”&a…

Go语言-- 版本管理go module以及go.sum详解

为了确保一致性构建,Go语言中引入了go.mod文件来标记每个依赖包的版本,在构建过程中go命令会下载go.mod中的依赖包,下载的依赖包会缓存在本地,以便下次构建。 在进行go语言项目开发的时候,会依赖3种类型的库包&#x…

使用ThreadLocal来存取单线程内的数据

一.什么是ThreadLocal? ThreadLocal,即线程本地变量。如果你创建了一个 ThreadLocal变量,那么访问这个变量的每个线程都会有这个变量的一个本地拷贝,多个线程操作这个变量的时候,实际是在操作自己本地内存里面的变量&…

Selenium+Python自动化测试:解决无法启动IE浏览器及报错问题

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 前言:记录启动IE浏览器的报错及解决方法。 错误1: selenium.common.exceptions.WebDriverException: Message: IEDriverServer.exe execu…

MySQL:索引(Index)语句

索引的限制 每个表最多可以有 16 个索引(InnoDB 表的限制)。 单个索引最多可以包含 16 列。 索引列的最大长度为 767 字节(对于 CHAR, VARCHAR, 和 BINARY 类型),3072 字节(对于 BLOB 类型)。…

网鼎杯比赛二次注入技巧

文章目录 前端的网页展示分析题目暴力破解寻找代码找到注入点进行注入查询想要的文件 前端的网页展示 分析题目 1.目前我们能看到的只有三个页面,但是我们可以看到三个*号。 2.考虑三个*的密码是什么,这里可以采用暴力破解(我们先猜这是三个…