当前位置:   article > 正文

案例实践:YARN调度器的配置与使用_公平调度器配置文件详解

公平调度器配置文件详解

目录

1、启用公平调度器

2、队列配置

3、同步配置文件

4、重启YARN集群

5、提交任务


前面已经介绍YARN的3种调度器,接下来以Hadoop自带的WordCount为例,操作演示公平调度器的配置与使用。

1、启用公平调度器

公平调度器的使用由属性yarn.resourcemanager.scheduler.class的设置决定。YARN默认使用的是容量调度器,如果要使用公平调度器,需要将yarn-site.xml文件中的yarn.resourcemanager.scheduler.class设置为公平调度器的完全限定名,其核心配置如下:

  1. <property>
  2. <!--调度器类型指定为Fair Scheduler-->
  3.               <name>yarn.resourcemanager.scheduler.class</name>
  4.               <value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler</value>
  5.       </property>
  6.       <property>
  7. <!--指定Fair Scheduler具体配置文件位置-->
  8.               <name>yarn.scheduler.fair.allocation.file</name>
  9.               <value>/soft/hadoop/etc/hadoop/conf/fair-scheduler.xml</value>
  10.       </property>

2、队列配置

通过一个名为fair-Scheduler.xml的配置文件对公平调度器进行配置,该文件位于yarn.scheduler.fair.allocation.file属性配置的路径下,核心配置如下:

  1. <?xml version="1.0"?>
  2. <allocations>
  3. <!-- 定义队列  -->
  4.       <queue name="root">
  5.       <!--设置调度策略-->
  6.       <schedulingPolicy>fair</schedulingPolicy>
  7.       <!--允许提交任务的用户名和组-->
  8.       <aclSubmitApps>*</aclSubmitApps>
  9.       <!--允许管理任务的用户名和组-->
  10.       <aclAdministerApps>*</aclAdministerApps>
  11.       <!--默认队列-->
  12.       <queue name="default">
  13.               <minResources>1024mb,1vcores</minResources>
  14.               <maxResources>2048mb,1vcores</maxResources>
  15.       </queue>
  16.       <!--离线队列-->
  17.       <queue name="offline">
  18.               <!--最小资源-->
  19.               <minResources>1024mb,1vcores</minResources>
  20.               <!--最大资源-->
  21.               <maxResources>2048mb,2vcores</maxResources>
  22.               <!--最大同时运行Application数量-->
  23.               <maxRunningApps>50</maxRunningApps>
  24.       </queue>
  25.       <!--实时队列-->
  26.       <queue name="realtime">
  27.               <!--最小资源-->
  28.               <minResources>1024mb,1vcores</minResources>
  29.               <!--最大资源-->
  30.               <maxResources>2048mb,2vcores</maxResources>
  31.               <!--最大同时运行Application数量-->
  32.               <maxRunningApps>50</maxRunningApps>
  33.       </queue>
  34.   </queue>
  35. </allocations>

队列的层次使用嵌套queue元素来定义,default、offline、realline等队列都是root队列的孩子。每个队列可以有不同的调度策略,可以通过SchedulerPolicy属性来分别设置,在每个队列中,公平调度器可以选择按照FIFO、Fair或DRF策略为应用程序分配资源,每个队列还可以配置最大和最小资源数量,以及最大可以运行的应用数量。

3、同步配置文件

因为当前Hadoop环境是伪分布式集群,所以只需要修改当前节点的yarn-site.xml和fair-Scheduler.xml配置文件即可。如果Hadoop是分布式集群环境,还需要将相关配置文件通过scp命令同步到集群其他节点。

4、重启YARN集群

因为公平调度器需要修改YARN相关的配置文件,所以需要重启YARN集群才能使配置文件生效。YARN集群的启停操作命令如下:

  1. stop-yarn.sh #关闭yarn集群
  2. start-yarn.sh #启动yarn集群

5、提交任务

以Hadoop自带的WordCount为例,使用公平调度器将MapReduce应用提交到root offline队列中运行,具体操作命令如下:

yarn jar /soft/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-exam-3.2.1.jar wordcount -Dmapreduce.job.queuename=root.offline /test/words.log /test/out

6、查看调度器与作业

在浏览器中输入http://hadoop:8088/地址,通过YARN集群的Web界面查看MapReduce作业所使用的调度器及队列。

7、查看运行结果

使用HDFS shell命令查看WordCount作业输出结果,如果WordCount作业能成功运行并输出正确结果,说明YARN集群中的公平调度器配置成功了。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/777877
推荐阅读
相关标签
  

闽ICP备14008679号