集群进入某个节点查看指令:rabbitmqctl cluster_status

单机版:
docker run -d --name rabbit \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=admin \
-p 15672:15672 \
-p 5672:5672 \
-p 25672:25672 \
-p 61613:61613 \
-p 1883:1883 \
rabbitmq:management
集群安装   --hostname  rabbit1指定主机名  本机安装  一机多例也可以不指定    
镜像集群可以把RABBITMQ_ERLANG_COOKIE='rabbitcookie' \都写成一样的,这样就可以保证每个节点一致,从而达成集群 docker run -d \
--hostname rabbit1 \
--name myrabbit1 \
-p 15672:15672 -p 5672:5672 \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=admin \
-e RABBITMQ_ERLANG_COOKIE='rabbitcookie' \
rabbitmq:management docker run -d \
--hostname rabbit2 \
--name myrabbit2 \
-p 5673:5672 \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=admin \
--link myrabbit1:rabbit1 \
-e RABBITMQ_ERLANG_COOKIE='rabbitcookie' \
rabbitmq:management docker run -d \
--hostname rabbit3 \
--name myrabbit3 \
-p 5674:5672 \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=admin \
--link myrabbit1:rabbit1 \
--link myrabbit2:rabbit2 \
-e RABBITMQ_ERLANG_COOKIE='rabbitcookie' \
rabbitmq:management –link:将多个容器链接到一起
erlang Cookie值必须相同,也就是RABBITMQ_ERLANG_COOKIE参数的值必须相同

容器端口5672 被5673 5674 映射

4.绑定节点

rabbitmqctl reset  清空当前节点数据防止绑定失败
rabbitmqctl join_cluster --ram rabbit@rabbit1   都关联rabbit1进行绑定


设置节点1:
docker exec -it myrabbit1 bash
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl start_app
exit

设置节点2:参数--ram表示设置为内存节点

docker exec -it myrabbit2 bash
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster --ram rabbit@rabbit1
rabbitmqctl start_app
exit

设置节点3:参数--ram表示设置为内存节点

docker exec -it myrabbit3 bash
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster --ram rabbit@rabbit1
rabbitmqctl start_app
exit

查看你集群状态:进入某个实例节点 输入这个指令即可查看集群信息 rabbitmqctl cluster_status



再加一个集群点:

docker run -d  \
--hostname rabbit4 \
--name myrabbit4 \
-p 5675:5672 \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=admin \
--link myrabbit1:rabbit1 \
--link myrabbit2:rabbit2 \
--link myrabbit3:rabbit3 \
-e RABBITMQ_ERLANG_COOKIE='rabbitcookie' \
rabbitmq:management

docker exec -it myrabbit4 bash
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster rabbit@rabbit1
rabbitmqctl start_app
exit
剔除4节点,进入rabbit4的镜像  执行如下操作
rabbitmqctl stop_app
rabbitmqctl reset

搭建rabitmq附加参数

--log-opt max-size=10m 日志文件单个最大10M

--log-opt max-file=3 日志文件最多保留3个

 -v /data/rabbitmq01:/var/lib/rabbitmq:z \

如下样例:引用:https://blog.csdn.net/qq_40378034/article/details/89788708 这偏文章的见解
docker run -d --hostname rabbitmq1   \
--add-host="rabbitmq1":192.168.3.92 \ 所在机器的IP
--add-host="rabbitmq2":192.168.3.93 \ 所在机器的IP
--name rabbit1\
--restart=always\
-p "4369:4369" \
-p "5672:5672" \
-p "15672:15672" \
-p "25672:25672" \
-v /data/rabbitmq01:/var/lib/rabbitmq:z \
-e RABBITMQ_DEFAULT_USER=jffwuser \
-e RABBITMQ_DEFAULT_PASS=jffw123 \
-e RABBITMQ_ERLANG_COOKIE='jffwcookie' \
erikopa/rabbitmq-management-x-delayed-message
 

给节点添加用户其权限:

rabbitmqctl -n rabbit1 add_user wb admin
rabbitmqctl -n rabbit1 set_user_tags wb administrator
rabbitmqctl -n rabbit1 set_permissions -p / wb ".*" “.*” ".*"

查看用户列表:
rabbitmqctl list_users
引用:https://blog.csdn.net/qq_40378034/article/details/89788708 这偏文章的见解

RabbitMQ中的每一个节点,不管是单一节点系统或者集群中的一部分,要么是内存节点,要么是磁盘节点。
内存节点将所有的队列、交换机、绑定关系、用户、权限和vhost的元数据定义都存储在内存中,而磁盘节点则将这些信息存储到磁盘中。
单节点的集群中必然只有磁盘类型的节点,否则当重启RabbitMQ之后,所有关于系统的配置信息都会丢失。不过在集群中,可以选择配置部分节点为内存节点,这样可以获得更高的性能

RabbitMQ只要求在集群中至少有一个磁盘节点,所有其他节点可以是内存节点。当节点加入或者离开集群时,它们必须将变更通知到至少一个磁盘节点。
如果只有一个磁盘节点,而且刚好是它崩溃了,那么集群可以继续发送或者接收消息,但是不能执行创建队列、交换机、绑定关系、用户,以及更改权限、添加或者删除集群节点的操作了。
也就是说,如果集群中唯一的磁盘节点崩溃,集群仍然可以保持运行,但是直到将该节点恢复到集群前,无法更改任何东西。所以在建立集群的时候应该保证有两个或者多个磁盘节点的存在

在内存节点重启后,它们会连接到预先配置的磁盘节点,下载当前集群元数据的副本。当在集群中添加内存节点时,确保告知其所有的磁盘节点。
只要内存节点可以找到至少一个磁盘节点,那么它就能在重启后重新加入集群中为了确保集群信息的可靠性,建议全部使用磁盘节点

多机器部署多应用:rabbitcookie 里面的值要保持一致

RabbitMq安装(单点与集群)rabbitMq以及状态查询的更多相关文章

  1. 搭建 RabbitMQ Server 高可用集群

    阅读目录: 准备工作 搭建 RabbitMQ Server 单机版 RabbitMQ Server 高可用集群相关概念 搭建 RabbitMQ Server 高可用集群 搭建 HAProxy 负载均衡 ...

  2. 搭建 RabbitMQ Server 高可用集群【转】

    阅读目录: 准备工作 搭建 RabbitMQ Server 单机版 RabbitMQ Server 高可用集群相关概念 搭建 RabbitMQ Server 高可用集群 搭建 HAProxy 负载均衡 ...

  3. (转)CentOs7.3 搭建 RabbitMQ 3.6 Cluster 集群服务与使用

    RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如:Python.Ruby..NET.Java.JMS.C.PHP.ActionScript.XMPP.STO ...

  4. RabbitMQ从零到集群高可用(.NetCore5.0) -高可用集群构建落地

    系列文章: RabbitMQ从零到集群高可用(.NetCore5.0) - RabbitMQ简介和六种工作模式详解 RabbitMQ从零到集群高可用(.NetCore5.0) - 死信队列,延时队列 ...

  5. RabbitMQ的高可用集群部署

    RabbitMQ的高可用集群部署 标签(空格分隔): 消息队列 部署 1. RabbitMQ部署的三种模式 1.1 单一模式 单机情况下不做集群, 仅仅运行一个RabbitMQ. # docker-c ...

  6. RabbitMQ从零到集群高可用(.NetCore5.0) - 死信队列,延时队列

    系列文章: RabbitMQ从零到集群高可用(.NetCore5.0) - RabbitMQ简介和六种工作模式详解 RabbitMQ从零到集群高可用(.NetCore5.0) - 死信队列,延时队列 ...

  7. 从VMware虚拟机安装到hadoop集群环境配置详细说明(第一期)

    http://blog.csdn.net/whaoxysh/article/details/17755555 虚拟机安装 我安装的虚拟机版本是VMware Workstation 8.04,自己电脑上 ...

  8. 安装spark ha集群

    安装spark ha集群 1.默认安装好hadoop+zookeeper 2.安装scala 1.解压安装包 tar zxvf scala-2.11.7.tgz 2.配置环境变量 vim /etc/p ...

  9. HDP2.4安装(五):集群及组件安装

    HDP(Hortonworks Data Platform)是hortworks推出的100%开源的hadoop发行版本,以YARN 作为其架构中心,包含pig.hive.phoniex.hbase. ...

随机推荐

  1. 【洛谷P5008 逛庭院】tarjan缩点+贪心

    既然没有题解,那么我就来提供给一份. -- 首先我们看到数据范围.妈耶!数据这么大,一开始还想用个DP来做,但是看着就不行,那么根据这个数据范围,我们大致可以猜到这道题的算法是一个贪心,那么我们怎么贪 ...

  2. VM安装kali操作系统

    工具:VMware Workstation 15 Pro(15.5.6 build-16341506),kali-linux-2020.2-installer-amd64.iso vm15下载链接:h ...

  3. 关于intouch/ifix嵌入视频控件并使用(海康,大华)

    2017年下半年项目开始接触利用intouch工控软件来进行项目二次开发.其中关于驱动的问题始终是上位机的重中之重,暂且不表(嘿嘿--),首先遇到的问题就是在弹窗中嵌入视频控件,监控设备的开停状态.经 ...

  4. CF559B Equivalent Strings TJ

    前言 题目传送门 正解:模拟,递归. 考试的 T4,还是想复杂了 qwq. 这题不要用 STL,容易 \(\texttt{TLE}\)!! 题意简述 翻译够简了. 对了给一下样例解释的翻译: 第一个样 ...

  5. P6855「EZEC-4.5」走方格 TJ

    目录 前言 题意简述 法一:时间复杂度 $Θ(m2n2)$ (TLE) $Code$ 法二:正解,时间复杂度 $Θ(mn)$ $Code$ 写在最后 洛谷 前言 题目传送门 正解:动态规划 挺 dul ...

  6. 接口管理效率神器Apifox

    前言 你是一个测试,你们团队目前开发模式是前后端分离. 某一天,版本V1.0接口评审完,发布在了swagger上,前后端各自进行开发.此时你根据接口文档将新接口迁移到JMeter上,然后开始编写接口测 ...

  7. 用 区间判断(if)来猜价格的高低

    1 #include <stdio.h> 2 #include <stdlib.h> 3 int main() 4 { 5 int price = 150; 6 int gue ...

  8. SpringCloud升级之路2020.0.x版-10.使用Log4j2以及一些核心配置

    本系列代码地址:https://github.com/HashZhang/spring-cloud-scaffold/tree/master/spring-cloud-iiford 我们使用 Log4 ...

  9. Create Virtual Network with VirtualBox on Mint 14

    VirtualBox version: VirtualBox-4.2.18-88780-Linux_x86.run Host OS: Linux Mint 14 Xfce Setup Network ...

  10. STP生成树的一些笔记

    一.STP概述 1.1.STP简介 交换网络环路主要由广播风暴.多帧复制和MAC地址表紊乱造成. 广播风暴:一个数据帧或包被传输到本地网段 (由广播域定义)上的每个节点就是广播:由于网络拓扑的设计和连 ...