yarn-site.xml的配置

来源:互联网 发布:贺知章回乡偶书二首 编辑:程序博客网 时间:2024/06/01 10:07

代码块

本人使用的是hadoop-2.7.3
若是简单启动hadoop,无特别要求以下配置即可

<configuration>    <property>        <name>yarn.resourcemanager.hostname</name>        <value>master</value>    </property>    <property>        <name>yarn.nodemanager.aux-services</name>        <value>mapreduce_shuffle</value>    </property></configuration>

完整yarn-site.xml的配置要理解各参数的准确含义后,针对自己的要求更改配置

参数 默认值 描述 yarn.resourcemanager.hostname RM的hostname yarn.resourcemanager.address ${yarn.resourcemanager.hostname}:8032 RM对客户端暴露的地址,客户端通过该地址向RM提交应用程序等 yarn.resourcemanager.scheduler.address ${yarn.resourcemanager.hostname}:8030 RM对AM暴露的地址,AM通过地址想RM申请资源,释放资源等 yarn.resourcemanager.webapp.address ${yarn.resourcemanager.hostname}:8088 RM对外暴露的web http地址,用户可通过该地址在浏览器中查看集群信息 yarn.resourcemanager.webapp.https.address ${yarn.resourcemanager.hostname}:8090 web https 地址 yarn.resourcemanager.resource-tracker.address ${yarn.resourcemanager.hostname}:8031 RM对NM暴露地址,NM通过该地址向RM汇报心跳,领取任务等 yarn.resourcemanager.resource-tracker.client.thread-count 50 处理来自NM的RPC请求的handler数 yarn.resourcemanager.admin.address ${yarn.resourcemanager.hostname}:8033 管理员可以通过该地址向RM发送管理命令等 yarn.resourcemanager.scheduler.class org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler 资源调度器主类 yarn.resourcemanager.scheduler.client.thread-count 50 处理来自AM的RPC请求的handler数 yarn.scheduler.minimum-allocation-mb 1024 可申请的最少内存资源,以MB为单位 yarn.scheduler.maximum-allocation-mb 8192 可申请的最大内存资源,以MB为单位 yarn.scheduler.minimum-allocation-vcores 1 可申请的最小虚拟CPU个数 yarn.scheduler.maximum-allocation-vcores 32 可申请的最 大虚拟CPU个数 yarn.nodemanager.local-dirs ${hadoop.tmp.dir}/nm-local-dir 中间结果存放位置,可配置多目录 yarn.log-aggregation-enable false 是否启用日志聚合 yarn.nodemanager.remote-app-log-dir /tmp/logs 日志聚合目录 yarn.nodemanager.resource.memory-mb 8192 NM总的可用物理内存,以MB为单位。一旦设置,不可动态修改 yarn.nodemanager.resource.cpu-vcores 8 可分配的CPU个数 yarn.nodemanager.vmem-check-enabled true 虚拟内存检查 yarn.nodemanager.vmem-check-enabled true 物理内存检查 mapreduce.map.memory.mb 这个参数指定用于Map任务(Map task)的内存大小,其值应该在ResourceManager中的最大最小container之间。如果没有配置则通过如下简单公式获得:max(MIN_CONTAINER_SIZE, (Total Available RAM) / containers)) mapreduce.reduce.memory.mb 这个参数指定用于Reduce任务(Reduce task)的内存大小,其值应该在ResourceManager中的最大最小container之间。如果没有配置则通过如下简单公式获得:max(MIN_CONTAINER_SIZE, (Total Available RAM) / containers)) yarn.nodemanager.vmem-pmem-ratio 2.1 物理内存与虚拟内存的比率 yarn.nodemanager.aux-services NodeManager上运行的附属服务。需配置成mapreduce_shuffle,才可运行MapReduce程序

由于更改集群配置比较麻烦,且容易出错
建议一些经常变动的配置不要在yarn-site.xml中配置 ,例如:

   yarn.nodemanager.vmem-check-enabled   yarn.nodemanager.vmem-pmem-ratio   mapreduce.map.memory.mb   mapreduce.reduce.memory.mb   yarn.log-aggregation-enable   ......

类似这些控制、监控container内存使用和mapreduce任务运行的资源分配,以及日志合并的变量可以在使用是随时更改,例如在hive中:

    hive > set mapreduce.map.memory.mb;    mapreduce.map.memory.mb=4096    hive > set  mapreduce.reduce.memory.mb;    mapreduce.reduce.memory.mb=4096    hive > set yarn.nodemanager.vmem-pmem-ratio;    yarn.nodemanager.vmem-pmem-ratio=4.2

本文参考地址:http://www.itnose.net/detail/6673635.html