web-dev-qa-db-ja.com

RabbitMQエラー:ノードに接続できません:nodedown

2つのRhelインスタンスを使用してクラスタリングを実行しようとしています。お互いにpingでき、empd -namesコマンドを使用しようとしても、4369で稼働しています。Sudo rabbitmqctl join_cluster rabbit@ip-10-23-20-36としてコマンドを使用すると、以下のエラーが発生します。最初にstop_appも確認します。

Sudo rabbitmqctl join_cluster rabbit@ip-10-23-20-36

ノード 'rabbit @ ip-10-23-20-36'と 'rabbit @ ip-10-23-209-142'のクラスタリング...エラー:ノードに接続できません['rabbit @ ip-10-23-209 -142 ']:ノードダウン

診断

連絡しようとしました:['rabbit @ ip-10-23-209-142']

rabbit @ ip-10-23-209-142:* ip-10-23-209-142のepmd(ポート4369)に接続できません:nxdomain(存在しないドメイン)

現在のノードの詳細:-ノード名: 'rabbitmq-cli-80 @ ip-10-23-20-36'-ホームディレクトリ:/ var/lib/rabbitmq-Cookieハッシュ:u7nRIpJ40Fd356iLbkDO6Q ==

私がすでに試したこと:

  1. を使用して両方のインスタンスで同じであるCookie名を確認しました
    Sudo cat /var/lib/rabbitmq/.erlang.cookie
  2. Epmdポートも変更しましたexport ERL_EMPD_PORT=4370
  3. netstat -an |grep 4369 | grep -i listen
  4. プラグイン管理のGUIでホスト名を変更する。
  5. 所有者と権限も変更しました

    Sudo chown rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookie
    Sudo chmod 400 /var/lib/rabbitmq/.erlang.cookie
    
  6. ポートを追加

    Sudo iptables -I INPUT -p tcp --dport 4369 --syn -j ACCEPT
    
  7. Sudo rabbitmqctlステータス

    {listeners,[{clustering,25672,"::"},{amqp,5672,"::"}]},
    

* IPアドレスはサンプルのアドレスです。

7
Dileephell

エラーメッセージにあるように、ホスト名は解決されません。

rabbit@ip-10-23-209-142: * unable to connect to epmd (port 4369) on ip-10-23-209-142: nxdomain (non-existing domain)

これらのホスト名は、DNSまたは両方のホストの/etc/hostsで宣言する必要があります。次に、名前解決が機能していることをテストできます。 ping(1):

ping ip-10-23-209-142 # from ip-10-23-20-36

今日と同じエラーが発生し、提案は無意味です。

したがって、まず、/ var/log/rabbitmq/rabbitmq @ [ホスト名] .logでログを確認する必要があります。そうしないと、時間を無駄にしてしまいます。次に、そこで何が起こったかを確認できます。

私の場合、ファイル/var/db/rabbitmq/mnesia/rabbit@www/cluster_nodes.configにエラーが報告されました

 Error description:


{error,{cannot_read_file,"/var/db/rabbitmq/mnesia/rabbit@www/cluster_nodes.config",
                        {1,erl_parse,["syntax error before: ","'@'"]}}}

だから、私はこのフォルダ/ var/db/rabbitmq/mnesia/rabbit @ wwwを削除してサービスを再起動するだけで、魅力的に機能します

2
Dat TT

以下のコマンドで問題が修正されました:

Sudo service rabbitmq-server start

理由:

  • WindowsとそのLinuxサブシステム(Ubututu 18、Microsoft Storeからダウンロード)の両方に同じマシンのrabbitmqを持っている。
  • Windows OSでのrabbitmqのアンインストール
  • 上記のコマンドを実行しました

それが誰かを助けることを願っています。