首页 > 其他分享 >RabbitMQ 双机 镜像集群模式

RabbitMQ 双机 镜像集群模式

时间:2024-12-03 18:10:30浏览次数:8  
标签:策略 队列 RabbitMQ cluster rabbitmqctl mode 镜像 ha 双机

目录

准备工作

#/etc/hosts
172.16.0.11 rabbitmq01
172.16.0.12 rabbitmq02

组建集群

rabbitmq01

rabbitmq-server -detached
rabbitmqctl status

#复制cookie
cp ~/.erlang.cookie rabbitmq02:~/

rabbitmq02

rabbitmqctl stop_app
rabbitmqctl join_cluster rabbit@rabbitmq01 #默认为磁盘节点
rabbitmqctl start_app
rabbitmqctl cluster_status

设置HA策略

rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all","ha-sync-mode":"automatic"}' --apply-to queues
rabbitmqctl list_policies

这条命令将使所有匹配模式 ^(即所有)按照指定的策略进行镜像。

ha-mode 设置为 all 表示所有的节点都会成为该队列的副本;

ha-sync-mode 设置为 automatic 表示自动同步队列内容。

--apply-to queues 为所有队列设置镜像策略,而不影响交换器

注意

如果没有指定--apply-to,则为all: 策略同时应用于队列和交换器

潜在的问题:

  • 不必要的配置:对于不需要应用策略的资源类型,这可能导致不必要的配置,增加管理复杂度。
  • 性能影响:如果策略涉及到额外的操作(如同步、复制等),则可能无意中增加了系统的负担。
  • 混淆与误解:团队成员可能会因为不清楚策略的实际作用范围而感到困惑,进而影响系统的维护和故障排查。
  • 兼容性问题:某些策略可能不适合特定类型的资源。比如,将一个设计用于队列的 TTL 策略错误地应用到了交换器上,可能会引发未定义的行为或错误。

https://www.rabbitmq.com/docs/3.13/parameters#operator-policy-definition

补充

# 想加入内存节点, join_cluster 要加 --ram 

#更改节点为磁盘或内存节点
rabbitmqctl stop_app
rabbitmqctl change_cluster_node_type <disc|ram>
rabbitmqctl start_app

# 退出集群命令
rabbitmqctl forget_cluster_node rabbit@rabbitmq01

命令行检验

## 查看集群状态
rabbitmqctl cluster_status
## 检查队列同步状态
rabbitmqctl list_queues name synchronised_slave_pids

登录管理界面检验

进入“Queues”页面,找到配置了镜像策略的目标队列,点击队列名称查看详细信息。

在队列详情页Details中,能看到ha-modeMirrors,会列出所有同步的镜像节点以及它们的状态。

标签:策略,队列,RabbitMQ,cluster,rabbitmqctl,mode,镜像,ha,双机
From: https://www.cnblogs.com/max27149/p/18584679

相关文章

  • 用rabbitmqadmin 模拟消息的创建、发布、订阅
    前言rabbitmqadmin工具可以方便地管理RabbitMQ的资源,包括创建交换机Exchanges、队列Queues、绑定Bindings,以及发布Publish和订阅Subscribe消息。确保你已经下载并安装了rabbitmqadmin,并且RabbitMQ管理插件是启用的。你可以从http://localhost:15672/cli/下载......
  • 麒麟v10 yum镜像源配置(转)
    v10sp3cat/etc/yum.repos.d/kylin_aarch64.repo###KylinLinuxAdvancedServer10-osrepo###[ks10-adv-os]name=KylinLinuxAdvancedServer10-Osbaseurl=https://update.cs2c.com.cn/NS/V10/V10SP3/os/adv/lic/base/$basearch/gpgcheck=1gpgkey=file:///etc......
  • SpringBoot集成RabbitMQ的四种交换机(Direct、Topic、Fanout、Headers)
    以下是四种RabbitMQ交换机类型(Direct、Topic、Fanout、Headers)的详细实例代码,展示如何分别实现并使用它们。1.DirectExchange(直连交换机)DirectExchange将消息根据路由键(RoutingKey)发送到指定的队列。配置代码@ConfigurationpublicclassDirectExchangeConfig{​......
  • 国内npm源镜像(npm加速下载) 指定npm镜像
    指定npm镜像npm官方原始镜像网址是:https://registry.npmjs.org/淘宝NPM镜像:http://registry.npmmirror.com阿里云NPM镜像:https://npm.aliyun.com腾讯云NPM镜像:https://mirrors.cloud.tencent.com/npm/华为云NPM镜像:https://mirrors.huaweicloud.com/repository/npm/网......
  • npm切换镜像源
    https://www.baidu.com/s?wd=npm%E5%88%87%E6%8D%A2%E9%95%9C%E5%83%8F%E6%BA%90&rsv_spt=1&rsv_iqid=0xa19732e100e93e87&issp=1&f=8&rsv_bp=1&rsv_idx=2&ie=utf-8&rqlang=cn&tn=baiduhome_pg&rsv_dl=tb&rsv_enter=1&oq=css......
  • 不修改内核镜像的情况下,使用内核模块实现高效监控调度时延
    一、背景在之前的博客调度时延的观测_csdn调度时延的观测杰克崔-CSDN博客 里,我们讲了多种监控调度时延的方法,有依靠系统现有节点来监控,但是依赖系统现有节点做不到每个单词调度时延的监控,也讲了通过修改内核代码,在内核计算调度时延的地方加逻辑去监控,这里说的加逻辑也可以......
  • 【消息队列】RabbitMq-声明队列与交换机
    通过Spring配置,Bean注入的形式依赖配置<!--AMQP依赖,包含RabbitMQ--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId></dependency>yaml文件配置spring:rabbitmq:host:......
  • 从 0 到 1 制作自定义镜像并用于训练(MPI+CPU/GPU)
    本章节介绍如何从0到1制作镜像,并使用该镜像在ModelArts平台上进行训练。镜像中使用的AI引擎是MPI,训练使用的资源是CPU或GPU。说明:本实践教程仅适用于新版训练作业。场景描述本示例使用Linuxx86_64架构的主机,操作系统ubuntu-18.04,通过编写Dockerfile文件制作自定义镜像。......
  • 从 0 到 1 制作自定义镜像并用于训练(Pytorch+CPU/GPU)
    本章节介绍如何从0到1制作镜像,并使用该镜像在ModelArts平台上进行训练。镜像中使用的AI引擎是PyTorch,训练使用的资源是CPU或GPU。说明:本实践教程仅适用于新版训练作业。场景描述本示例使用Linuxx86_64架构的主机,操作系统ubuntu-18.04,通过编写Dockerfile文件制作自定义镜像......
  • NPM配置镜像源
    1淘宝镜像源1.命令npmconfigsetregistryhttps://registry.npmmirror.com2.验证命令npmconfiggetregistry如果返回https://registry.npmmirror.com,说明镜像配置成功。2腾讯镜像源1、命令npmconfigsetregistryhttp://mirrors.cloud.tencent.com/npm/2.......