首页 文章

TaskManager的Flink状态后端

提问于
浏览
0

我有一个Flink v1.2设置,1个JobManager,2个TaskManagers,每个都在自己的VM中 . 我将状态后端配置到文件系统,并在每个上述主机的情况下将其指向本地位置(state.backend.fs.checkpointdir:file:/// home / ubuntu / Prototype / flink / flink-checkpoints) . 我已将并行性设置为1,每个taskanager都有1个插槽 . 然后,我在JobManager上运行一个事件处理作业,将其分配给TaskManager . 我终止了运行该作业的TaskManager,并且在失败的尝试失败后,几次失败的TaskManager Flink尝试在剩余的TaskManager上运行作业 . 此时它再次失败,因为它无法找到相应的检查点/状态:java.io.FileNotFoundException:/ home / ubuntu / Prototype / flink / flink-checkpoints / 56c409681baeaf205bc1ba6cbe9f8091 / chk-14 / 46f6e71d-ebfe-4b49-bf35-23c2e7f97923 (没有相应的文件和目录)

文件夹/ home / ubuntu / Prototype / flink / flink-checkpoints / 56c409681baeaf205bc1ba6cbe9f8091仅存在于我杀死的TaskManager中,而不存在于另一个上 .

我的问题是,如果我想要上述功能,我应该为所有任务管理器设置相同的检查点/状态位置吗?

谢谢!

1 回答

  • 0

    您使用的检查点目录需要在构成Flink群集的所有计算机之间共享 . 通常这可能是HDFS或S3,但可以是任何共享文件系统 .

相关问题