Package | Description |
---|---|
org.apache.hadoop.yarn.server.resourcemanager.reservation | |
org.apache.hadoop.yarn.server.resourcemanager.reservation.planning |
Modifier and Type | Class and Description |
---|---|
class |
InMemoryPlan
This class represents an in memory representation of the state of our
reservation system, and provides accelerated access to both individual
reservations and aggregate utilization of resources over time.
|
Modifier and Type | Field and Description |
---|---|
protected Collection<Plan> |
AbstractSchedulerPlanFollower.plans |
Modifier and Type | Method and Description |
---|---|
Plan |
ReservationSystem.getPlan(String planName)
Get an existing
Plan that has been initialized. |
Plan |
AbstractReservationSystem.getPlan(String planName) |
protected Plan |
AbstractReservationSystem.initializePlan(String planQueueName) |
Plan |
ReservationInputValidator.validateReservationDeleteRequest(ReservationSystem reservationSystem,
org.apache.hadoop.yarn.api.protocolrecords.ReservationDeleteRequest request)
|
Plan |
ReservationInputValidator.validateReservationListRequest(ReservationSystem reservationSystem,
org.apache.hadoop.yarn.api.protocolrecords.ReservationListRequest request)
|
Plan |
ReservationInputValidator.validateReservationSubmissionRequest(ReservationSystem reservationSystem,
org.apache.hadoop.yarn.api.protocolrecords.ReservationSubmissionRequest request,
org.apache.hadoop.yarn.api.records.ReservationId reservationId)
|
Plan |
ReservationInputValidator.validateReservationUpdateRequest(ReservationSystem reservationSystem,
org.apache.hadoop.yarn.api.protocolrecords.ReservationUpdateRequest request)
|
Modifier and Type | Method and Description |
---|---|
Map<String,Plan> |
ReservationSystem.getAllPlans()
Return a map containing all the plans known to this ReservationSystem
(useful for UI)
|
Map<String,Plan> |
AbstractReservationSystem.getAllPlans() |
Modifier and Type | Method and Description |
---|---|
RLESparseResourceAllocation |
SharingPolicy.availableResources(RLESparseResourceAllocation available,
Plan plan,
String user,
org.apache.hadoop.yarn.api.records.ReservationId oldId,
long start,
long end)
This method provide a (partial) instantaneous validation by applying
business rules (such as max number of parallel containers allowed for a
user).
|
RLESparseResourceAllocation |
NoOverCommitPolicy.availableResources(RLESparseResourceAllocation available,
Plan plan,
String user,
org.apache.hadoop.yarn.api.records.ReservationId oldId,
long start,
long end) |
RLESparseResourceAllocation |
CapacityOverTimePolicy.availableResources(RLESparseResourceAllocation available,
Plan plan,
String user,
org.apache.hadoop.yarn.api.records.ReservationId oldId,
long start,
long end) |
protected org.apache.hadoop.yarn.api.records.Resource |
FairSchedulerPlanFollower.getPlanResources(Plan plan,
Queue queue,
org.apache.hadoop.yarn.api.records.Resource clusterResources) |
protected org.apache.hadoop.yarn.api.records.Resource |
CapacitySchedulerPlanFollower.getPlanResources(Plan plan,
Queue queue,
org.apache.hadoop.yarn.api.records.Resource clusterResources) |
protected abstract org.apache.hadoop.yarn.api.records.Resource |
AbstractSchedulerPlanFollower.getPlanResources(Plan plan,
Queue queue,
org.apache.hadoop.yarn.api.records.Resource clusterResources)
Get plan resources for this planQueue
|
protected org.apache.hadoop.yarn.api.records.Resource |
FairSchedulerPlanFollower.getReservationQueueResourceIfExists(Plan plan,
org.apache.hadoop.yarn.api.records.ReservationId reservationId) |
protected org.apache.hadoop.yarn.api.records.Resource |
CapacitySchedulerPlanFollower.getReservationQueueResourceIfExists(Plan plan,
org.apache.hadoop.yarn.api.records.ReservationId reservationId) |
protected abstract org.apache.hadoop.yarn.api.records.Resource |
AbstractSchedulerPlanFollower.getReservationQueueResourceIfExists(Plan plan,
org.apache.hadoop.yarn.api.records.ReservationId reservationId)
Get reservation queue resources if it exists otherwise return null.
|
protected List<ReservationAllocation> |
AbstractSchedulerPlanFollower.sortByDelta(List<ReservationAllocation> currentReservations,
long now,
Plan plan)
Sort in the order from the least new amount of resources asked (likely
negative) to the highest.
|
void |
PlanFollower.synchronizePlan(Plan plan,
boolean shouldReplan)
The function performing the actual synchronization operation for a given
Plan.
|
void |
AbstractSchedulerPlanFollower.synchronizePlan(Plan plan,
boolean shouldReplan) |
void |
SharingPolicy.validate(Plan plan,
ReservationAllocation newAllocation)
This method runs the policy validation logic, and return true/false on
whether the
ReservationAllocation is acceptable according to this
sharing policy. |
void |
NoOverCommitPolicy.validate(Plan plan,
ReservationAllocation reservation) |
void |
CapacityOverTimePolicy.validate(Plan plan,
ReservationAllocation reservation) |
Modifier and Type | Method and Description |
---|---|
void |
PlanFollower.init(org.apache.hadoop.yarn.util.Clock clock,
ResourceScheduler sched,
Collection<Plan> plans)
Init function that configures the PlanFollower, by providing:
|
void |
FairSchedulerPlanFollower.init(org.apache.hadoop.yarn.util.Clock clock,
ResourceScheduler sched,
Collection<Plan> plans) |
void |
CapacitySchedulerPlanFollower.init(org.apache.hadoop.yarn.util.Clock clock,
ResourceScheduler sched,
Collection<Plan> plans) |
void |
AbstractSchedulerPlanFollower.init(org.apache.hadoop.yarn.util.Clock clock,
ResourceScheduler sched,
Collection<Plan> plans) |
void |
PlanFollower.setPlans(Collection<Plan> plans)
Setter for the list of plans.
|
void |
AbstractSchedulerPlanFollower.setPlans(Collection<Plan> plans) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
PlanningAlgorithm.allocateUser(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan,
org.apache.hadoop.yarn.api.records.ReservationDefinition contract,
ReservationAllocation oldReservation)
Performs the actual allocation for a ReservationDefinition within a Plan.
|
protected long |
IterativePlanner.computeEarliestStartingTime(Plan plan,
org.apache.hadoop.yarn.api.records.ReservationDefinition reservation,
int index,
org.apache.hadoop.yarn.api.records.ReservationRequest currentReservationStage,
long stageDeadline) |
abstract RLESparseResourceAllocation |
PlanningAlgorithm.computeJobAllocation(Plan plan,
org.apache.hadoop.yarn.api.records.ReservationId reservationId,
org.apache.hadoop.yarn.api.records.ReservationDefinition reservation,
String user) |
RLESparseResourceAllocation |
IterativePlanner.computeJobAllocation(Plan plan,
org.apache.hadoop.yarn.api.records.ReservationId reservationId,
org.apache.hadoop.yarn.api.records.ReservationDefinition reservation,
String user) |
Map<ReservationInterval,org.apache.hadoop.yarn.api.records.Resource> |
StageAllocatorLowCostAligned.computeStageAllocation(Plan plan,
Map<Long,org.apache.hadoop.yarn.api.records.Resource> planLoads,
RLESparseResourceAllocation planModifications,
org.apache.hadoop.yarn.api.records.ReservationRequest rr,
long stageEarliestStart,
long stageDeadline,
String user,
org.apache.hadoop.yarn.api.records.ReservationId oldId) |
Map<ReservationInterval,org.apache.hadoop.yarn.api.records.Resource> |
StageAllocatorGreedyRLE.computeStageAllocation(Plan plan,
Map<Long,org.apache.hadoop.yarn.api.records.Resource> planLoads,
RLESparseResourceAllocation planModifications,
org.apache.hadoop.yarn.api.records.ReservationRequest rr,
long stageEarliestStart,
long stageDeadline,
String user,
org.apache.hadoop.yarn.api.records.ReservationId oldId) |
Map<ReservationInterval,org.apache.hadoop.yarn.api.records.Resource> |
StageAllocatorGreedy.computeStageAllocation(Plan plan,
Map<Long,org.apache.hadoop.yarn.api.records.Resource> planLoads,
RLESparseResourceAllocation planModifications,
org.apache.hadoop.yarn.api.records.ReservationRequest rr,
long stageEarliestStart,
long stageDeadline,
String user,
org.apache.hadoop.yarn.api.records.ReservationId oldId) |
Map<ReservationInterval,org.apache.hadoop.yarn.api.records.Resource> |
StageAllocator.computeStageAllocation(Plan plan,
Map<Long,org.apache.hadoop.yarn.api.records.Resource> planLoads,
RLESparseResourceAllocation planModifications,
org.apache.hadoop.yarn.api.records.ReservationRequest rr,
long stageEarliestStart,
long stageDeadline,
String user,
org.apache.hadoop.yarn.api.records.ReservationId oldId)
Computes the allocation of a stage inside a defined time interval.
|
protected Map<ReservationInterval,org.apache.hadoop.yarn.api.records.Resource> |
IterativePlanner.computeStageAllocation(Plan plan,
org.apache.hadoop.yarn.api.records.ReservationRequest rr,
long stageArrivalTime,
long stageDeadline,
String user,
org.apache.hadoop.yarn.api.records.ReservationId oldId) |
boolean |
TryManyReservationAgents.createReservation(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan,
org.apache.hadoop.yarn.api.records.ReservationDefinition contract) |
boolean |
ReservationAgent.createReservation(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan,
org.apache.hadoop.yarn.api.records.ReservationDefinition contract)
Create a reservation for the user that abides by the specified contract
|
boolean |
PlanningAlgorithm.createReservation(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan,
org.apache.hadoop.yarn.api.records.ReservationDefinition contract) |
boolean |
GreedyReservationAgent.createReservation(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan,
org.apache.hadoop.yarn.api.records.ReservationDefinition contract) |
boolean |
AlignedPlannerWithGreedy.createReservation(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan,
org.apache.hadoop.yarn.api.records.ReservationDefinition contract) |
boolean |
TryManyReservationAgents.deleteReservation(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan) |
boolean |
ReservationAgent.deleteReservation(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan)
Delete an user reservation
|
boolean |
PlanningAlgorithm.deleteReservation(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan) |
boolean |
GreedyReservationAgent.deleteReservation(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan) |
boolean |
AlignedPlannerWithGreedy.deleteReservation(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan) |
protected long |
StageEarliestStartByDemand.getRoundedDuration(org.apache.hadoop.yarn.api.records.ReservationRequest stage,
Plan plan) |
protected void |
IterativePlanner.initialize(Plan plan,
org.apache.hadoop.yarn.api.records.ReservationId reservationId,
org.apache.hadoop.yarn.api.records.ReservationDefinition reservation) |
void |
SimpleCapacityReplanner.plan(Plan plan,
List<org.apache.hadoop.yarn.api.records.ReservationDefinition> contracts) |
void |
Planner.plan(Plan plan,
List<org.apache.hadoop.yarn.api.records.ReservationDefinition> contracts)
Update the existing
Plan , by adding/removing/updating existing
reservations, and adding a subset of the reservation requests in the
contracts parameter. |
long |
StageEarliestStartByJobArrival.setEarliestStartTime(Plan plan,
org.apache.hadoop.yarn.api.records.ReservationDefinition reservation,
int index,
org.apache.hadoop.yarn.api.records.ReservationRequest current,
long stageDeadline) |
long |
StageEarliestStartByDemand.setEarliestStartTime(Plan plan,
org.apache.hadoop.yarn.api.records.ReservationDefinition reservation,
int index,
org.apache.hadoop.yarn.api.records.ReservationRequest current,
long stageDeadline) |
long |
StageEarliestStart.setEarliestStartTime(Plan plan,
org.apache.hadoop.yarn.api.records.ReservationDefinition reservation,
int index,
org.apache.hadoop.yarn.api.records.ReservationRequest currentReservationStage,
long stageDeadline)
Computes the earliest allowed starting time for a given stage.
|
boolean |
TryManyReservationAgents.updateReservation(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan,
org.apache.hadoop.yarn.api.records.ReservationDefinition contract) |
boolean |
ReservationAgent.updateReservation(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan,
org.apache.hadoop.yarn.api.records.ReservationDefinition contract)
Update a reservation for the user that abides by the specified contract
|
boolean |
PlanningAlgorithm.updateReservation(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan,
org.apache.hadoop.yarn.api.records.ReservationDefinition contract) |
boolean |
GreedyReservationAgent.updateReservation(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan,
org.apache.hadoop.yarn.api.records.ReservationDefinition contract) |
boolean |
AlignedPlannerWithGreedy.updateReservation(org.apache.hadoop.yarn.api.records.ReservationId reservationId,
String user,
Plan plan,
org.apache.hadoop.yarn.api.records.ReservationDefinition contract) |
Copyright © 2017 Apache Software Foundation. All Rights Reserved.