The hierarchy is defined through level in the path
yarn.scheduler.capacity.<queue-path>. For instance: The a level (yarn.scheduler.capacity.root.a.queues) is a level below root (yarn.scheduler.capacity.root.queues)
* Several queues can be defined by level.
* Children do not inherit properties
===== Configuration Management =====
==== capacity-scheduler.xml ====
The configuration follows the hadoop configuration principles and are stored in the file capacity-scheduler.xml
Example with 3 levels (root, a and b) and 8 queues (a,b,c,a1,a2,b1,b2,b3)
<code><property><name>yarn.scheduler.capacity.root.queues</name><value>a,b,c</value><description>The queues at the this level (root is the root queue).</description></property><property><name>yarn.scheduler.capacity.root.a.queues</name><value>a1,a2</value><description>The queues at the this level (root is the root queue).</description></property><property><name>yarn.scheduler.capacity.root.b.queues</name><value>b1,b2,b3</value><description>The queues at the this level (root is the root queue).</description></property></code>
More Configuration
==== Modification ====
=== via Cli ===
Yarn
<code>vi HADOOP_CONF_DIR/capacity-scheduler.xmlHADOOP_YARN_HOME/bin/yarn rmadmin -refreshQueues</code>
=== via Rest ===
Yarn - ResourceManager Rest API
https://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/ResourceManagerRest.html#Scheduler_Configuration_Mutation_API
===== Documentation / Reference =====
* https://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.6.0/bk_yarn-resource-management/content/enabling_capacity_scheduler.html
* https://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/CapacityScheduler.html