public class NodeStatusUpdaterImpl extends AbstractService implements NodeStatusUpdater
Service.STATE
Modifier and Type | Field and Description |
---|---|
static String |
YARN_NODEMANAGER_DURATION_TO_TRACK_STOPPED_CONTAINERS |
Constructor and Description |
---|
NodeStatusUpdaterImpl(Context context,
Dispatcher dispatcher,
NodeHealthCheckerService healthChecker,
NodeManagerMetrics metrics) |
Modifier and Type | Method and Description |
---|---|
void |
addStoppedContainersToCache(ContainerId containerId) |
void |
clearFinishedContainersFromCache() |
NodeStatus |
getNodeStatusAndUpdateContainersInContext() |
protected ResourceTracker |
getRMClient() |
long |
getRMIdentifier() |
boolean |
isContainerRecentlyStopped(ContainerId containerId) |
protected boolean |
isTokenKeepAliveEnabled(Configuration conf) |
protected void |
rebootNodeStatusUpdater() |
protected void |
registerWithRM() |
void |
removeVeryOldStoppedContainersFromCache() |
void |
sendOutofBandHeartBeat() |
protected void |
serviceInit(Configuration conf)
All initialization code needed by a service.
|
protected void |
serviceStart()
Actions called during the INITED to STARTED transition.
|
protected void |
serviceStop()
Actions called during the transition to the STOPPED state.
|
protected void |
startStatusUpdater() |
protected void |
stopRMProxy() |
close, getBlockers, getConfig, getFailureCause, getFailureState, getLifecycleHistory, getName, getServiceState, getStartTime, init, isInState, noteFailure, putBlocker, registerGlobalListener, registerServiceListener, removeBlocker, setConfig, start, stop, toString, unregisterGlobalListener, unregisterServiceListener, waitForServiceToStop
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
close, getBlockers, getConfig, getFailureCause, getFailureState, getLifecycleHistory, getName, getServiceState, getStartTime, init, isInState, registerServiceListener, start, stop, unregisterServiceListener, waitForServiceToStop
public static final String YARN_NODEMANAGER_DURATION_TO_TRACK_STOPPED_CONTAINERS
public NodeStatusUpdaterImpl(Context context, Dispatcher dispatcher, NodeHealthCheckerService healthChecker, NodeManagerMetrics metrics)
protected void serviceInit(Configuration conf) throws Exception
AbstractService
AbstractService.init(Configuration)
prevents re-entrancy.
The base implementation checks to see if the subclass has created
a new configuration instance, and if so, updates the base class valueserviceInit
in class AbstractService
conf
- configurationException
- on a failure -these will be caught,
possibly wrapped, and wil; trigger a service stopprotected void serviceStart() throws Exception
AbstractService
AbstractService.start()
prevents re-entrancy.serviceStart
in class AbstractService
Exception
- if needed -these will be caught,
wrapped, and trigger a service stopprotected void serviceStop() throws Exception
AbstractService
AbstractService.stop()
prevents re-entrancy.
Implementations MUST write this to be robust against failures, including
checks for null references -and for the first failure to not stop other
attempts to shut down parts of the service.serviceStop
in class AbstractService
Exception
- if needed -these will be caught and logged.protected void rebootNodeStatusUpdater()
protected void stopRMProxy()
@InterfaceAudience.Private protected boolean isTokenKeepAliveEnabled(Configuration conf)
protected ResourceTracker getRMClient() throws IOException
IOException
protected void registerWithRM() throws YarnException, IOException
YarnException
IOException
public NodeStatus getNodeStatusAndUpdateContainersInContext()
getNodeStatusAndUpdateContainersInContext
in interface NodeStatusUpdater
public void sendOutofBandHeartBeat()
sendOutofBandHeartBeat
in interface NodeStatusUpdater
public boolean isContainerRecentlyStopped(ContainerId containerId)
isContainerRecentlyStopped
in interface NodeStatusUpdater
@InterfaceAudience.Private public void addStoppedContainersToCache(ContainerId containerId)
public void clearFinishedContainersFromCache()
clearFinishedContainersFromCache
in interface NodeStatusUpdater
@InterfaceAudience.Private public void removeVeryOldStoppedContainersFromCache()
public long getRMIdentifier()
getRMIdentifier
in interface NodeStatusUpdater
protected void startStatusUpdater()
Copyright © 2013 Apache Software Foundation. All rights reserved.