我在命令执行结束时得到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秒
请有没有人有可能的解决方案/方法来帮助解决这个问题。
答案 0 :(得分:0)
这是一个配置不正确的mapred-site.xml
。 ResourceManager
可用的资源在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
)。请注意映射器/缩减器堆的大小应限制为小于分配给容器的内存。