List of usage examples for org.apache.hadoop.yarn.server.resourcemanager.scheduler.event NodeAddedSchedulerEvent getAddedRMNode
public RMNode getAddedRMNode()
From source file:org.apache.myriad.scheduler.fgs.YarnNodeCapacityManager.java
License:Apache License
@Override public void afterSchedulerEventHandled(SchedulerEvent event) { switch (event.getType()) { case NODE_ADDED: if (!(event instanceof NodeAddedSchedulerEvent)) { LOGGER.error("{} not an instance of {}", event.getClass().getName(), NodeAddedSchedulerEvent.class.getName()); return; }//from w w w .j ava 2 s . co m NodeAddedSchedulerEvent nodeAddedEvent = (NodeAddedSchedulerEvent) event; NodeId nodeId = nodeAddedEvent.getAddedRMNode().getNodeID(); String host = nodeId.getHost(); SchedulerNode node = yarnScheduler.getSchedulerNode(nodeId); nodeStore.add(node); LOGGER.info("afterSchedulerEventHandled: NM registration from node {}", host); break; case NODE_UPDATE: if (!(event instanceof NodeUpdateSchedulerEvent)) { LOGGER.error("{} not an instance of {}", event.getClass().getName(), NodeUpdateSchedulerEvent.class.getName()); return; } RMNode rmNode = ((NodeUpdateSchedulerEvent) event).getRMNode(); handleContainerAllocation(rmNode); break; default: break; } }