@InterfaceAudience.Private
@InterfaceStability.Unstable
public interface PlacementConstraintManager
PlacementConstraint
).Modifier and Type | Method and Description |
---|---|
void |
addConstraint(org.apache.hadoop.yarn.api.records.ApplicationId appId,
Set<String> sourceTags,
org.apache.hadoop.yarn.api.resource.PlacementConstraint placementConstraint,
boolean replace)
Add a placement constraint for a given application and a given set of
(source) allocation tags.
|
void |
addGlobalConstraint(Set<String> sourceTags,
org.apache.hadoop.yarn.api.resource.PlacementConstraint placementConstraint,
boolean replace)
Add a placement constraint that will be used globally.
|
org.apache.hadoop.yarn.api.resource.PlacementConstraint |
getConstraint(org.apache.hadoop.yarn.api.records.ApplicationId appId,
Set<String> sourceTags)
Retrieve the placement constraint that is associated with a set of
allocation tags for a given application.
|
Map<Set<String>,org.apache.hadoop.yarn.api.resource.PlacementConstraint> |
getConstraints(org.apache.hadoop.yarn.api.records.ApplicationId appId)
Retrieve all constraints for a given application, along with the allocation
tags that enable each constraint.
|
org.apache.hadoop.yarn.api.resource.PlacementConstraint |
getGlobalConstraint(Set<String> sourceTags)
Retrieve a global constraint that is associated with a given set of
allocation tags.
|
org.apache.hadoop.yarn.api.resource.PlacementConstraint |
getMultilevelConstraint(org.apache.hadoop.yarn.api.records.ApplicationId applicationId,
Set<String> sourceTags,
org.apache.hadoop.yarn.api.resource.PlacementConstraint schedulingRequestConstraint)
Consider all levels of constraints (scheduling request, app, cluster) and
return a merged constraint.
|
int |
getNumGlobalConstraints()
Returns the number of global constraints registered in the Placement
Constraint Manager.
|
int |
getNumRegisteredApplications()
Returns the number of currently registered applications in the Placement
Constraint Manager.
|
void |
registerApplication(org.apache.hadoop.yarn.api.records.ApplicationId appId,
Map<Set<String>,org.apache.hadoop.yarn.api.resource.PlacementConstraint> constraintMap)
Register all placement constraints of an application.
|
void |
removeGlobalConstraint(Set<String> sourceTags)
Remove a global constraint that is associated with the given allocation
tags.
|
void |
unregisterApplication(org.apache.hadoop.yarn.api.records.ApplicationId appId)
Remove the constraints that correspond to a given application.
|
default boolean |
validateConstraint(Set<String> sourceTags,
org.apache.hadoop.yarn.api.resource.PlacementConstraint placementConstraint)
Validate a placement constraint and the set of allocation tags that will
enable it.
|
void registerApplication(org.apache.hadoop.yarn.api.records.ApplicationId appId, Map<Set<String>,org.apache.hadoop.yarn.api.resource.PlacementConstraint> constraintMap)
appId
- the application IDconstraintMap
- the map of allocation tags to constraints for this
applicationvoid addConstraint(org.apache.hadoop.yarn.api.records.ApplicationId appId, Set<String> sourceTags, org.apache.hadoop.yarn.api.resource.PlacementConstraint placementConstraint, boolean replace)
appId
- the application IDsourceTags
- the set of allocation tags that will enable this
constraintplacementConstraint
- the constraintreplace
- if true, an existing constraint for these tags will be
replaced by the given onevoid addGlobalConstraint(Set<String> sourceTags, org.apache.hadoop.yarn.api.resource.PlacementConstraint placementConstraint, boolean replace)
sourceTags
- the allocation tags that will enable this constraintplacementConstraint
- the constraintreplace
- if true, an existing constraint for these tags will be
replaced by the given oneMap<Set<String>,org.apache.hadoop.yarn.api.resource.PlacementConstraint> getConstraints(org.apache.hadoop.yarn.api.records.ApplicationId appId)
appId
- the application IDorg.apache.hadoop.yarn.api.resource.PlacementConstraint getConstraint(org.apache.hadoop.yarn.api.records.ApplicationId appId, Set<String> sourceTags)
appId
- the application IDsourceTags
- the allocation tags that enable this constraintorg.apache.hadoop.yarn.api.resource.PlacementConstraint getGlobalConstraint(Set<String> sourceTags)
sourceTags
- the allocation tags that enable this constraintorg.apache.hadoop.yarn.api.resource.PlacementConstraint getMultilevelConstraint(org.apache.hadoop.yarn.api.records.ApplicationId applicationId, Set<String> sourceTags, org.apache.hadoop.yarn.api.resource.PlacementConstraint schedulingRequestConstraint)
applicationId
- application IDsourceTags
- a set of source allocation tagsschedulingRequestConstraint
- placement constraint at scheduling
request levelvoid unregisterApplication(org.apache.hadoop.yarn.api.records.ApplicationId appId)
appId
- the application that will be removed.void removeGlobalConstraint(Set<String> sourceTags)
sourceTags
- the allocation tagsint getNumRegisteredApplications()
int getNumGlobalConstraints()
default boolean validateConstraint(Set<String> sourceTags, org.apache.hadoop.yarn.api.resource.PlacementConstraint placementConstraint)
sourceTags
- the associated allocation tagsplacementConstraint
- the constraintCopyright © 2008–2020 Apache Software Foundation. All rights reserved.