问题描述
最近,我使用1Master和2Node(作为从属)部署并实现RabbitMQ。 是否可以将RabbitMQ与1Master和5Nodes集群在一起? 为了记录1Master-2Nodes中的记录,我在下面使用了命令,它就像一个超级按钮。
sudo rabbitmqctl set_policy ha-all ".*" '{"ha-mode":"all"}'
sudo rabbitmqctl set_policy ha-two "^two\." \
'{"ha-mode":"exactly","ha-params":2,"ha-sync-mode":"automatic"}'
sudo rabbitmqctl set_policy ha-nodes "^nodes\." \
'{"ha-mode":"nodes","ha-params":["rabbit@node02","rabbit@node03"]}'
RabbitMQ Clustering (1 Master{node01} and 2 Slaves{node02,node03}
我应该对上面的命令进行哪些更改才能明白我的意思?关键是带有1Master和5Nodes的RabbitMQ。 非常感谢您对我的帮助。
解决方法
通过我找到解决方案的方式,这非常简单。
$ sudo rabbitmqctl set_policy ha-two "^five\." \
'{"ha-mode":"exactly","ha-params":5,"ha-sync-mode":"automatic"}'
$ sudo rabbitmqctl set_policy ha-nodes "^nodes\." \
'{"ha-mode":"nodes","ha-params":["rabbit@node02",rabbit@node03""rabbit@node04","rabbit@node05","rabbit@node06"]}'
就是这样。应该将其余的节点添加为ha节点,并让habmq-server set_policy具有ha-params 5的ha-five 5(在上面的第一个命令上)。
之后,应在第二个命令中通过set_policy将节点{02..06}引入到ha节点。
下图是最终结果: