前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >DriverDisassociated|Lostexecutor

DriverDisassociated|Lostexecutor

作者头像
codingforfun
发布2018-08-24 14:44:53
1.6K0
发布2018-08-24 14:44:53
举报

昨天在Spark Sql上执行几条涉及数据量几百G的Sql语句时频繁失败,日志中出现大量以下错误:

ERROR executor.CoarseGrainedExecutorBackend: Driver Disassociated [akka.tcp://sparkExecutor@ip-10-0-20-22:62262] -> [akka.tcp://sparkDriver@ip-10-0-20-30:14214] disassociated! Shutting down.

ERROR cluster.YarnClusterScheduler: Lost executor 124 on ip-10-0-20-22: remote Akka client disassociated

随后,ssh到10.0.20.22上看yarn的NodeManager的日志,发现下面这条日志:

INFO org.apache.hadoop.yarn.server.nodemanager.NMAuditLogger: USER=root OPERATION=Container Finished - Killed   TARGET=ContainerImpl    RESULT=SUCCESS  APPID=application_1428571334989_100355  CONTAINERID=container_1428571334989_100355_01_000281

从这条日志可以看出,该Container被yarn kill了(RESULT=SUCCESS不准确)

这个错误有以下特点:

  1. 只有数据量几百G的sql查询才会失败
  2. application的非常多的container被kill

结合以上特点,推断可能是oom(out of memory)了,但日志中又没有看到oom的报错且container是被yarn kill了,进一步推断可能是executor使用的内存超过了配置的值(通过spark.executor.memory设置),并且超出使用的内存量超过了spark.yarn.driver.memoryOverhead的值。

尝试将spark.yarn.driver.memoryOverhead调大至10G,执行原来失败的语句,成功,问题解决(如果是executor内存超了,相应调大spark.yarn.excutor.memoryOverhead的值)。


如果你遇到Driver Disassociated的问题,还有一个原因可能是executor连不上Driver,可能是网络问题或者host配置问题,这时你需要确认报错的container是否能连上Driver


本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015.04.24 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档