@InterfaceAudience.Public @InterfaceStability.Stable public abstract class NMClient extends AbstractService
Modifier | Constructor and Description |
---|---|
protected |
NMClient(String name) |
Modifier and Type | Method and Description |
---|---|
abstract void |
cleanupRunningContainersOnStop(boolean enabled)
Set whether the containers that are started by this client, and are
still running should be stopped when the client stops.
|
abstract void |
commitLastReInitialization(ContainerId containerId)
Commit last reInitialization of the specified container.
|
static NMClient |
createNMClient()
Create a new instance of NMClient.
|
static NMClient |
createNMClient(String name)
Create a new instance of NMClient.
|
abstract ContainerStatus |
getContainerStatus(ContainerId containerId,
NodeId nodeId)
Query the status of a container.
|
List<LocalizationStatus> |
getLocalizationStatuses(ContainerId containerId,
NodeId nodeId)
Get the localization statuses of a container.
|
NMTokenCache |
getNMTokenCache()
Get the NM token cache of the
NMClient . |
NodeId |
getNodeIdOfStartedContainer(ContainerId containerId)
Get the NodeId of the node on which container is running.
|
abstract void |
increaseContainerResource(Container container)
Deprecated.
|
void |
localize(ContainerId containerId,
NodeId nodeId,
Map<String,LocalResource> localResources)
Localize resources for a container.
|
abstract void |
reInitializeContainer(ContainerId containerId,
ContainerLaunchContext containerLaunchContex,
boolean autoCommit)
Re-Initialize the Container.
|
abstract void |
restartContainer(ContainerId containerId)
Restart the specified container.
|
abstract void |
rollbackLastReInitialization(ContainerId containerId)
Rollback last reInitialization of the specified container.
|
void |
setNMTokenCache(NMTokenCache nmTokenCache)
Set the NM Token cache of the
NMClient . |
abstract Map<String,ByteBuffer> |
startContainer(Container container,
ContainerLaunchContext containerLaunchContext)
Start an allocated container.
|
abstract void |
stopContainer(ContainerId containerId,
NodeId nodeId)
Stop an started container.
|
abstract void |
updateContainerResource(Container container)
Update the resources of a container.
|
close, getBlockers, getConfig, getFailureCause, getFailureState, getLifecycleHistory, getName, getServiceState, getStartTime, init, isInState, noteFailure, putBlocker, registerGlobalListener, registerServiceListener, removeBlocker, serviceInit, serviceStart, serviceStop, setConfig, start, stop, toString, unregisterGlobalListener, unregisterServiceListener, waitForServiceToStop
@InterfaceAudience.Private protected NMClient(String name)
@InterfaceAudience.Public public static NMClient createNMClient()
@InterfaceAudience.Public public static NMClient createNMClient(String name)
public abstract Map<String,ByteBuffer> startContainer(Container container, ContainerLaunchContext containerLaunchContext) throws YarnException, IOException
Start an allocated container.
The ApplicationMaster
or other applications that use the
client must provide the details of the allocated container, including the
Id, the assigned node's Id and the token via Container
. In
addition, the AM needs to provide the ContainerLaunchContext
as
well.
container
- the allocated containercontainerLaunchContext
- the context information needed by the
NodeManager
to launch the
containerYarnException
- YarnException.IOException
- IOException.@Deprecated public abstract void increaseContainerResource(Container container) throws YarnException, IOException
Increase the resource of a container.
The ApplicationMaster
or other applications that use the
client must provide the details of the container, including the Id and
the target resource encapsulated in the updated container token via
Container
.
container
- the container with updated token.YarnException
- YarnException.IOException
- IOException.public abstract void updateContainerResource(Container container) throws YarnException, IOException
Update the resources of a container.
The ApplicationMaster
or other applications that use the
client must provide the details of the container, including the Id and
the target resource encapsulated in the updated container token via
Container
.
container
- the container with updated token.YarnException
- YarnException.IOException
- IOException.public abstract void stopContainer(ContainerId containerId, NodeId nodeId) throws YarnException, IOException
Stop an started container.
containerId
- the Id of the started containernodeId
- the Id of the NodeManager
YarnException
- YarnException.IOException
- IOException.public abstract ContainerStatus getContainerStatus(ContainerId containerId, NodeId nodeId) throws YarnException, IOException
Query the status of a container.
containerId
- the Id of the started containernodeId
- the Id of the NodeManager
YarnException
- YarnException.IOException
- IOException.public abstract void reInitializeContainer(ContainerId containerId, ContainerLaunchContext containerLaunchContex, boolean autoCommit) throws YarnException, IOException
Re-Initialize the Container.
containerId
- the Id of the container to Re-Initialize.containerLaunchContex
- the updated ContainerLaunchContext.autoCommit
- commit re-initialization automatically ?YarnException
- YarnException.IOException
- IOException.public abstract void restartContainer(ContainerId containerId) throws YarnException, IOException
Restart the specified container.
containerId
- the Id of the container to restart.YarnException
- YarnException.IOException
- IOException.public abstract void rollbackLastReInitialization(ContainerId containerId) throws YarnException, IOException
Rollback last reInitialization of the specified container.
containerId
- the Id of the container to restart.YarnException
- YarnException.IOException
- IOException.public abstract void commitLastReInitialization(ContainerId containerId) throws YarnException, IOException
Commit last reInitialization of the specified container.
containerId
- the Id of the container to commit reInitialize.YarnException
- YarnException.IOException
- IOException.public abstract void cleanupRunningContainersOnStop(boolean enabled)
Set whether the containers that are started by this client, and are still running should be stopped when the client stops. By default, the feature should be enabled.
However, containers will be stopped only when service is stopped. i.e. afterAbstractService.stop()
.enabled
- whether the feature is enabled or notpublic void setNMTokenCache(NMTokenCache nmTokenCache)
NMClient
. This cache must be
shared with the AMRMClient
that requested the containers managed
by this NMClient
If a NM token cache is not set, the NMTokenCache.getSingleton()
singleton instance will be used.
nmTokenCache
- the NM token cache to use.public NMTokenCache getNMTokenCache()
NMClient
. This cache must be
shared with the AMRMClient
that requested the containers managed
by this NMClient
If a NM token cache is not set, the NMTokenCache.getSingleton()
singleton instance will be used.
public NodeId getNodeIdOfStartedContainer(ContainerId containerId)
containerId
- Container Id of the container.@InterfaceStability.Unstable public void localize(ContainerId containerId, NodeId nodeId, Map<String,LocalResource> localResources) throws YarnException, IOException
containerId
- the ID of the containernodeId
- node Id of the containerlocalResources
- resources to localizeYarnException
IOException
@InterfaceStability.Unstable public List<LocalizationStatus> getLocalizationStatuses(ContainerId containerId, NodeId nodeId) throws YarnException, IOException
containerId
- the Id of the containernodeId
- node Id of the containerYarnException
- YarnException.IOException
- IOException.Copyright © 2022 Apache Software Foundation. All rights reserved.