2017-06-19 204 views
1

我正在测试Flink 1.3.0中的弹性特征。我有一个checkpointing启用和固定延迟重启策略的工作。当我终止一个TaskManager JVM时,一段时间后,作业在其余节点上正确重新启动。但是,当我添加新节点时,作业不会自动重新启动以使用它。如何重新启动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是来自数据Artians最近的一篇博客文章,详细介绍了如何在内部进行缩放。

相关问题