LW Senior Architect

CDH - application master介绍

2019-01-02
Wu Liu

介绍application master的作用以及发现的问题。 ApplicationMaster会为该作业所有的map和reduce任务向ResourceManager请求容器(包括内存资源和CPU资源);附着心跳信息的请求包括map任务的本地化信息,如输入分片所在的主机和机架信息。ResourceManager根据这些信息完成分配决策,理想情况会将任务分配给数据本地化的节点。

问题

问题1:Yarn Application Master堆内过小

  • 现象: 这个情况的实际现象就是Map任务都处理成功,然而yarn任务一直在RUNNING状态,过了一会就出现OOM。通过查看系统默认的Application Master堆内存大小仅为800多MB,但此次任务有9万多个Map任务,所以YARN在异步处理信息的时候明显的内存资源不足就会出现失败。

  • 解决方案

    yarn.app.mapreduce.am.resource.mb=8192  #默认是50
    yarn.app.mapreduce.am.command-opts =-Xmx6144m  #默认是10000
    

    上述两个参数的建议值为:

    yarn.app.mapreduce.am.resource.mb= 2 * RAM-per-container
    yarn.app.mapreduce.am.command-opts= 0.8 * 2 * RAM-per-container
    

参考


Similar Posts

Comments