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

RabbitMQ只允许“集群”中有一台服务器,rabbitmq,cluster-computing,Rabbitmq,Cluster Computing,目前我正在探索拉比的可能性。我正在尝试将3个RabbitMQ服务器群集到虚拟机ubuntu14.04上,这些服务器在LAN中相互连接 我成功地将2台RabbitMQ服务器群集。所以my.erlang.cookie是正确的,/etc/hosts是正确的,机器可以相互ping 服务器的配置文件相同 我觉得奇怪的是,当我尝试将第三个RabbitMQ服务器连接到集群时,它一直失败,直到我停止已经集群化的服务器上的RabbitMQ服务器应用程序 尝试添加第三台服务器时,日志文件中出现以下错误: =ERRO

目前我正在探索拉比的可能性。我正在尝试将3个RabbitMQ服务器群集到虚拟机ubuntu14.04上,这些服务器在LAN中相互连接

我成功地将2台RabbitMQ服务器群集。所以my.erlang.cookie是正确的,/etc/hosts是正确的,机器可以相互ping

服务器的配置文件相同

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

尝试添加第三台服务器时,日志文件中出现以下错误:

=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}]}]}
].

事实证明,您不应该克隆计算机,而应该只更改主机名。如果要构建RabbitMQ集群,请使用3台纯独立的计算机