【问题标题】:Rabbitmq: Unable to join_cluster from a node using FQDN to a node without FQDNRabbitmq:无法从使用 FQDN 的节点加入集群到没有 FQDN 的节点
【发布时间】:2019-05-02 15:16:43
【问题描述】:

我有一个有 2 个节点的集群,它们都没有使用 FQDN:rabbit@server1 和 rabbit@server2。现在我添加了第三个 rabbitmq 节点,它使用 FQDN:rabbit@server3.mycompany.com。当我运行rabbitmqctl join_cluster rabbit@server1

Clustering node 'rabbit@server3.mycompany.com' with rabbit@server1 ...
Error: unable to connect to nodes [rabbit@server1]: nodedown

DIAGNOSTICS
===========

attempted to contact: [rabbit@server1]

rabbit@server1:
  * connected to epmd (port 4369) on server1
  * epmd reports node 'rabbit' running on port 25672
  * TCP connection succeeded but Erlang distribution failed
  * suggestion: hostname mismatch?
  * suggestion: is the cookie set correctly?
  * suggestion: is the Erlang distribution using TLS?

current node details:
- node name: 'rabbitmq-cli-65@server3.mycompany.com'
- home dir: /home/rabbitmq
- cookie hash: 6P4hzwN1u+rBCLZkYA2zUQ==

我已经使用了所有的 cookie,所有 3 台服务器都相同。还有什么问题?

【问题讨论】:

    标签: rabbitmq rabbitmqctl


    【解决方案1】:

    Erlang 不支持你想做的事情。

    如果您使用至少一个 FQDN 名称,则它们都必须是 FQDN 名称,并且您必须将 "long names" 与 RabbitMQ 一起使用。

    在所有 RabbitMQ 节点上使用此内容创建 /etc/rabbitmq/rabbitmq-env.conf 文件:

    USE_LONGNAME=true
    

    创建文件后,确保每个节点名称的 FQDN 在 DNS 中解析。然后,重启所有的 RabbitMQ 节点,你就应该设置好了。

    同样,您不能混合使用短名称和长名称 (FQDN)。如果您还有其他问题,请在邮件列表中询问。


    注意:RabbitMQ 团队会监控 rabbitmq-users mailing list,并且有时只回答 StackOverflow 上的问题。

    【讨论】:

      【解决方案2】:

      我希望您已经检查了您的实例的主集群节点端口的可用性,这些端口必须添加到集群中。如果一切正常,尝试将 server1 主机名添加到 /etc/hosts 中。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-01-15
        • 2019-07-05
        • 2020-05-24
        • 2023-03-13
        • 1970-01-01
        • 1970-01-01
        • 2016-12-14
        • 1970-01-01
        相关资源
        最近更新 更多