@InterfaceAudience.Private @InterfaceStability.Unstable public class FSSchedulerNode extends SchedulerNode
| Constructor and Description |
|---|
FSSchedulerNode(RMNode node,
boolean usePortForNodeName) |
| Modifier and Type | Method and Description |
|---|---|
void |
allocateContainer(org.apache.hadoop.yarn.api.records.ApplicationId applicationId,
RMContainer rmContainer)
The Scheduler has allocated containers on this node to the
given application.
|
void |
applyDeltaOnAvailableResource(org.apache.hadoop.yarn.api.records.Resource deltaResource)
Apply delta resource on node's available resource.
|
org.apache.hadoop.yarn.api.records.Resource |
getAvailableResource()
Get available resources on the node.
|
String |
getHttpAddress() |
org.apache.hadoop.yarn.api.records.NodeId |
getNodeID()
Get the ID of the node which contains both its hostname and port.
|
String |
getNodeName()
Get the name of the node for scheduling matching decisions.
|
int |
getNumContainers()
Get number of active containers on the node.
|
String |
getRackName()
Get rackname.
|
AppSchedulable |
getReservedAppSchedulable() |
RMContainer |
getReservedContainer() |
RMNode |
getRMNode() |
List<RMContainer> |
getRunningContainers() |
org.apache.hadoop.yarn.api.records.Resource |
getTotalResource()
Get total resources on the node.
|
org.apache.hadoop.yarn.api.records.Resource |
getUsedResource()
Get used resources on the node.
|
void |
releaseContainer(org.apache.hadoop.yarn.api.records.Container container)
Release an allocated container on this node.
|
void |
reserveResource(FSSchedulerApp application,
org.apache.hadoop.yarn.api.records.Priority priority,
RMContainer reservedContainer) |
String |
toString() |
void |
unreserveResource(FSSchedulerApp application) |
public FSSchedulerNode(RMNode node, boolean usePortForNodeName)
public RMNode getRMNode()
public org.apache.hadoop.yarn.api.records.NodeId getNodeID()
SchedulerNodegetNodeID in class SchedulerNodepublic String getHttpAddress()
public String getNodeName()
SchedulerNodeYarnConfiguration.RM_SCHEDULER_INCLUDE_PORT_IN_NODE_NAME constant.
The main usecase of this is Yarn minicluster to be able to differentiate
node manager instances by their port number.getNodeName in class SchedulerNodepublic String getRackName()
SchedulerNodegetRackName in class SchedulerNodepublic void allocateContainer(org.apache.hadoop.yarn.api.records.ApplicationId applicationId,
RMContainer rmContainer)
applicationId - applicationrmContainer - allocated containerpublic org.apache.hadoop.yarn.api.records.Resource getAvailableResource()
SchedulerNodegetAvailableResource in class SchedulerNodepublic org.apache.hadoop.yarn.api.records.Resource getUsedResource()
SchedulerNodegetUsedResource in class SchedulerNodepublic void releaseContainer(org.apache.hadoop.yarn.api.records.Container container)
container - container to be releasedpublic org.apache.hadoop.yarn.api.records.Resource getTotalResource()
SchedulerNodegetTotalResource in class SchedulerNodepublic int getNumContainers()
SchedulerNodegetNumContainers in class SchedulerNodepublic List<RMContainer> getRunningContainers()
public void reserveResource(FSSchedulerApp application, org.apache.hadoop.yarn.api.records.Priority priority, RMContainer reservedContainer)
public void unreserveResource(FSSchedulerApp application)
public RMContainer getReservedContainer()
public AppSchedulable getReservedAppSchedulable()
public void applyDeltaOnAvailableResource(org.apache.hadoop.yarn.api.records.Resource deltaResource)
SchedulerNodeapplyDeltaOnAvailableResource in class SchedulerNodedeltaResource - the delta of resource need to apply to nodeCopyright © 2014 Apache Software Foundation. All Rights Reserved.