Spark任务运行失败,ApplicationMaster出现物理内存溢出异常
Spark任务运行失败,ApplicationMaster出现物理内存溢出异常
现象描述
在YARN上运行Spark任务失败,ApplicationMaster出现物理内存溢出异常。报错内容如下:
2016-05-12 19:27:18,078 | WARN | Container Monitor | Container [pid=205193,containerID=container_1462240697997_3649_01_000001] is running beyond physical memory limits. Current usage: 4.5 GB of 4.5 GB physical memory used; 6.8 GB of 22.5 GB virtual memory used. Killing container.
可能原因
日志中显示“Killing container”,直接原因是物理内存使用超过了限定值,YARN的NodeManager监控到内存使用超过阈值,强制终止该container进程。
定位思路
无。
基于Flink+Doris构建高性能高扩展的全端实时数据仓库教程
数据仓库建模和实战教程(理论和业务结合)
Python实战金融风控回归模型(附代码)
【Python入门教程】零基础教程/全套教程|港大学霸系统精讲
MSF渗透实战训练营——入门至入狱系列【网络安全】
基于Flink+Hudi构建企业万亿级云上实时数据湖教程
python量化交易
自动化运维脚本编程:CMD/DOS批处理实战案例学习
数据仓库建模和实战教程(理论和业务结合)
Python实战金融风控回归模型(附代码)
【Python入门教程】零基础教程/全套教程|港大学霸系统精讲
MSF渗透实战训练营——入门至入狱系列【网络安全】
基于Flink+Hudi构建企业万亿级云上实时数据湖教程
python量化交易
自动化运维脚本编程:CMD/DOS批处理实战案例学习
处理步骤
在Spark客户端“spark-defaults.conf”配置文件中增加如下参数,或者在提交命令时添加–conf指定如下参数,来增大memoryOverhead。
- spark.yarn.driver.memoryOverhead:设置堆外内存大小(cluster模式使用)。
- spark.yarn.am.memoryOverhead:设置堆外内存大小(client模式使用)。