我在DC / OS上使用docker运行spark。当我提交火花作业时,使用以下内存配置
Driver 2 Gb
执行人2 Gb
执行人数为3。
火花提交工作正常,1小时后,由于OOM(退出代码137),docker容器(工作容器)崩溃。但我的火花日志显示1Gb +的内存可用。
奇怪的是在容器中运行的同一个jar,在独立模式下正常运行了近20个小时。
这是Spark contianers的正常行为,还是有什么东西我做错了。或者我还需要为docker容器使用任何额外的配置。
由于
答案 0 :(得分:0)
看起来我有类似的问题。您是否查看了操作系统上的缓存/缓冲区内存使用情况?
使用以下命令可以获得有关操作系统内存使用类型的一些信息:
free -h
在我的情况下,缓冲区/缓存一直在增长,直到Container中没有更多可用内存。在我的情况下,VM是在AWS上运行的CentOS机器,当发生这种情况时它完全崩溃。