RabbitMQ 多种安装模式

文章目录

  • 前言
  • 一、Windows 安装 RabbitMq
    • 1、版本关系
    • 2、Erlang
      • 2.1、下载安装 Erlang 23.1
      • 2.2、配置 Erlang 环境变量
    • 3、RabbitMQ
      • 3.1、下载安装 RabbitMQ 3.8.9
      • 3.2、环境变量
      • 3.3、启动RabbitMQ 管理插件
      • 3.3、RabbitMQ
      • 3.4、注意事项
  • 二、安装docker
    • 1、更新系统包:
    • 2、安装必要的软件包:
    • 3、添加Docker的YUM存储库:
    • 4、安装Docker Engine:
    • 5、启动Docker:
    • 6、验证Docker安装:
  • 三、docker安装Rabbitmq
    • 1、拉取RabbitMQ镜像:
    • 2、运行RabbitMQ容器:
    • 3、访问RabbitMQ管理界面:
  • 四、docker安装Rabbitmq集群
    • 1、拉取RabbitMQ镜像:
    • 2、创建 docker 网络(让容器可以和主机通信)
    • 3、创建三个容器,端口分别是 5673 5674 5675 ,管理端口是 15673 15674 15675
    • 4、后两个节点作为内存节点加入集群
    • 5、加入集群失败


前言

本文介绍rabbitmq多种安装模式


一、Windows 安装 RabbitMq

1、版本关系

  • RabbitMQ 依赖于 Erlang,需要先安装 Erlang
  • Erlang 和 RabbitMQ 版本有对应关系
    • http://www.rabbitmq.com/which-erlang.html
      在这里插入图片描述

2、Erlang

2.1、下载安装 Erlang 23.1

如果下载太慢了,可以把地址贴到迅雷里面,下载到本机
安装地址
https://www.erlang.org/downloads/23.1
安装exe 文件一直 next 就可以

2.2、配置 Erlang 环境变量

ERLANG_HOME=C:\Program Files\erl23.1

Path 添加

%ERLANG_HOME%\bin;

dos 输入 erl,输入能显示版本号则安装正确

3、RabbitMQ

3.1、下载安装 RabbitMQ 3.8.9

安装连接

https://www.rabbitmq.com/docs/install-windows

3.2、环境变量

RABBITMQ_SERVER=C:\Program Files\RabbitMQ Server\rabbitmq_server-3.8.9

Path

%RABBITMQ_SERVER%\sbin;

3.3、启动RabbitMQ 管理插件

dos 中输入

"C:\Program Files\RabbitMQ Server\rabbitmq_server-3.8.9\sbin\rabbitmq-plugins.bat" enable rabbitmq_management

3.3、RabbitMQ

启动

net start RabbitMQ

关闭

net stop RabbitMQ

访问管理界面:http://localhost:15672/
默认用户名:guest
默认密码为:guest

默认配置文件地址:

C:\Users\sjl\AppData\Roaming\RabbitMQ\advanced.config

数据目录:

C:\Users\sjl\AppData\Roaming\RabbitMQ\db\rabbit@用户名-mnesia

3.4、注意事项

如果遇到无法启动的问题,先尝试在控制面板 —— 服务 —— 启动。
如果已经启动了,先服务里面停掉或者尝试用命令

.\rabbitmq-server.bat stop
.\rabbitmq-server.bat start

注意只能用 dos,不要用 powershell
如果要初始化 RabbitMQ,移除全部数据:

rabbitmq-service stop
rabbitmq-service remove
rabbitmq-service install
rabbitmq-service start

二、安装docker

1、更新系统包:

先更新系统中的YUM包管理工具和所有软件包,确保系统是最新的。

sudo yum -y update

2、安装必要的软件包:

安装软件包以允许YUM通过HTTPS使用存储库。

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

3、添加Docker的YUM存储库:

使用 yum-config-manager 来设置存储库。

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

4、安装Docker Engine:

使用下面的命令安装Docker。

sudo yum install -y docker-ce docker-ce-cli containerd.io

5、启动Docker:

启动Docker服务,并设置为开机自启动。

sudo systemctl start docker
sudo systemctl enable docker

6、验证Docker安装:

运行下面的命令以验证Docker是否正确安装和启动。

sudo docker --version

你应该能看到类似于 Docker version 20.10.7, build f0df350 的输出。

三、docker安装Rabbitmq

前提是安装了docker

1、拉取RabbitMQ镜像:

使用Docker命令拉取RabbitMQ的官方镜像。

docker pull rabbitmq:3.7.17-management

2、运行RabbitMQ容器:

运行以下命令创建并启动RabbitMQ容器。

docker run -d --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:management
  • -d 参数是后台运行容器。
  • –name rabbitmq 为容器指定名称。
  • -p 5672:5672 暴露标准的AMQP端口。
  • -p 15672:15672 暴露Web管理界面的端口。

3、访问RabbitMQ管理界面:

启动容器后,可以通过浏览器访问RabbitMQ的Web管理界面。

http://localhost:15672

四、docker安装Rabbitmq集群

前提是安装了docker

