【发布时间】:2015-12-17 19:19:36
【问题描述】:
我们已经建立了一个包含 3 个节点的 RabbitMQ 集群。如果努力实现某种形式的负载平衡,我们将策略设置为仅在 2 个节点之间同步:
rabbitmqctl set_policy ha-2 . '{"ha-mode":"exactly","ha-params":2,"ha-sync-mode":"automatic"}'
当所有 3 个节点都在线时,这将按预期工作。
当我们关闭其中一个节点(以模拟故障)时,故障节点上的主控队列仍然可用(在从属节点上),但未同步到另一个节点。如果我们手动重新应用策略,队列就会按预期同步。
我们是否应该期望在一个节点使用此策略失败的情况下镜像所有队列?
【问题讨论】:
-
您使用的是哪个版本?我尝试创建相同的配置并且它工作正常。当我停止时,又添加了一个并且消息同步。
-
@Gas 目前在 3.2.4。在我发布后开始在 3.5.4 上设置集群,看看这是否有不同的工作方式。谢谢
-
你是对的@Gas,这在 3.5.4 上按预期工作
标签: rabbitmq rabbitmqctl