【问题标题】:cluster_formation.classic_config.nodes does not work of rabbitmqcluster_formation.classic_config.nodes 对 rabbitmq 不起作用
【发布时间】:2019-01-29 07:22:20
【问题描述】:

我有 2 个 rabbitmq 节点。 它们的节点名称是:rabbit@testhost1 和 rabbit@testhost2 我希望他们可以自动集群。

在 testhost1 上

# cat /etc/rabbitmq/rabbitmq.conf
cluster_formation.peer_discovery_backend = rabbit_peer_discovery_classic_config
cluster_formation.classic_config.nodes.1 = rabbit@testhost1
cluster_formation.classic_config.nodes.2 = rabbit@testhost2

在 testhost2 上

# cat /etc/rabbitmq/rabbitmq.conf
cluster_formation.peer_discovery_backend = rabbit_peer_discovery_classic_config
cluster_formation.classic_config.nodes.1 = rabbit@testhost1
cluster_formation.classic_config.nodes.2 = rabbit@testhost2

我先启动 rabbit@testhost1,然后再启动 rabbit@testhost2。

第二个节点没有加入第一个节点的集群。

虽然节点 rabbit@testhost1 可以使用 rabbitmqctl 命令加入 rabbit@testhost2:rabbitmqctl join_cluster rabbit@testhost2。 所以之间的网络应该没有问题。

你能给我一些关于为什么不能合并集群的想法吗?配置不正确?

我打开了调试日志,和rabbit_peer_discovery_classic_config相关的信息很少:

2019-01-28 16:56:47.913 [info] <0.250.0> Peer discovery backend rabbit_peer_discovery_classic_config does not support registration, skipping registration.

rabbitmq版本是3.7.8

【问题讨论】:

    标签: rabbitmq config


    【解决方案1】:

    您在尝试集群之前是否启动了节点没有集群配置?

    在将集群形成设置添加到配置文件之前,我已经使用默认配置启动了单个对等点。通过在没有集群配置的情况下启动节点,它似乎形成了自己的集群,并且在进一步启动时只会联系最后一个已知的集群(自身)。

    来自https://www.rabbitmq.com/cluster-formation.html

    同行发现的工作原理

    当节点启动并检测到它没有先前初始化的数据库时,它将检查是否配置了对等发现机制。如果是这种情况,它将执行发现并尝试按顺序联系每个发现的对等点。最后,它会尝试加入第一个可达对等体的集群。

    您应该能够使用rabbitmqctl reset 重置节点(警告:这会从管理数据库中删除所有数据,例如配置的用户和虚拟主机,并删除所有持久消息以及集群信息。)然后使用集群配置.

    【讨论】:

    • 谢谢!集群配置可以在代理第一次启动时工作。
    猜你喜欢
    • 1970-01-01
    • 2011-09-14
    • 2019-01-05
    • 1970-01-01
    • 1970-01-01
    • 2020-05-24
    • 2021-06-27
    • 2013-04-16
    • 1970-01-01
    相关资源
    最近更新 更多