docker部署rabbitmq cluster

news/2024/11/26 1:48:36/
### 环境
- 节点

10.0.4.41
10.0.4.42
10.0.4.43


- 用户和组
999:999### 在各节点上, 配置dns
- 配置hosts

sudo tee -a /etc/hosts <<EOF

rabbitmq37_cluster

10.0.4.41 rabbitmq37_cluster-1
10.0.4.42 rabbitmq37_cluster-2
10.0.4.43 rabbitmq37_cluster-3
EOF


### 在各节点上, 创建文件和目录

sudo mkdir -p /data/etc/rabbitmq /var/lib/rabbitmq

注:
1. /data/etc/rabbitmq/目录下, 有配置文件: enabled_plugins, rabbitmq-3.7.conf
2. 在rabbitmq-3.7.conf配置文件里, 直接设置default_user和default_pass, 就会在容器中起作用.### 在各节点上, 创建容器
- rabbitmq37_cluster-<x>

-e RABBITMQ_ERLANG_COOKIE
example_oct_me: OTLSZDSWWYJJMZHYBFZI
ycd_oct_dev: XNYLYQTGHKLTWSXVYRLH
ycd_ct_prod: DGAPZMNLXQMQUEBAGADY

-e RABBITMQ_HIPE_COMPILE=1

-p 4369:4369 -p 5671:5671 -p 5672:5672 -p 15672:15672 -p 25672:25672

: 分别为1, 2, 和3

docker run -d -e TZ=CST-8 -e RABBITMQ_ERLANG_COOKIE=‘DGAPZMNLXQMQUEBAGADY’ --name rabbitmq37_cluster- --network host --restart always -v /data/etc/rabbitmq/enabled_plugins:/etc/rabbitmq/enabled_plugins -v /data/etc/rabbitmq/rabbitmq-3.7.conf:/etc/rabbitmq/rabbitmq.conf -v /data/var/lib/rabbitmq/:/var/lib/rabbitmq/ -v /mnt/hgfs/:/mnt/hgfs/ rabbitmq:3.7-management


### 在各节点上, 查看集群状态

rabbitmqctl status
rabbitmqctl cluster_status


### 以node1为起始节点, 在其它节点(node2, node3)上执行加入集群的操作

rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster rabbit@rabbitmq37_cluster-1
rabbitmqctl start_app


注: 经测试, 可以通过任何在集群中的节点, 将新节点加入集群, 如, 在node3上, 通过node2将其加入集群:

rabbitmqctl join_cluster rabbit@rabbitmq37_cluster-2


### 在任意节点上, 修改集群名

rabbitmqctl set_cluster_name rabbitmq37_cluster


### 设置集群模式为"镜像模式"
登录: http://ip:15672- Admin > Policies > Add / update a policy:

Policy: cluster_mirror_policy

Overview:
Pattern: ^
Apply to: all

Definition:
ha-mode: exactly
ha-params: 2

Priority: 0


### 在任意节点上, 命令查看设置的策略
rabbitmqctl list_policies

Listing policies for vhost “/” …
/ cluster_mirror_policy ^ all {“ha-mode”:“exactly”,“ha-params”:2} 0


### 附
- rabbitmqctl cluster_status

root@rabbitmq37_cluster-1:/# rabbitmqctl cluster_status
Cluster status of node rabbit@rabbitmq37_cluster-1 …
[{nodes,[{disc,[‘rabbit@rabbitmq37_cluster-1’]}]},
{running_nodes,[‘rabbit@rabbitmq37_cluster-1’]},
{cluster_name,<<“rabbit@rabbitmq37_cluster-1”>>},
{partitions,[]},
{alarms,[{‘rabbit@rabbitmq37_cluster-1’,[]}]}]
root@rabbitmq37_cluster-1:/#


- rabbitmqctl cluster_status

