2017-06-19 15 views
1

Flink 1.3.0の弾力性機能をテストしています。私は、チェックポイントを有効にし、固定遅延の再起動ポリシーを持つ仕事があります。 TaskManager JVMの1つを終了すると、しばらくすると、残りのノードでジョブが正しく再開されます。ただし、新しいノードを追加すると、そのノードを使用するためにジョブは自動的に再起動されません。Flinkジョブを再起動して追加したTaskManagerを使用する方法

私はbin/flink stop <jobId>を使用しようとしましたが、それは常に私が追加ノードを利用するようにジョブを再開することができますどのように私にjava.lang.IllegalStateException: Job with ID <jobId> is not stoppable.

を与えますか?

答えて

3

Flink 1.3は動的再スケーリングを提供せず、新たに利用可能なリソースを利用するためにジョブを自動的に再起動しません。このようなシナリオでジョブを再開するには、セーブポイントを取得し、並列性を高め、セーブポイントからジョブを再起動する必要があります。

flink cancel -s [targetDirectory] <jobID> 

をしてから

flink run -s <savepointPath> ... 

を経由して、それを再起動セーブポイントの詳細についてはCLI docssavepoint docsを参照してください、しかし、あなたにセーブポイントを考えることができます:あなたはこのようなセーブポイントでジョブをキャンセルすることができますユーザーがトリガしたチェックポイント。

Apache Flink® at MediaMath: Rescaling Stateful Applications in Productionは、内部的にリスケーリングがどのように機能するかについて、多くの詳細を持つデータ・アーティスのブログ記事です。

関連する問題