Flink 1.12 yarn-cluster模式触发Savepoint with Yarn指定-yid报异常failed timeout问题及解决

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: 官方给出触发Savepoint with YARN的命令指定了-yid,测试后发现不应指定-yid。分析应该是早期版本需指定-yid,后期版本(至少Flink 1.12)不需要指定-yid,而官网文档未及时更新这个细节问题。

背景:

官方给出触发保存点

 https://nightlies.apache.org/flink/flink-docs-release-1.12/ops/state/savepoints.html

触发Savepoint with YARN

04-trigger savepoint.png



提交作业:

flink run -m yarn-cluster -yd -yjm 1024m -ytm 1024m -ynm flink-order-realtime -ys 2 /opt/flink_app/flink-order-realtime-1.0-SNAPSHOT.jar




触发Savepoint:

flink savepoint 8fffb22c9de48c698de385698acbbc5d hdfs://hadoop202:8020/flink/savepoints -yid application_1646373783800_0022




触发Savepoint失败:

01-savepoint问题.png




尝试解决:无效

修改flink-conf.yamls

akka.client.timeout: 300000




最终解决:有效

flink savepoint 8fffb22c9de48c698de385698acbbc5d hdfs://hadoop202:8020/flink/savepoints


Triggering savepoint for job 8fffb22c9de48c698de385698acbbc5d.

Waiting for response...

Savepoint completed. Path: hdfs://hadoop202:8020/flink/savepoints/savepoint-8fffb2-fda527b1531b

You can resume your program from this savepoint with the run command.




原因分析:

-m yarn-cluster或-t yarn-per-job 本质都是yarn-session

yarn-session多作业共一个集群, 作业与-yid是多对一, 触发Savepoint, 猜想不应指定-yid, 结果的确正常触发

猜想yarn-cluster也不指定-yid, 结果果然正常触发




补充分析:

为何说-m yarn-cluster或-t yarn-per-job 本质都是yarn-session?

flink run -t yarn-per-job 提交作业, 查看日志

02-yarn-per-job.png

flink run -m yarn-cluster -yd提交作业, 查看日志

03-yarn-cluster.png

均是Flink YARN session cluster, 可理解为特殊的只跑一个作业的yarn-session




总结:

有在网上看到flink savepoint指定-yid触发成功的图片,日志显示时间是2020-10月,猜想是版本和官方文档未修改导致的问题

查阅官网,发现Flink 1.12.0发行时间是2020-12月,且官方文档自Flink 1.5.0(2018-05月)触发Savepoint with Yarn部分便指定-yid

应该是早期版本可以指定-yid触发,后期版本(至少Flink 1.12)不可以,而官网文档未及时更新这个细节问题




相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
目录
相关文章
|
21小时前
|
存储 资源调度 关系型数据库
Flink CDC产品常见问题之yarn-session提交失败如何解决
Flink CDC(Change Data Capture)是一个基于Apache Flink的实时数据变更捕获库,用于实现数据库的实时同步和变更流的处理;在本汇总中,我们组织了关于Flink CDC产品在实践中用户经常提出的问题及其解答,目的是辅助用户更好地理解和应用这一技术,优化实时数据处理流程。
|
21小时前
|
canal SQL 关系型数据库
flink cdc 提交问题之提交任务异常如何解决
Flink CDC(Change Data Capture)是一个基于Apache Flink的实时数据变更捕获库,用于实现数据库的实时同步和变更流的处理;在本汇总中,我们组织了关于Flink CDC产品在实践中用户经常提出的问题及其解答,目的是辅助用户更好地理解和应用这一技术,优化实时数据处理流程。
|
21小时前
|
Oracle 关系型数据库 Java
Flink CDC产品常见问题之Flink CDC 使用jar包启动异常如何解决
Flink CDC(Change Data Capture)是一个基于Apache Flink的实时数据变更捕获库,用于实现数据库的实时同步和变更流的处理;在本汇总中,我们组织了关于Flink CDC产品在实践中用户经常提出的问题及其解答,目的是辅助用户更好地理解和应用这一技术,优化实时数据处理流程。
|
21小时前
|
SQL 消息中间件 Java
Flink问题之从SavePoint启动任务修改的代码不生效
Apache Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。本合集提供有关Apache Flink相关技术、使用技巧和最佳实践的资源。
332 2
|
21小时前
|
SQL 消息中间件 Java
Flink部署问题之带上savepoint部署任务报错如何解决
Apache Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。本合集提供有关Apache Flink相关技术、使用技巧和最佳实践的资源。
|
21小时前
|
SQL JSON Apache
Flink问题之嵌套 json 中string 数组的解析异常如何解决
Apache Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。本合集提供有关Apache Flink相关技术、使用技巧和最佳实践的资源。
229 1
|
21小时前
|
SQL 消息中间件 Kafka
flink问题之作业执行异常如何解决
Apache Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。本合集提供有关Apache Flink相关技术、使用技巧和最佳实践的资源。
95 2
|
21小时前
|
消息中间件 资源调度 Java
flink问题之1.10升级到1.11 提交到yarn失败如何解决
Apache Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。本合集提供有关Apache Flink相关技术、使用技巧和最佳实践的资源。
40 0
|
21小时前
|
消息中间件 API Apache
官宣|阿里巴巴捐赠的 Flink CDC 项目正式加入 Apache 基金会
本文整理自阿里云开源大数据平台徐榜江 (雪尽),关于阿里巴巴捐赠的 Flink CDC 项目正式加入 Apache 基金会。
1634 2
官宣|阿里巴巴捐赠的 Flink CDC 项目正式加入 Apache 基金会
|
21小时前
|
SQL Java API
官宣|Apache Flink 1.19 发布公告
Apache Flink PMC(项目管理委员)很高兴地宣布发布 Apache Flink 1.19.0。
1637 2
官宣|Apache Flink 1.19 发布公告