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 ==
私がすでに試したこと:
Sudo cat /var/lib/rabbitmq/.erlang.cookie
。export ERL_EMPD_PORT=4370
netstat -an |grep 4369 | grep -i listen
所有者と権限も変更しました
Sudo chown rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookie
Sudo chmod 400 /var/lib/rabbitmq/.erlang.cookie
ポートを追加
Sudo iptables -I INPUT -p tcp --dport 4369 --syn -j ACCEPT
Sudo rabbitmqctlステータス
{listeners,[{clustering,25672,"::"},{amqp,5672,"::"}]},
* IPアドレスはサンプルのアドレスです。
エラーメッセージにあるように、ホスト名は解決されません。
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を削除してサービスを再起動するだけで、魅力的に機能します
以下のコマンドで問題が修正されました:
Sudo service rabbitmq-server start
理由:
それが誰かを助けることを願っています。