根据具体集群情况,官方提供了一个python编写的内存计算工具:linux环境下执行命令python yarn-utils.py -c 32 -m 128 -d 7 -k False,其中参数说明如下:
-c:核数
-m:内存大小
-d:磁盘数
-k:hbase是否安装。False-没有安装 True-安装
会生成一串信息:
Using cores=32 memory=128GB disks=7 hbase=False
Profile: cores=32 memory=106496MB reserved=24GB usableMem=104GB disks=7
Num Container=13
Container Ram=8192MB
Used Ram=104GB
Unused Ram=24GB
yarn.scheduler.minimum-allocation-mb=8192
yarn.scheduler.maximum-allocation-mb=106496
yarn.nodemanager.resource.memory-mb=106496
mapreduce.map.memory.mb=8192
mapreduce.map.java.opts=-Xmx6553m
mapreduce.reduce.memory.mb=8192
mapreduce.reduce.java.opts=-Xmx6553m
yarn.app.mapreduce.am.resource.mb=8192
yarn.app.mapreduce.am.command-opts=-Xmx6553m
mapreduce.task.io.sort.mb=3276
参考输出的信息配置yarn-site.xml文件(以key-value形式配置),如:
<property>
<name>yarn.scheduler.minimum-allocation-mb</name>
<value>8192</value>
</property>
yarn-utils.py下载前往:http://download.csdn.net/detail/javajxz008/9443358