[bigdata] hadoop 参数配置解析
ResourceManager相关配置参数 |
yarn-site.xml 中配置 |
yarn.resourcemanager.address |
ResourceManager 对客户端暴露的地址。客户端通过该地址向RM提交应用程序,杀死应用程序等。 默认值:${yarn.resourcemanager.hostname}:8032 |
yarn.resourcemanager.scheduler.address |
ResourceManager 对ApplicationMaster暴露的访问地址。ApplicationMaster通过该地址向RM申请资源、释放资源等。 默认值:${yarn.resourcemanager.hostname}:8030 |
yarn.resourcemanager.resource-tracker.address |
ResourceManager 对NodeManager暴露的地址.。NodeManager通过该地址向RM汇报心跳,领取任务等。 默认值:${yarn.resourcemanager.hostname}:8031 |
yarn.resourcemanager.admin.address |
ResourceManager 对管理员暴露的访问地址。管理员通过该地址向RM发送管理命令等。 默认值:${yarn.resourcemanager.hostname}:8033 |
yarn.resourcemanager.webapp.address |
ResourceManager对外web ui地址。用户可通过该地址在浏览器中查看集群各类信息。 默认值:${yarn.resourcemanager.hostname}:8088 |
yarn.resourcemanager.scheduler.class |
启用的资源调度器主类。目前可用的有FIFO、Capacity Scheduler和Fair Scheduler。 默认值:org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler |
yarn.resourcemanager.resource-tracker.client.thread-count |
处理来自NodeManager的RPC请求的Handler数目。 默认值:50 |
yarn.resourcemanager.scheduler.client.thread-count |
处理来自ApplicationMaster的RPC请求的Handler数目。 默认值:50 |
yarn.scheduler.minimum-allocation-mb yarn.scheduler.maximum-allocation-mb |
单个可申请的最小/最大内存资源量。比如设置为1024和3072,则运行MapRedce作业时,每个Task最少可申请1024MB内存,最多可申请3072MB内存。 默认值:1024/8192 |
yarn.scheduler.minimum-allocation-vcores yarn.scheduler.maximum-allocation-vcores |
单个可申请的最小/最大虚拟CPU个数。比如设置为1和4,则运行MapRedce作业时,每个Task最少可申请1个虚拟CPU,最多可申请4个虚拟CPU。 默认值:1/32 |
yarn.resourcemanager.nodes.include-path /yarn.resourcemanager.nodes.exclude-path | NodeManager黑白名单。如果发现若干个NodeManager存在问题,比如故障率很高,任务运行失败率高,则可以将之加入黑名单中。注意,这两个配置参数可以动态生效。(调用一个refresh命令即可) |
yarn.resourcemanager.nodemanagers.heartbeat-interval-ms |
NodeManager心跳间隔 默认值:1000(毫秒) |
NodeManager相关配置参数 |
|
yarn.nodemanager.resource.memory-mb | NodeManager总的可用物理内存。注意,该参数是不可修改的,一旦设置,整个运行过程中不可动态修改。另外,该参数的默认值是8192MB,即使你的机器内存不够8192MB,YARN也会按照这些内存来使用,因此,这个值一定要配置。不过,Apache已经正在尝试将该参数做成可动态修改的。
默认值:8192 |
yarn.nodemanager.vmem-pmem-ratio | 每使用1MB物理内存,最多可用的虚拟内存数。
默认值:2.1 |
yarn.nodemanager.resource.cpu-vcores | NodeManager总的可用虚拟CPU个数。
默认值:8 |
yarn.nodemanager.local-dirs | 中间结果存放位置,类似于1.0中的mapred.local.dir。注意,这个参数通常会配置多个目录,已分摊磁盘IO负载。
默认值:${hadoop.tmp.dir}/nm-local-dir |
yarn.nodemanager.log-dirs | 日志存放地址(可配置多个目录)。
默认值:${yarn.log.dir}/userlogs |
yarn.nodemanager.log.retain-seconds | NodeManager上日志最多存放时间(不启用日志聚集功能时有效)。
默认值:10800(3小时) |
yarn.nodemanager.aux-services | NodeManager上运行的附属服务。需配置成mapreduce_shuffle,才可运行MapReduce程序
默认值:“” |
日志聚集相关配置参数 |
日志聚集是YARN提供的日志中央化管理功能,它能将运行完成的Container/任务日志上传到HDFS上,从而减轻NodeManager负载,且提供一个中央化存储和分析机制。默认情况下,Container/任务日志存在在各个NodeManager上,如果启用日志聚集功能需要额外的配置。 |
yarn.log-aggregation-enable | 是否启用日志聚集功能。
默认值:false |
yarn.log-aggregation.retain-seconds |
在HDFS上聚集的日志最多保存多长时间。 默认值:-1 |
yarn.log-aggregation.retain-check-interval-seconds | 多长时间检查一次日志,并将满足条件的删除,如果是0或者负数,则为上一个值的1/10。
默认值:-1 |
yarn.nodemanager.remote-app-log-dir | 当应用程序运行结束后,日志被转移到的HDFS目录(启用日志聚集功能时有效)。
默认值:/tmp/logs |
yarn.nodemanager.remote-app-log-dir-suffix | 远程日志目录子目录名称(启用日志聚集功能时有效)。
默认值:日志将被转移到目录 ${yarn.nodemanager.remote-app-log-dir}/${user}/${thisParam}下 |