首页 文章

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

提问于
浏览
0

我在命令执行结束时收到了 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

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 05:40:55

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

1 回答

  • 0

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

相关问题