我使用的是flink在docker flink安装的ecs中运行。我已经启用了外部化的检查点到awss3 state.checkpoints.dir
至flink-conf.yaml中的s3。
现在根据Flink这里的文件,如果我们想从一个检查点恢复,以防失败,我们必须说 bin/flink run -s :checkpointMetaDataPath [:runArgs]
但我用 FLINK_HOME/bin standalone-job.sh start-foreground
. 所以我不知道我的flink工作在失败的情况下如何从外部化的检查点恢复。
我们真的需要一些从检查点恢复的配置选项吗?作为重启策略的一部分,jm不能自动从状态存储读取最后的偏移量吗?我是Flink的新手。
1条答案
按热度按时间vatpfxk51#
仅仅引用dockerfile无法启动flink作业。它只会启动一个能够执行flink作业的flink会话集群。下一步是使用
bin/flink run
提交工作。一旦你有了一个作业,它通过StreamExecutionEnvironment.enableCheckpointing
,提交并运行它将为配置的位置创建检查点。如果启用了保留检查点,则可以取消作业并通过从检查点恢复作业
bin/flink run -s ...
.作业群集
如果正在运行每个作业群集,其中映像已经包含用户代码jar,则可以从保存点恢复,方法是使用
--fromSavepoint <SAVEPOINT_PATH>
作为命令行参数。请注意<SAVEPOINT_PATH>
需要从运行作业管理器的容器访问。更新
以便在使用时从检查点恢复
standalone-job.sh
你得打电话