任务失败恢复
当任务失败时,Flink需要重新启动失败的任务和其他受影响的任务,使任务恢复到正常状态。
重新启动策略和故障转移策略用于控制任务重新启动。重新启动策略决定是否以及何时可以重新启动失败/受影响的任务。故障转移策略决定应该重新启动哪些任务以恢复作业。
一、重启策略
集群可以使用默认的重新启动策略启动,当没有定义特定于作业的重新启动策略时,总是使用该策略。如果作业提交时带有重启策略,则该策略将覆盖集群的默认设置。
默认重启策略是通过Flink的配置文件flink-conf.yaml设置的。配置参数restart-strategy.type定义采用哪种策略。如果检查点未启用,则使用“不重启(no restart)”策略。如果检查点已激活且未配置重启策略,则使用固定延迟(fixed-delay)策略,并使用Integer.MAX_VALUE重启尝试。
restart-strategy.type定义在作业失败时使用的重新启动策略,可接收的值为String类型,包括:
- none, off, disable:无重启策略。
- fixeddelay, fixed-delay:固定延迟重启策略。
- failurerate, failure-rate:故障率重启策略。
- exponentialdelay, exponential-delay:指数延迟重启策略。
如果禁用检查点,默认值为none。如果启用了检查点,默认值为fixed-delay,带有Integer.MAX_VALUE重新启动尝试和'1 s'延迟。
除了定义默认的重新启动策略外,还可以为每个Flink作业定义一个特定的重新启动策略 ......
......
抱歉,只有登录会员才可浏览!会员登录