4

1 つのノードに Nimbus をセットアップし、他の 2 つのノードに 2 つのスーパーバイザーをセットアップして、Apache Storm を実行しています。(workers=2 で) トポロジを起動した後、正しく実行されません。スーパーバイザ ノードの 1 つのワーカー ログに、次のエラーが表示されます。

2018-07-04 17:36:02.650 o.a.s.m.n.Client client-boss-1 [ERROR] connection attempt 1 to Netty-Client-hostname/X.X.X.X:6700 failed: org.apache.storm.shade.org.jboss.netty.channel.ConnectTimeoutException: connection timed out: hostname/X.X.X.X:6700

他のワーカー ノードで、次のエラーが表示されます。 2018-07-04 17:34:11.344 o.a.s.m.n.Client client-boss-1 [ERROR] connection attempt 3 to Netty-Client-hostname1/X.X.X.X:6700 failed: java.net.ConnectException: Connection refused: hostname1/X.X.X.X:6700

ワーカー ログに他のエラーはありません。これらのワーカーの 1 つを別のワーカー (同じサブネット上) に置き換えると、トポロジは完全に動作します。このため、問題は 2 つのワーカー ノード間の接続に関連しているようです。ただし、/etc/hosts ファイルは正しく設定されており (これらのいずれかとペアになった場合に正しく動作するワーカーと同じ)、両方のワーカーが相互に到達できます (ping/ssh)。Nimbus とこれらのワーカー間の接続は問題ありません (worker=1 のトポロジは、これらの各ワーカーで正しく実行されます)。

ここで何が問題なのか、今はわかりません。どんな助けでも大歓迎です。

編集:

これを理解するために多くの時間を費やした後、ポート 6700 での接続がワーカー ノードで許可されていないことがわかりました。ポートで着信 tcp 接続を許可するように iptables を編集しました。ワーカー ログにはまだいくつかの接続エラーが表示されますが、少なくとも現在、トポロジは正常に動作しています。

sudo iptables -A INPUT -p tcp --dport 6700 -j ACCEPT

4

0 に答える 0