Rabbit MQハンドシェイクタイムアウト

Rabbit MQハンドシェイクタイムアウト

私のUbuntu AWSサーバーのDockerでRabbitMQを実行しており、ローカルPCアプリケーションから接続します。 nginxでhttpsドメインを設定した後に競合が発生しました(これが原因であるかどうかはわかりません)。

telnet ip portDockerログを表示するために上記のコマンドを介してConnection closed by foreign host. 接続しようとしました。

2020-10-02 17:20:57.873 [info] <0.546.0> Resetting node maintenance status
2020-10-02 17:31:23.071 [info] <0.1670.0> accepting AMQP connection <0.1670.0> (84.54.87.17:58935 -> private_ip:5672)
2020-10-02 17:31:23.071 [error] <0.1670.0> closing AMQP connection <0.1670.0> (84.54.87.17:58935 -> private_ip:5672):
{handshake_timeout,handshake}

興味深いことに、Telnet経由でRabbit_managementプラグインに接続すると、同じエラーが発生します。ただし、ブラウザからRabbit_managementにアクセスできます。

AWS境界ルールとufwポートが開いています。

私のアプリケーション(rabbitmqクライアントの場合はPythonとaio_pika lib)を実行すると、次のエラーが発生します。

Could not get addresses to use: [Errno -2] Name or service not known (http)

この問題をどのように解決しますか?

PS 私はドメイン名ではなく、Elastic IPを使用してウサギを接続します。しかし、とにかく動作するはずです。

答え1

問題はプロトコルです。私の場合、受信したhttpリクエストをブロックしたときにhttp:// ipが誤ったリクエストURLであるため、iphttpプロトコルを無効にする必要があります。

関連情報