使用单个jobmanager进行恢复

oyt4ldly  于 2021-06-21  发布在  Flink
关注(0)|答案(2)|浏览(285)

我正在尝试恢复我的作业,并在我的作业管理器出现故障且无法成功重新启动作业时进行状态。
据我所知,taskmanager恢复是由jobmanager协助完成的(这与预期一样有效),而jobmanager恢复是通过zookeeper完成的。
我想知道是否有一种方法可以恢复没有Zookeeper的工作经理?
我正在使用docker进行设置,所有检查点和保存点都将持久化到Map卷。
当所有的工作经理都倒下的时候,Flink能康复吗?我可以等待单个jobmanager重新启动。
重新启动jobmanager时,出现以下异常: org.apache.flink.runtime.rest.NotFoundException: Job 446f4392adc32f8e7ba405a474b49e32 not found 我已在我的 flink-conf.yaml ```
state.backend: filesystem
state.checkpoints.dir: file:///opt/flink/checkpoints
state.savepoints.dir: file:///opt/flink/savepoints

我认为我的问题可能是jar在作业管理器重新启动时被删除,但是我不知道如何解决这个问题。
i7uaboj4

i7uaboj41#

您可以将运行集群作为“flink作业集群”进行检查。当容器出现时,这将自动启动烘焙到docker图像中的作业。你可以在这里读更多。

7z5jn7bk

7z5jn7bk2#

目前,Flink只支持从灾难中恢复过来 JobManager 如果您使用的是zookeeper,则为错误。然而,从理论上讲,如果你能保证只有一个 JobManager 一直在跑。有关更多信息,请参阅此答案。

相关问题