Setting Up a Hierarchy of Queues
CapacityScheduler uses a concept called a queue path to configure a hierarchy of queues. The queue path is the full path of the queue's hierarchy, starting at root. The following example has three top-level child-queues a, b, and c and some sub-queues for a and b:
Queue paths are defined for each level under the
root queue. A queue's children are defined with the
parameter
yarn.scheduler.capacity.<queue-path>.queues,
where <queue-path> takes the form
root.<child>,
root.<child>.<child>, and so on. For
example, the queue path to a2 is designated as
root.a.a2.
Children do not inherit properties directly from the parent unless otherwise noted.
The corresponding queue definition block of the
capacity-scheduler.xml file is shown below.
<property>
<name>yarn.scheduler.capacity.root.queues</name>
<value>a,b,c</value>
<description>The queues at 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 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 this level (root is the root queue).
</description>
</property>