理论基础
1、概述
一般说yarn的调优,就是指Container的调优,而Container是运行在NM节点上的,而在NM的节点,一
般还运行着DN进程(数据本地化),DN+NM两进程不可占据节点的全部内存,一般在75%~85%(不考虑hbase)之
间比较合适,对于一台64G内存的机器,生产上可使得DN+NM=54G,DN=4G,NM=50G。
####hbase内存一般和给系统预留的内存一样大。
两个container使用一块磁盘以及一个CPU核的时候可以使集群的资源得到一个比较好的利用。
#####以下调优,没说生产调则在生产上不要动
2、内存调优
A)yarn.nodemanager.resource.memory-mb
NM占用机器的内存大小,单位MB 可设置为50*1024 (生产调)
B)yarn.scheduler.minimum-allocation-mb
Container包含的最小内存,单位MB 可设置1024(生产调)
C)yarn.scheduler.maximum-allocation-mb
Container包含的最大内存,单位MB 可设置8192(生产调)
注:
随着任务的运行,计算越来越大,任务消耗的资源越来越多,Container包含的内存也应该逐渐增加,在
CDH版本的hadoop中有一个参数可以设置每次内存加大的额度,当内存达到yarn.scheduler.maximum-
allocation-mb参数设置的最大内存还不够时,任务会被yarn杀掉
D)yarn.scheduler.increment-