public interface Plan extends PlanContext, PlanView, PlanEdit
ReservationDefinition
that have been
previously accepted will be honored.
ReservationDefinition
submitted by the users through the RM public
APIs are passed to appropriate ReservationAgent
s, which in turn will
consult the Plan (via the PlanView
interface) and try to determine
whether there are sufficient resources available in this Plan to satisfy the
temporal and resource constraints of a ReservationDefinition
. If a
valid allocation is found the agent will try to store it in the plan (via the
PlanEdit
interface). Upon success the system return to the user a
positive acknowledgment, and a reservation identifier to be later used to
access the reserved resources.
A PlanFollower
will continuously read from the Plan and will
affect the instantaneous allocation of resources among jobs running by
publishing the "current" slice of the Plan to the underlying scheduler. I.e.,
the configuration of queues/weights of the scheduler are modified to reflect
the allocations in the Plan.
As this interface have several methods we decompose them into three groups:
PlanContext
: containing configuration type information,
PlanView
read-only access to the plan state, and PlanEdit
write access to the plan state.addReservation, archiveCompletedReservations, deleteReservation, setTotalCapacity, updateReservation
getAllReservations, getAvailableResourceOverTime, getConsumptionForUserOverTime, getEarliestStartTime, getLastEndTime, getReservationById, getReservationByUserAtTime, getReservationCountForUserOverTime, getReservations, getReservations, getReservationsAtTime, getTotalCapacity, getTotalCommittedResources
getMaximumAllocation, getMinimumAllocation, getMoveOnExpiry, getQueueMetrics, getQueueName, getReplanner, getReservationAgent, getResourceCalculator, getSharingPolicy, getStep
Copyright © 2017 Apache Software Foundation. All Rights Reserved.