flink执行任务运行10h以后挂掉并且报错

问题描述

flink运行jar包任务,运行几个小时或者1天以后,任务就会挂掉!!!

第一个错误是

2023-02-01 23:43:08,083 INFO org.apache.flink.runtime.executiongraph.ExecutionGraph [] - Window(TumblingEventTimeWindows(60000), EventTimeTrigger, getHvcDownLine) -> Sink: Unnamed (1/1) (8672ad64cfc4ddce37756e60242432be) switched from RUNNING to FAILED on 11.11.1.102:40227-006cac @ flinkc (dataPort=37255).

java.util.concurrent.TimeoutException: Heartbeat of TaskManager with id 11.11.1.102:40227-006cac timed out.

第二个错误是

2023-02-01 23:43:08,111 INFO org.apache.flink.runtime.executiongraph.ExecutionGraph [] - Job T4301_productDownLine (fef0fb9f856277bc9d9da05df7d63bf6) switched from state FAILING to FAILED.

org.apache.flink.runtime.JobException: Recovery is suppressed by NoRestartBackoffTimeStrategy

第三个错误是

2023-02-03 23:42:35,875 ERROR akka.remote.Remoting [] - Association to [akka.tcp://flink-metrics@11.11.1.102:34546] with UID [-1590851144] irrecoverably failed. Quarantining address.

java.util.concurrent.TimeoutException: Remote system has been silent for too long. (more than 48.0 hours)

百度的建议是:

  1. java程序里面添加重启策略

  1. java程序的jar包版本与flink集群有冲突

  1. flink集群的slot分配有问题

  1. flink集群的心跳设置太短了,设置长一点 heartbeat.timeout: 180000

  1. flink中flink-conf.yaml 优先使用flink集群有的jar包

隔了大概2个月以后,再次评论 2023-03-27日

我用了hadoop的集群的yarn,以及分析了taskmanager和jobmanager的内存大小、以及分析每个错误的原因。

我觉得可能是1、因为代码错误运行时间长了有bug,这个是最有可能的(90%) 当时默认的内存是1G,不可能存在着内存不够的原因。以上百度的解决方案,我后面一个都没有用到,依然健壮

2、没仔细分析Log日志,很多时候想要节省时间走捷径,但是发现走的都是弯路

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_37591637

请给我持续更新的动力~~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值