Yarn生产环境核心参数
(1)ResourceManager相关
配置调度器:yarn.resourcemanager.scheduler.class 默认是容量调度器
处理调度器请求的线程数量:yarn.resourcemanager.scheduler.client.thread-count 默认是50
(2)NodeManager相关
是否让yarn自己检测硬件进行配置:yarn.nodemanager.resource.detect-hardware-capabilities 默认false
是否将虚拟核数当作CPU核数:yarn.nodemanager.resource.count-logical-processors-as-cores 默认false
虚拟核数和物理核数乘数:yarn.nodemanager.resource.pcores-vcores-multiplier,比如:4核8线程,该参数就应设为2,默认1.0
以下两个参数配置配置一个就行,通常需要配置
NodeManager使用内存:yarn.nodemanager.resource.memory-mb 默认8G
NodeManager为系统保留多少内存:yarn.nodemanager.resource.system-reserved-memory-mb
如总内存8G 该参数为2G也就是为系统留2G 剩余nodemanage可以使用6G
NodeManager使用CPU核数:yarn.nodemanager.resource.cpu-vcores 默认8个
是否开启物理内存检测限制container,ResourceManager会监控NodeManager的使用情况,监控机制。
比如A总共有8G内存,当A快超过8G时,会通知内存快使用完了
yarn.nodemanager-pvmem-check-enabled 默认打开
是否开启虚拟内存检测限制container:yarn.nodemanager.vmem-check-enabled 默认打开
虚拟内存和物理内存比例,假设物理内存8G,虚拟内存2.1*8=16.8G
yarn.nodemanager.vmem-pmem-ratio 默认2.1
(3)Container相关
容器最小内存:yarn.scheduler.minimum-allocation-mb 默认1G
容器最大内存:yarn.scheduler.maximum-allocation-mb 默认8G
容量最小CPU核数:yarn.scheduler.minimum-allocation-vcores 默认1个
容器最大CPU核数:yarn.scheduler.maximum-allocation-vcores 默认4个