1、拉取RabbitMQ镜像:

使用Docker命令拉取RabbitMQ的官方镜像。

docker pull rabbitmq:3.7.17-management

2、创建 docker 网络(让容器可以和主机通信)

使用Docker命令拉取RabbitMQ的官方镜像。

docker network create rabbitmqnet

3、创建三个容器,端口分别是 5673 5674 5675 ,管理端口是 15673 15674 15675

docker run -d \
--name=rabbitmq1 \
-p 5673:5672 \
-p 15673:15672 \
-e RABBITMQ_NODENAME=rabbitmq1 \
-e RABBITMQ_ERLANG_COOKIE='GUPAOEDUFORBETTERYOU' \
-h rabbitmq1 \
--net=rabbitmqnet \
rabbitmq:managementdocker run -d \
--name=rabbitmq2 \
-p 5674:5673 \
-p 15674:15672 \
-e RABBITMQ_NODENAME=rabbitmq2 \
-e RABBITMQ_ERLANG_COOKIE='GUPAOEDUFORBETTERYOU' \
-h rabbitmq2 \
--net=rabbitmqnet \
rabbitmq:managementdocker run -d \
--name=rabbitmq3 \
-p 5675:5672 \
-p 15675:15672 \
-e RABBITMQ_NODENAME=rabbitmq3 \
-e RABBITMQ_ERLANG_COOKIE='GUPAOEDUFORBETTERYOU' \
-h rabbitmq3 \
--net=rabbitmqnet \
rabbitmq:management

4、后两个节点作为内存节点加入集群

docker exec -it rabbitmq2 /bin/bash
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster --ram rabbitmq1@rabbitmq1
rabbitmqctl start_appdocker exec -it rabbitmq3 /bin/bash
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster --ram rabbitmq1@rabbitmq1
rabbitmqctl start_app

访问:
访问管理界面:http://dockerIp:15673/
默认用户名:guest
默认密码为:guest
在这里插入图片描述

guest 用户默认只能在当前访问。如果是本机访问虚拟机的服务,需要添加其他用户(比如 admin),分配 vhost 权限才能远程访问

./rabbitmqctl add_user admin admin
./rabbitmqctl set_user_tags admin administrator
./rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"

5、加入集群失败

  • 主节点是否启动成功, 网络连接是否正常, ping hostname 能不能 ping 通?
  • 25672 端口, 防火墙是否允许
  • erlang.cookie 是否一致, 如果遇到类似这样的错误 :TCP connection succeeded but Erlang distribution failed

