Yarn容量调度器队列配置

Yarn容量调度器队列配置

  1. 增加hive队列
    默认Yarn的配置下,容量调度器只有一条Default队列。在capacity-scheduler.xml中可以配置多条队列,修改以下属性,增加hive队列。

    vim /opt/module/hadoop-3.1.3/etc/hadoop/capacity-scheduler.xml

    修改的内容:

    <property>
    <name>yarn.scheduler.capacity.root.queues</name>
    <value>default,hive</value>
    <description>
      The queues at the this level (root is the root queue).
    </description>
    </property>
    
    <!-- root队列中default队列占用的容量百分比所有子队列的容量相加必须等于100 -->
    <property>
      <name>yarn.scheduler.capacity.root.default.capacity</name>
      <value>50</value>
      <description>Default queue target capacity.</description>
    </property>

    增加如下内容:

    
    <property>
      <name>yarn.scheduler.capacity.root.hive.capacity</name>
      <value>50</value>
      <description>Default queue target capacity.</description>
    </property>
    
     <!-- 队列中用户能使用此队列资源的极限百分比-->
    <property>
      <name>yarn.scheduler.capacity.root.hive.user-limit-factor</name>
      <value>1</value>
      <description>
        Default queue user limit a percentage from 0.0 to 1.0.
      </description>
    </property>
    
      <!-- root队列中hive队列占用的容量百分比的最大值-->
    <property>
      <name>yarn.scheduler.capacity.root.hive.maximum-capacity</name>
      <value>80</value>
      <description>
        The maximum capacity of the hive queue. 
      </description>
    </property>
    
    <!-- root队列中hive队列的状态-->
    <property>
      <name>yarn.scheduler.capacity.root.hive.state</name>
      <value>RUNNING</value>
      <description>
        The state of the hive queue. State can be one of RUNNING or STOPPED.
      </description>
    </property>
    
    <!-- 限制向hive队列提交的用户,即访问权限-->
    <property>
      <name>yarn.scheduler.capacity.root.hive.acl_submit_applications</name>
      <value>*</value>
      <description>
        The ACL of who can submit jobs to the hive queue.
      </description>
    </property>
    
    <!-- 设置管理员-->
      <property>
        <name>yarn.scheduler.capacity.root.hive.acl_administer_queue</name>
        <value>*</value>
        <description>
          The ACL of who can administer jobs on the hive queue.
        </description>
      </property>
    
      <!-- 访问控制,控制用户可以提交到该队列的任务的最大优先级 -->
      <property>
          <name>yarn.scheduler.capacity.root.hive.acl_application_max_priority</name>
          <value>*</value>
      </property>
    
      <!-- hive队列中任务的最大生命时长 -->
      <property>
          <name>yarn.scheduler.capacity.root.hive.maximum-application-lifetime</name>
        <value>-1</value>
      </property>
      <!-- hive队列中任务的默认生命时长 -->
      <property>
        <name>yarn.scheduler.capacity.root.hive.default-application-lifetime</name>
      <value>-1</value>
      </property>

    修改完后,别忘了同步集群

    xsync capacity-scheduler.xml
  2. 配置hive客户端任务提交到hive队列
    为方便后续hive客户端的测试和shell脚本中的任务能同时执行,我们将hive客户端的测试任务提交到hive队列,让shell脚本中的任务使用默认值,提交到default队列。
    每次进入hive客户端时,执行以下命令

    set mapreduce.job.queuename=hive;

版权声明:
作者:十下
链接:http://blog.edkso.cn/?p=649
来源:十下博客
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
打赏
< <上一篇
下一篇>>