31

我正在尝试使用厨师集群兔子

这是我的错误。我关闭了第二个节点上的所有兔子。

rabbitmqctl join_cluster --ram rabbit@ip-10-158-xxx-xxx

Error: mnesia_unexpectedly_running

所以..这是什么交易?我从http://agiletesting.blogspot.com/2010/05/rabbitmq-clustering-in-ubuntu.html尝试了这个,它是为了删除 /var/lib/rabbitmq/mnesia。不去。它不在什么服务器上运行?全部?

谢谢

4

6 回答 6

48

确保sudo rabbitmqctl stop_app在发出集群命令之前调用。这对我来说似乎是个问题。

然后确保你打电话sudo rabbitmqctl start_app重新开始:)

于 2013-11-29T04:45:06.970 回答
5

要指出@Itai Ganot 的一条非常rabbitmqctl stop_app重要的评论,它不是立即直观的:您需要在除一个节点之外的所有节点上运行。如果您rabbitmqctl stop_app在所有节点上运行,您将收到不同的消息:Error: mnesia_not_running.

简而言之:

  • Error: mnesia_unexpectedly_running意思是“你需要rabbitmqctl stop_app在这个节点上运行
  • Error: mnesia_not_running意思是“你需要rabbitmqctl start_app在你试图集群的节点上运行”
于 2016-04-14T16:13:47.530 回答
3

您需要从尝试连接的节点复制 cookie

让我们以 2 个节点为例:rabbit@node1 和 rabbit@node2

  1. 转到rabbit@node1并从 cat 复制 cookie/var/lib/rabbitmq/.erlang.cookie
  2. rabbit@node2删除当前的cookie并粘贴新的。
  3. 在同一节点上执行以下命令

    /usr/sbin/rabbitmqctl stop_app
    /usr/sbin/rabbitmqctl reset
    /usr/sbin/rabbitmqctl cluster rabbit@node1
    

那应该这样做。

此处记录了相同的过程

于 2013-05-03T20:44:00.807 回答
2

在尝试创建由两个 rabbitmq 服务器组成的集群时,我也收到了同样的错误。

据我所知,创建集群的实际过程与其他答案中描述的过程略有不同,但最终对我有用:

在你有两个或更多节点运行 rabbitmq-server 之后,选择一个服务器,这就是你不接触的那个 - 我们称之为 rabbitmaster,在所有其他节点中,按照以下步骤操作:

1. Make sure the rabbitmq-server is not running.
2. # su - rabbitmq
3. $ rabbitmq-server -detached
4. $ rabbitmqctl cluster_status
5. $ rabbitmqctl stop_app
6. $ rabbitmqctl join_cluster rabbit@rabbitmaster
7. $ rabbitmqctl start_app

现在您可以运行rabbitmqctl cluster_status并查看刚刚配置的节点和 rabbitmq 主节点。

更多信息可以在RabbitMQ 官方网站上找到。

于 2015-03-26T11:29:07.037 回答
0

我不喜欢回答我自己的问题,但是聚集 rabbin usig chef 真的很痛苦。通过不将 -N 选项与引导程序一起使用解决了 rabbit 的问题。Rabbit 不喜欢更改主机名。

所以..按照兔子网站上的文档进行聚类按预期工作。如果您将 -N 选项与 chef 一起使用...将会出现主要问题。

于 2013-01-04T02:33:29.113 回答
0

这意味着您尝试链接的当前节点上的应用程序正在运行。在将应用程序加入主节点之前停止当前节点上的应用程序。

sudo rabbitmqctl stop_app rabbitmqctl join_cluster --ram rabbit@ip-10-158-xxx-xxx. 然后 rabbitmqctl start_app

还要确保主节点上的应用程序正在运行。否则你会得到Error: mnesia_not_running错误。

于 2020-12-22T11:00:14.023 回答