开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

flink on yarn模式 使用zk 请问下,可以做什么配置来从检查点重启呢?

flink on yarn模式 使用zk 做ha

zk抖动断开连接导致任务失败
但是任务失败时会清掉zk里的ha的数据,导致任务无法自动从检查点重启
请问下,可以做什么配置来从检查点重启呢?

展开
收起
真的很搞笑 2024-02-24 12:47:03 25 0
2 条回答
写回答
取消 提交回答
  • 关注 zk抖动问题 好像老版本有这个问题36165961be32b68ce0a792cb2b1fb4fb.png
    ,此回答整理自钉群“【②群】Apache Flink China社区”

    2024-02-24 16:49:42
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    为了实现Flink在YARN模式下使用ZooKeeper进行高可用性(HA)配置,并确保任务可以从检查点重启,您可以考虑以下配置和步骤:

    1. 配置ZooKeeper的quorum:确保您的Flink配置文件中设置了正确的high-availability.zookeeper.quorum,这通常是一个包含ZooKeeper集群地址的列表,例如node1:2181,node2:2181,node3:2181
    2. 设置Flink在ZooKeeper中的工作路径:通过high-availability.zookeeper.path.root配置项指定Flink在ZooKeeper中的工作路径,例如/flink
    3. 确保检查点元数据的持久化:Flink需要持久化存储checkpoint的元数据信息,包括最近一次已经完成的checkpoint。这通常是通过配置state.backend来实现的,可以选择如RocksDBStateBackend或FsStateBackend等后端来存储这些信息。
    4. 配置Yarn session模式:如果您使用的是Yarn session模式,确保您已经启动了一个长期运行的Flink集群。这样,即使任务失败,集群仍然可以保持运行状态,从而允许任务从最近的检查点重新启动。
    5. 设置Hadoop相关配置:确保您的Flink集群能够访问Hadoop的配置,这可以通过设置HADOOP_CONF_DIR环境变量来实现,指向包含Hadoop配置文件的目录。
    6. 调整资源分配策略:在Yarn模式下,Flink的任务会运行在YARN容器内,因此需要确保YARN的资源分配策略能够适应Flink任务的需求,以便在任务失败时能够及时恢复。

    总的来说,通过上述配置和步骤,您应该能够确保Flink在遇到ZooKeeper抖动导致的任务失败时,能够从最近的检查点重新启动任务。此外,建议在生产环境中对Flink集群进行充分的测试,以确保高可用性配置的正确性和稳定性。如果问题仍然存在,可能需要进一步检查Flink和ZooKeeper的日志,以确定是否有其他因素导致任务无法从检查点重启。

    2024-02-24 16:41:05
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    Flink CDC Meetup PPT - 龚中强 立即下载
    Flink CDC Meetup PPT - 王赫 立即下载
    Flink CDC Meetup PPT - 覃立辉 立即下载