Hadoop服务器上的虚拟内存错误

时间:2016-07-01 11:46:14

标签: hadoop

我在命令执行结束时得到Done的响应,但也得到响应:There are 4 pending tasks possibly being run by other workers

每当执行到MapReduce时,它会映射到100%然后降低到4%然后中断并抱怨Container运行超出虚拟内存限制。
我尝试编辑“mapred-site.xml”和“yarn-site.xml”文件以将特定内存分配给作业处理并再次运行作业但是当它到达MapReduce时,我仍然收到此Container错误:

  

exitCode:143由于:Container   [pid = 30255,containerID = container_1467369594931_0001_02_000001]是   超越虚拟内存限制。当前用法:205.4 MB的1 GB   使用的物理内存;使用3.0 GB的2.1 GB虚拟内存。杀   容器

还有一个HadoopJobError:

  

HadoopJobError :('流媒体作业失败,退出代码为1.此外,没有   跟踪网址发现。','packageJobJar:   [/var/lib/analytics-tasks/analyticstack/venv/local/lib/python2.7/site-packages/luigi/mrrunner.py,   /tmp/tmpdE5zuW/packages.tar,/tmp/tmpdE5zuW/job-instance.pickle,   / tmp / hadoop-hadoop / hadoop-unjar4084911391400860326 /] []   /tmp/streamjob4527588275110250460.jar tmpDir = null \ n','16 / 07/01   五点40分55秒

请有没有人有可能的解决方案/方法来帮助解决这个问题。

1 个答案:

答案 0 :(得分:0)

这是一个配置不正确的mapred-site.xmlResourceManager可用的资源在yarn-site.xml中提供。基于可用的资源,您应该在mapred-site.xml中为每个mapper / reducer容器分配可用资源。我在猜测 - 在mapred-site.xml内,您mapreduce.reduce.memory.mb的{​​{1}}值低于yarn.scheduler.minimum.allocation.mb。另请检查yarn-site.xml中的虚拟和物理内存比率(yarn.nodemanager.vmem-pmem-ratio)。请注意映射器/缩减器堆的大小应限制为小于分配给容器的内存。