Amazon EC2 インスタンスおよびローカルで RabbitMQ に同様の質問が寄せられてい ますか? デスクトップから ec2のrabbitmqに接続 できませんが、異なるエラーメッセージが表示されます。
正しくセットアップされた Linux EC2 インスタンスで実行されている RabbitMQ サーバーがあります。カスタム ユーザーを作成し、キューへの読み取り/書き込みのアクセス許可を付与しました。ローカル クライアントを使用すると、メッセージを正しく受信できます。ポート (5672/25672) が開いていて、それらのポートに telnet で接続できるように、EC2 にセキュリティ グループを設定しました。また、次のように rabbitmq.conf を設定しました。
[
{rabbit, [
{tcp_listeners, [{"0.0.0.0",5672}]},
{loopback_users, []},
{log_levels, [{connection, info}]}
]
}
].
現時点では、サーバー上にクライアントがキューに公開されています。
同じキューからデータを消費する必要がある EC2 の外部のサーバーで別のクライアントを実行しています (消費は多くのプロット/グラフィック操作を行うため、EC2 で両方を実行することはできません)。
ただし、テストコードを使用して外部クライアントから接続しようとすると
try {
ConnectionFactory factory = new ConnectionFactory();
factory.setUri("amqp://****:****@****:5672/");
connection = factory.newConnection();
} catch (IOException e) {
e.printStackTrace();
}
次のエラーが表示されます。
com.rabbitmq.client.AuthenticationFailureException: ACCESS_REFUSED - 認証メカニズム PLAIN を使用してログインが拒否されました。詳細については、ブローカーのログファイルを参照してください。
ただし、接続しようとしたことがないかのように、ブローカーのログファイルには何もありません。ファクトリの個々のゲッター/セッター メソッドを使用して接続しようとしましたが、別のポートを使用してみました (それらを開くと共に)。
SSL を使用する必要があるのか、EC2 に接続しないのか疑問に思っていましたが、Web を読んでみると、うまくいくはずですが、よくわかりません。私がやろうとしていることを成功させ、それを文書化している人々の例を見つけることができません。
前もって感謝します