1

Apache Spark EC2 スクリプトを使用してクラスターを起動しているときに、ポケットに当たり始めているバグを発見しました。スレーブの数を指定する場合: 制限以上の数を入力すると、クラスタは最大数のスレーブで起動されますが、マスターは起動されません! これにより、スレーブ、つまりクラスターを制御できなくなります。

Apache Spark EC2 スクリプトを使用してマスターのみを起動する方法が見つかりませんでした。マスター用のスペースを確保するために、スレーブの 1 つを手動でシャットダウンしました。ただし、スクリプトを再起動しようとすると、次のように表示されます。

Searching for existing cluster my_cluster...
Found 0 master(s), 4 slaves
ERROR: There are already instances running in group my_cluster-master
or my_cluster-slaves

これを克服するには、AWS コンソールにログインし、すべてのクラスターを終了してから再起動する必要があります。Amazon は 1 時間ごとに課金されるため、クラスターの最大数に相当する 1 時間分の料金が請求されます。すべて無料です。

スレーブが既に存在する場合にマスターを起動する方法はありますか?

4

1 に答える 1

1

これは、spark-ec2 が EC2 に対して 2 つの個別のリクエストを作成して、インスタンスを割り当てるためです。1 つはマスター用、もう 1 つはスレーブ用です。

ご想像のとおり、スレーブのにマスター インスタンスが割り当てられ、これが問題の原因となっています。

スレーブがすでに存在する場合、マスターを起動する方法はありません。マスターがすでに存在する場合にスレーブを起動するという逆の方法のみがサポートされています。

スレーブの後にマスターを起動するこの動作は、バグのように聞こえます。

修正するために報告したい場合は、EC2 コンポーネントの下で Spark 用のApache JIRAで問題を作成することをお勧めします。見てみます。

于 2015-04-17T19:45:11.260 に答える