@InterfaceAudience.Public @InterfaceStability.Evolving public class NMTokenCache extends Object
 By default YARN client libraries AMRMClient and NMClient use
 getSingleton() instance of the cache.
 
AMRMClient and NMClient are already set up to use the
     default singleton NMTokenCache
     AMRMClient and the NMClient, setting up
     and using an instance cache is as follows:
 NMTokenCache nmTokenCache = new NMTokenCache(); AMRMClient rmClient = AMRMClient.createAMRMClient(); NMClient nmClient = NMClient.createNMClient(); nmClient.setNMTokenCache(nmTokenCache); ...
AMRMClientAsync and the NMClientAsync,
     setting up and using an instance cache is as follows:
 
   NMTokenCache nmTokenCache = new NMTokenCache();
   AMRMClient rmClient = AMRMClient.createAMRMClient();
   NMClient nmClient = NMClient.createNMClient();
   nmClient.setNMTokenCache(nmTokenCache);
   AMRMClientAsync rmClientAsync = new AMRMClientAsync(rmClient, 1000, [AMRM_CALLBACK]);
   NMClientAsync nmClientAsync = new NMClientAsync("nmClient", nmClient, [NM_CALLBACK]);
   ...
 
   ApplicationMasterProtocol and
     ContainerManagementProtocol directly, setting up and using an
     instance cache is as follows:
 
   NMTokenCache nmTokenCache = new NMTokenCache();
   ...
   ApplicationMasterProtocol amPro = ClientRMProxy.createRMProxy(conf, ApplicationMasterProtocol.class);
   ...
   AllocateRequest allocateRequest = ...
   ...
   AllocateResponse allocateResponse = rmClient.allocate(allocateRequest);
   for (NMToken token : allocateResponse.getNMTokens()) {
     nmTokenCache.setToken(token.getNodeId().toString(), token.getToken());
   }
   ...
   ContainerManagementProtocolProxy nmPro = ContainerManagementProtocolProxy(conf, nmTokenCache);
   ...
   nmPro.startContainer(container, containerContext);
   ...
 
   AMRMClient or
 NMClient, or the async versions of them) with a protocol proxy
 (ContainerManagementProtocolProxy or
 ApplicationMasterProtocol).| Constructor and Description | 
|---|
| NMTokenCache()Creates a NM token cache instance. | 
| Modifier and Type | Method and Description | 
|---|---|
| static Token | getNMToken(String nodeAddr)Returns NMToken, null if absent. | 
| static NMTokenCache | getSingleton()Returns the singleton NM token cache. | 
| Token | getToken(String nodeAddr)Returns NMToken, null if absent | 
| static void | setNMToken(String nodeAddr,
          Token token)Sets the NMToken for node address only in the singleton obtained from
  getSingleton(). | 
| void | setToken(String nodeAddr,
        Token token)Sets the NMToken for node address | 
public static NMTokenCache getSingleton()
@InterfaceAudience.Public public static Token getNMToken(String nodeAddr)
getSingleton() is looked at for the tokens. If you are using your
 own NMTokenCache that is different from the singleton, use
 getToken(String)nodeAddr - Token NMToken required for communicating with node manager@InterfaceAudience.Public public static void setNMToken(String nodeAddr, Token token)
getSingleton(). If you are using your own NMTokenCache that is
 different from the singleton, use setToken(String, Token)nodeAddr - node address (host:port)token - NMToken@InterfaceAudience.Public @InterfaceStability.Evolving public Token getToken(String nodeAddr)
nodeAddr - Token NMToken required for communicating with node
         managerCopyright © 2025 Apache Software Foundation. All rights reserved.