Queues in YARN can be in two states: RUNNING
or STOPPED
. A
RUNNING
state indicates that a queue can accept application
submissions, and a STOPPED
queue does not accept application submissions.
The default state of any configured queue is RUNNING
.
In Capacity Scheduler, parent queues, leaf queues, and the root queue can all be
stopped. For an application to be accepted at any leaf queue, all the queues in the
hierarchy all the way up to the root queue must be running. This means that if a parent
queue is stopped, all of the descendant queues in that hierarchy are inactive, even if
their own state is RUNNING
.
The following example sets the value of the state
property of the
"support" queue to RUNNING:
Property:
yarn.scheduler.capacity.root.support.state
Value:
RUNNING
Administrators can use the ability to stop and drain applications in a queue for a number of reasons, such as when decommissioning a queue and migrating its users to other queues. Administrators can stop queues at run-time, so that while current applications run to completion, no new applications are admitted. Existing applications can continue until they finish running, and thus the queue can be drained gracefully without any end-user impact.
Administrators can also restart the stopped queues by modifying the state
configuration property and then refreshing the queue using yarn rmadmin -refreshQueues
as previously described.