zoukankan      html  css  js  c++  java
  • Hadoop Yarn Capacity Scheduler

    Capacity 调度器配置

    <property>
      <name>yarn.resourcemanager.scheduler.class<name>
      <value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler</value>
    </property>

    加载配置文件

    $yarn rmadmin -refreshQueues

    Root --- QueueA --- A1,  A2
              |-- QueueB --- B1,  B2
              |-- QueueC --- C1,  C2

    队列

    <property>
      <name>yarn.scheduler.capacity.root.queues<name>
      <value>QueueA, QueueB, QueueC</value>
    </property>
    
    <property>
      <name>yarn.scheduler.capacity.QueueA.queues<name>
      <value>A1, A2</value>
    </property>

    队列访问权限控制

    <property>
      <name>yarn.scheduler.capacity.root.QueueA.acl_submit_applications<name>
      <value>u1, u2 g1</value>
      <description>限定哪些Linux用户/用户组可向给定队列中提交应用程序</description>
    </property>
    
    <property>
      <name>yarn.scheduler.capacity.root.QueueA.acl_administer_queue<name>
      <value>g1</value>
      <description>为队列指定一个管理员,该管理员可控制该队列的所有应用程序,比如杀死任意一个应用程序等</description>
    </property>

    层级队列Capacity管理

    <property>
      <name>yarn.scheduler.capacity.root.QueueA.capacity<name>
      <value>60</value>
    </property>
    
    <property>
      <name>yarn.scheduler.capacity.root.QueueB.capacity<name>
      <value>10</value>
    </property>
    
    <property>
      <name>yarn.scheduler.capacity.root.QueueC.capacity<name>
      <value>30</value>
    </property>
    
    <property>
      <name>yarn.scheduler.capacity.root.QueueA.A1.capacity<name>
      <value>20</value>
    </property>
    
    <property>
      <name>yarn.scheduler.capacity.root.QueueA.A2.capacity<name>
      <value>80</value>
    </property>

    队列A1不能超过父队列queueA的40%的资源。

    <property>
      <name>yarn.scheduler.capacity.root.QueueA.A1.maximum-capacity<name>
      <value>40</value>
    </property>

    队列的状态

    <property>
      <name>yarn.scheduler.capacity.root.QueueB.state<name>
      <value>RUNNING</value>
    </property>

    应用程序限制

    <property>
      <name>yarn.scheduler.capacity.maximum-applications<name>
      <value>10000</value>
      <description>集群同时运行的最大作业数</description>
    </property>
    
    <property>
      <name>yarn.scheduler.capacity.root.QueueA.maximum-applications<name>
      <value>10000</value>
      <description>队列root.QueueA同时运行的最大作业数</description>
    </property>
    <property>
      <name>yarn.scheduler.capacity.maximum-am-resource-percent<name>
      <value>0.1</value>
      <description>AM所占资源最大比例,用来控制同时运行的作业数</description>
    </property>
    
    <property>
      <name>yarn.scheduler.capacity.root.QueueA.maximum-am-resource-percent<name>
      <value>0.1</value>
      <description>AM所占资源最大比例,用来控制队列root.QueueA同时运行的作业数</description>
    </property>
  • 相关阅读:
    JS跨域访问CORS配置
    在Maven中混用Java和Scala
    Linux下开源可视化工具Caravel安装(包含缺少js解决办法)
    linux环境下NPM安装小结(淘宝镜像)
    Spark学习笔记
    导出HBase数据到Excel(Java代码)
    Spark通过JdbcRdd连接Oracle数据库(scala)
    基于AngularJS+Bootstrap的多文件上传与管理
    Hadoop-1.2.1 安装步骤小结(ubuntu)
    git-remote-https.exe 无法找到入口
  • 原文地址:https://www.cnblogs.com/rilley/p/5679049.html
Copyright © 2011-2022 走看看