2016-03-31 37 views
0

我使用集群和镜像队列为rabbitmq设置实验室。 我使用的是centos 7和rabbitmq-server 3.3.5。与三个服务器(ha1,ha2,ha3)。未设置镜像策略的HA RabbitMQ

我刚刚加入ha1和ha2到ha3,但不设置镜像队列的策略。当我在ha1服务器上测试名为“hello”的创建队列时,在检查ha2和ha3使用rabbitmqctl列表队列之后,hello队列在群集上的所有节点上都存在。

我有一个问题,为什么我不设置策略来镜像群集上的队列,但它自动镜像队列已在群集上的任何节点上创建?

请给我一些关于我有错误的建议或者只在群集上加入节点,队列将在群集的所有节点上都是镜像。谢谢

回答

0

在rabbitmq中,默认情况下,一个队列仅存储到一个节点。在创建群集时,队列在节点间可用。

但它并不意味着该队列是镜像的,如果节点关闭队列被标记为关闭并且您无法访问。

假设创建一个队列的节点,队列会工作到节点已启动,如:

enter image description here

如果节点已关闭,你将有:

enter image description here

你应该总是应用镜像策略,否则你可能会丢失信息

+0

是的,谢谢亲。我忘了测试时,创建队列的主集群。当主机的队列集群出现故障时,队列将在所有群集上被删除 –

+0

欢迎您使用旧版本,我建议更新到'3.6.1'版本。如果你认为答案是正确的,请接受。 @SơnLâm – Gabriele