root@rabbitmq37_cluster-3:/# rabbitmqctl cluster_status
Cluster status of node rabbit@rabbitmq37_cluster-3 …
[{nodes,[{disc,[‘rabbit@rabbitmq37_cluster-1’,‘rabbit@rabbitmq37_cluster-2’,
‘rabbit@rabbitmq37_cluster-3’]}]},
{running_nodes,[‘rabbit@rabbitmq37_cluster-1’,‘rabbit@rabbitmq37_cluster-2’,
‘rabbit@rabbitmq37_cluster-3’]},
{cluster_name,<<“rabbitmq37_cluster”>>},
{partitions,[]},
{alarms,[{‘rabbit@rabbitmq37_cluster-1’,[]},
{‘rabbit@rabbitmq37_cluster-2’,[]},
{‘rabbit@rabbitmq37_cluster-3’,[]}]}]
root@rabbitmq37_cluster-3:/#


- rabbitmqctl list_policies

root@rabbitmq37_cluster-3:/# rabbitmqctl list_policies
Listing policies for vhost “/” …
/ cluster_mirror_policy ^ all {“ha-mode”:“exactly”,“ha-params”:2} 0



http://www.ppmy.cn/news/83464.html

相关文章

keepalived+nginx搭建高可用kubeadm1.25

实验环境 系统都是centos 7 IP地址主机名称192.168.0.1k8s-master01192.168.0.2k8s-master02192.168.0.3k8s-master03192.168.0.230k8s-vip192.168.0.4k8s-node01192.168.0.5k8s-node02 所有节点修改主机名称 cat <<EOF >> /etc/hosts 192.168.0.1 k8s-master0…

开放式耳机和封闭式耳机的区别有哪些?开放式耳机有哪些推荐?

开放式耳机和封闭式耳机的区别主要在以下几个方面&#xff1a; 设计结构&#xff1a;开放式耳机通常有一个开放的设计&#xff0c;不需要塞入耳即可收听音乐&#xff0c;同时与外部环境进行交互。封闭式耳机则是封闭的设计&#xff0c;耳机驱动单元之间是封闭和隔离的&#xf…

总结button,input type=“button“,input type=“text“中:[在value添加值] 和 [标签内添加值]的区别

1.如果是需要一个 普通文本框 <input></input>和<input type"text"></input>外观相同 都是 2.对比button,input type"button",input type"text"中&#xff1a;在value添加值 和 标签内 添加值 html中&#xff1a; &l…

2023年认证杯SPSSPRO杯数学建模A题(第一阶段)碳板跑鞋全过程文档及程序

2023年认证杯SPSSPRO杯数学建模 A题 碳板跑鞋 原题再现&#xff1a; 在专业运动鞋上使用的碳板&#xff0c;也可被称为碳纤维增强环氧树脂材料&#xff0c;事实上是将碳纤维织成布&#xff0c;再浸入环氧树脂固化后形成的板材。它以较轻的重量达到了相当好的弹性和刚度。在上…

藏经阁(八)LCD控制器 ILI9341 解析

文章目录 TFT屏幕介绍LCD控制器ILI9341控制器内部框图ILI9341时序详解RGB565数据格式 TFT屏幕介绍 LCD(Liquid CrystalDisplay)的全称是液晶显示器&#xff0c;是现在用的比较多的手机屏幕材料&#xff0c;特点是价格便宜&#xff0c;使用普及广泛&#xff0c;在显示的时候需要…

Docker高级(完结)

一、DockerFile DockerFile简介 Docker是用来构建Docker镜像文件&#xff0c;由一条条docker指令和参数构成的脚本。 DockerFile构建过程 小总结 从应用软件的角度来看&#xff0c;Dockerfile、Docker镜像与Docker容器分别代表软件的三个不同阶段&#xff0c; Dockerfile是…

持续集成——web自动化测试集成实战

文章目录 一、Web自动化测试持续集成的好处二、环境准备三、Jenkins节点挂载四、节点环境的配置1、JDK2、Chrome 浏览器3、chromedriver4、Python3环境5、allure-commandline工具6、allure插件 五、本地运行待测代码(保证代码没有问题)六、库文件的导出七、Jenkins上运行代码配…

为什么mac插入了u盘没反应 苹果mac插上usb后怎么找到

U盘使用简单&#xff0c;便于携带&#xff0c;几乎每个mac用户都有一个u盘。使用新的u盘的时候&#xff0c;你有没有遇到过mac插入了u盘没反应的情况呢&#xff1f;如果你是初次接触Mac电脑&#xff0c;使用u盘可能会手足无措&#xff0c;因为Mac系统和Windows存在差异&#xf…