RabbitMQ只允许“集群”中的一台服务器

时间:2015-04-15 22:57:16

标签: rabbitmq cluster-computing

目前我正在探索RabbitMQ的可能性。我正在尝试在虚拟机上集群3个RabbitMQ服务器(ubuntu14.04),在局域网中相互连接。

我成功集群了2个RabbitMQ服务器。 (所以我的.erlang.cookie是正确的,/ etc / hosts是正确的,机器可以互相ping,...)

服务器的配置文件是相同的。

我觉得奇怪的是,当我尝试将第三个RabbitMQ服务器连接到群集时,它会一直失败,直到我停止(已经)群集服务器上的rabbitmq-server应用程序。

尝试添加第3台服务器时,我在日志文件中收到以下错误:

=ERROR REPORT==== 16-Apr-2015::00:45:43 ===
Mnesia(rabbit@auser): ** ERROR ** Mnesia on rabbit@auser could not connect to node(s) [rabbit@virtual]

rabbit @ virtual是添加到群集的第二台服务器。所以看起来我只能构建一个桥而不是一个集群。我测试了当前的桥接连接,它工作正常。我做错了什么?

RabbitMQ服务器的配置文件如下:

[{rabbit,        [{tcp_listeners,    [5672]}]},
 {rabbitmq_mqtt, [{default_user,     <<"guest">>},
              {default_pass,     <<"guest">>},
              {allow_anonymous,  true},
              {vhost,            <<"/">>},
              {exchange,         <<"MQTT">>},
              {subscription_ttl, 1800000},
              {prefetch,         10},
              {ssl_listeners,    []},
              %% Default MQTT with TLS port is 8883
              %% {ssl_listeners,    [8883]}
              {tcp_listeners,    [1883]},
              {tcp_listen_options, [binary,
                                    {packet,    raw},
                                    {reuseaddr, true},
                                    {backlog,   128},
                                    {nodelay,   true}]}]}
].

1 个答案:

答案 0 :(得分:0)

原来你不应该克隆机器而只是更改主机名。如果你想构建一个RabbitMQ集群,可以使用3台纯独立机器。