恢复作业
已运行过的Flink作业开启CheckPoint功能后,支持从指定CheckPoint恢复作业,用户可以指定某个CheckPoint,从CheckPoint重新执行作业。同时Flink作业提交后也支持触发SavePoint和从指定SavePoint恢复作业,用户可以停止作业并保存SavePoint,然后选择从已经保存的SavePoint重新执行作业,恢复作业状态。
作业状态为“运行失败”、“运行成功”、“提交失败”、“停止”、“草稿”、“已保存”的作业可以删除指定CheckPoint和SavePoint。
指定CheckPoint并恢复作业
作业状态为“运行失败”、“运行成功”和“停止”的作业可以进行Checkpoint故障恢复。
- 确认作业已开启CheckPoint功能。
可参考创建作业在作业开发界面,查看是否已勾选“开启CheckPoint”,未开启CheckPoint功能的作业无法指定CheckPoint恢复作业。
- (可选)设置CheckPoint的数量。
登录Manager,选择“集群 > 服务 > Flink > 配置 > 全部配置”,搜索参数“state.checkpoints.num-retained”,设置CheckPoint数量,默认为“5”。
- 指定CheckPoint并恢复作业。
- 访问Flink WebUI,请参考访问Flink WebUI。
- 单击“作业管理”进入作业管理页面。
- 在待恢复的作业的“操作”列,单击“更多”,展开恢复作业选项。
- 选择历史CheckPoint恢复作业:单击该选项后将展示该作业的CheckPoint列表,数量与2中参数“state.checkpoints.num-retained”的值一致。根据界面提示选择指定CheckPoint恢复作业。
- 从最新CheckPoint恢复作业:单击该选项后作业将从最新一次CheckPoint恢复作业。
指定SavePoint并恢复作业
- 作业状态为“运行中”的作业可以停止作业并保存SavePoint。
- 作业状态为“运行失败”、“运行成功”和“停止”的作业可以进行SavePoint故障恢复。
- (可选)设置Flink用于恢复和更新作业的保存点存储目录。
登录Manager,选择“集群 > 服务 > Flink > 配置 > 全部配置”,搜索参数“state.backend.fs.savepointdir”,在“Flink->FlinkServer”项中该参数的值为保存点存储目录,默认为“hdfs://hacluster/flink/savepoint”。
- 指定SavePoint并恢复作业。
- 访问Flink WebUI,请参考访问Flink WebUI。
- 单击“作业管理”进入作业管理页面。
- 在指定作业的“操作”列选择“更多 > 停止作业并保存SavePoint”,根据界面提示停止作业并保存作业的SavePoint。
- 若作业已保存了历史SavePoint,支持选择历史SavePoint恢复作业,此时可不执行该步骤。
- 单击“停止作业并保存SavePoint”后,系统会删除最新的CheckPoint,此时不支持从最新CheckPoint恢复作业,请选择历史SavePoint恢复作业。
- 待作业成功保存SavePoint后,在该作业的“操作”列选择“更多 > 选择历史SavePoint恢复作业”,根据界面提示恢复作业。