清除历史记录 mv /var/lib/rabbitmq/mnesia/* /tmp/,重启

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

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

相关文章

使用python-docx包进行多文件word文字、字符批量替换

1、首先下载pycharm。 2、改为中文。 3、安装python-docx包。 搜索包名字,安装。 4、新建py文件,写程序。 from docx import Documentdef replace1(array1):# 替换词典(标签值按实际情况修改)dic {替换词1: array1[0], 替换…

Android中Service在新进程中的启动流程

目录 1、Service与AMS交互框架介绍 1.1、认识AMS代表IActivityManager 1.2、认识客户端代表IApplicationThread 2、Service启动流程概览 我们知道Android有四大组件,Activity、Service、ContentProvider、Broadcast,每个组件在系统运行中或者我们编写…

read+write实现:链表放到文件+文件数据放到链表 的功能

思路 一、 定义链表: 1 节点结构(数据int型) 2 链表操作(创建节点、插入节点、释放链表、打印链表)。 二、链表保存到文件 1打开文件 2遍历链表、写文件: 遍历链表,write()将节点数据写入文件。…

【景区导游——LCA】

题目 代码 #include <bits/stdc.h> using namespace std; using ll long long; const int N 1e5 10; const int M 2 * N; int p[N][18], d[N], a[N]; ll dis[N][18]; //注意这里要开long long int h[N], e[M], ne[M], idx, w[M]; int n, k; void add(int a, int b, …

二进制安卓清单 binary AndroidManifest - XCTF apk 逆向-2

XCTF 的 apk 逆向-2 题目 wp&#xff0c;这是一道反编译对抗题。 题目背景 AndroidManifest.xml 在开发时是文本 xml&#xff0c;在编译时会被 aapt 编译打包成为 binary xml。具体的格式可以参考稀土掘金 MindMac 做的类图&#xff08;2014&#xff09;&#xff0c;下面的博…

反向代理模块。。

1 概念 1.1 反向代理概念 反向代理是指以代理服务器来接收客户端的请求&#xff0c;然后将请求转发给内部网络上的服务器&#xff0c;将从服务器上得到的结果返回给客户端&#xff0c;此时代理服务器对外表现为一个反向代理服务器。 对于客户端来说&#xff0c;反向代理就相当于…

flink StreamGraph解析

Flink程序有三部分operation组成&#xff0c;分别是源source、转换transformation、目的地sink。这三部分构成DAG。 DAG首先生成的是StreamGraph。 用户代码在添加operation的时候会在env中缓存&#xff08;变量transformations&#xff09;&#xff0c;在env.execute()执行的…

WPS数据分析000010

基于数据透视表的内容 一、排序 手动调动 二、筛选 三、值显示方式 四、值汇总依据 五、布局和选项 不显示分类汇总 合并居中带标签的单元格 空单元格显示 六、显示报表筛选页

【Numpy核心编程攻略:Python数据处理、分析详解与科学计算】1.18 逻辑运算引擎:数组条件判断的智能法则

1.18 逻辑运算引擎&#xff1a;数组条件判断的智能法则 1.18.1 目录 #mermaid-svg-QAFjJvNdJ5P4IVbV {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-QAFjJvNdJ5P4IVbV .error-icon{fill:#552222;}#mermaid-svg-QAF…

Tensor 基本操作2 理解 tensor.max 操作,沿着给定的 dim 是什么意思 | PyTorch 深度学习实战

前一篇文章&#xff0c;Tensor 基本操作1 | PyTorch 深度学习实战 本系列文章 GitHub Repo: https://github.com/hailiang-wang/pytorch-get-started 目录 Tensor 基本操作torch.max默认指定维度 Tensor 基本操作 torch.max torch.max 实现降维运算&#xff0c;基于指定的 d…

【ESP32】ESP-IDF开发 | WiFi开发 | UDP用户数据报协议 + UDP客户端和服务器例程

1. 简介 UDP协议&#xff08;User Datagram Protocol&#xff09;&#xff0c;全称用户数据报协议&#xff0c;它是一种面向非连接的协议&#xff0c;面向非连接指的是在正式通信前不必与对方先建立连接&#xff0c; 不管对方状态就直接发送。至于对方是否可以接收到这些数据内…

动手学深度学习-卷积神经网络-3填充和步幅

目录 填充 步幅 小结 在上一节的例子&#xff08;下图&#xff09; 中&#xff0c;输入的高度和宽度都为3&#xff0c;卷积核的高度和宽度都为2&#xff0c;生成的输出表征的维数为22。 正如我们在 上一节中所概括的那样&#xff0c;假设输入形状为nhnw&#xff0c;卷积核形…

Airflow:精通Airflow任务依赖

任务依赖关系是任何工作流管理系统的核心概念&#xff0c;Apache Airflow也不例外。它们确定在工作流中执行任务的顺序和条件&#xff0c;确保以正确的顺序完成任务&#xff0c;并确保在相关任务开始之前成功完成先决任务。在本文中我们将探讨Apache Airflow中的任务依赖关系&a…

【数据结构】_链表经典算法OJ:合并两个有序数组

目录 1. 题目描述及链接 2. 解题思路 3. 程序 3.1 第一版 3.2 第二版 1. 题目描述及链接 题目链接&#xff1a;21. 合并两个有序链表 - 力扣&#xff08;LeetCode&#xff09; 题目描述&#xff1a; 将两个升序链表合并为一个新的 升序 链表并返回。 新链表是通过拼接给…

全程Kali linux---CTFshow misc入门

图片篇(基础操作) 第一题&#xff1a; ctfshow{22f1fb91fc4169f1c9411ce632a0ed8d} 第二题 解压完成后看到PNG&#xff0c;可以知道这是一张图片&#xff0c;使用mv命令或者直接右键重命名&#xff0c;修改扩展名为“PNG”即可得到flag。 ctfshow{6f66202f21ad22a2a19520cdd…

基于SMPL的三维人体重建-深度学习经典方法之VIBE

本文以开源项目VIBE[1-2]为例&#xff0c;介绍下采用深度学习和SMPL模板的从图片进行三维人体重建算法的整体流程。如有错误&#xff0c;欢迎评论指正。 一.算法流程 包含生成器模块和判别器模块&#xff0c;核心贡献就在于引入了GRU模块&#xff0c;使得当前帧包含了先前帧的先…

深入浅出Linux操作系统大数据定制Shell编程(六)

深入浅出Linux操作系统大数据定制Shell编 1、大数据定制-Shell编程1.1、什么是Shell1.2、Shell脚本执行方式 2、Shell变量2.1、shell变量的定义2.1.1、设置环境变量2.1.2、多行注释 2.2、位置参数变量2.2.1、语法 2.3、预定义变量2.4、运算符2.4.1、条件判断2.4.2、case语句2.4…

30289_SC65XX功能机MMI开发笔记(ums9117)

建立窗口步骤&#xff1a; 引入图片资源 放入图片 然后跑make pprj new job8 可能会有bug,宏定义 还会有开关灯报错&#xff0c;看命令行注释掉 接着把ture改成false 然后命令行new一遍&#xff0c;编译一遍没报错后 把编译器的win文件删掉&#xff0c; 再跑一遍虚拟机命令行…

“““【运用 R 语言里的“predict”函数针对 Cox 模型展开新数据的预测以及推理。】“““

主题与背景 本文主要介绍了如何在R语言中使用predict函数对已拟合的Cox比例风险模型进行新数据的预测和推理。Cox模型是一种常用的生存分析方法&#xff0c;用于评估多个因素对事件发生时间的影响。文章通过具体的代码示例展示了如何使用predict函数的不同参数来获取生存概率和…