我正在设置一个从docs读取的RabbitMQ群集。
在设置时,它通过命令rabbitmqctl join_cluster rabbit@rabbit1
将Machine2与Machine1连接起来。现在什么是rabbit@rabbit1
?
我知道它的user@hostname
,但是当我触发此命令时,它会显示Error: {cannot_discover_cluster,"Cannot cluster node with itself"}
。
当我输入IP而不是主机名时,它会显示Error: {cannot_discover_cluster,"The nodes provided are either offline or not running"}
。
我也在 / etc / hosts 文件中添加了IP rabbit1
。
我到底错过了什么?
答案 0 :(得分:1)
“ Cannot cluster node with itself
”为真。您必须更改群集名称才能加入。使用set_cluster_name
来更改其他节点上的群集名称,然后再返回到该节点并将其加入新命名的群集。例如,
在node2上,
`rabbitmqctl set_cluster_name rabbit@new`
返回节点1,
`rabbitmqctl stop_app`
`rabbitmqctl reset`
`rabbitmqctl join_cluster rabbit@new`
`rabbitmqctl start_app`
很简单的方法。
答案 1 :(得分:0)
你正试图加入一个自己。
您有两个可能的错误:
header('Access-Control-Allow-Origin: *');
(错误的别名)function factory() {
var foo = 'bar';
var props = { b: 'c'};
var proto = {
method: function() { return foo; }
};
var obj = Object.create(proto);
Object.assign(obj, props);
return obj;
}
var obj = factory();
console.log(obj); // {b: 'c'}
console.log(obj.method()) // 'foo'
到/etc/hosts
答案 2 :(得分:0)
Rabbit @ rabbit1,
在这种情况下,rabbit1是rabbitmq服务器所在的计算机/主机的名称。
您可以使用像要在其中进行群集的Rabbit @ name_of_the_server这样的服务器名称。
您还可以看到当前rabbitmq主机的名称:
rabbitmqctl cluster_status
这将为您提供我的意思是主机名。
您需要确保在进行群集之前需要停止该计算机上的rabbitmq服务器,然后进行群集,然后重新启动rabbitmq节点。
检查此链接: