public ContainerManagementProtocolProxy(Configuration conf) { this(conf, NMTokenCache.getSingleton()); }
/** * Returns NMToken, null if absent. Only the singleton obtained from * {@link #getSingleton()} is looked at for the tokens. If you are using your * own NMTokenCache that is different from the singleton, use * {@link #getToken(String) } * * @param nodeAddr * @return {@link Token} NMToken required for communicating with node manager */ @Public public static Token getNMToken(String nodeAddr) { return NM_TOKEN_CACHE.getToken(nodeAddr); }
/** * Sets the NMToken for node address only in the singleton obtained from * {@link #getSingleton()}. If you are using your own NMTokenCache that is * different from the singleton, use {@link #setToken(String, Token) } * * @param nodeAddr * node address (host:port) * @param token * NMToken */ @Public public static void setNMToken(String nodeAddr, Token token) { NM_TOKEN_CACHE.setToken(nodeAddr, token); }
@Private @VisibleForTesting protected void populateNMTokens(List<NMToken> nmTokens) { for (NMToken token : nmTokens) { String nodeId = token.getNodeId().toString(); if (getNMTokenCache().containsToken(nodeId)) { LOG.info("Replacing token for : " + nodeId); } else { LOG.info("Received new token for : " + nodeId); } getNMTokenCache().setToken(nodeId, token.getToken()); } }
/** * Populate node manager token cache in {@link NMTokenCache}. * * @param allocateResponse the allocate response */ @SuppressWarnings("static-access") protected void populateNmTokenCache(AllocateResponse allocateResponse) { // In some distros NMTokenCache don't have static methods // so it's ok to suppress warnings for it, and anyway // we need to stay compatible NMTokenCache tokenCache = NMTokenCacheCompat.getNMTokenCache(); for (NMToken token : allocateResponse.getNMTokens()) { String nodeId = token.getNodeId().toString(); if (log.isDebugEnabled()) { log.info("Token from allocateResponse token=" + token); if (NMTokenCacheCompat.containsToken(tokenCache, nodeId)) { log.debug("Replacing token for : " + nodeId); } else { log.debug("Received new token for : " + nodeId); } } tokenCache.setNMToken(nodeId, token.getToken()); } }
} else { log.debug("Creating NMTokenCache using constructor, further access via instance static methods."); nmTokenCache = new NMTokenCache();
@SuppressWarnings("static-access") @Override protected UserGroupInformation getUser() { InetSocketAddress rpcAddress = getRpcAddress(getConfiguration()); Token token = NMTokenCacheCompat.getNMTokenCache().getNMToken(container.getNodeId().toString()); // this is what node manager requires for auth UserGroupInformation user = UserGroupInformation.createRemoteUser(container.getId().getApplicationAttemptId().toString()); org.apache.hadoop.security.token.Token<NMTokenIdentifier> nmToken = ConverterUtils.convertFromYarn(token, rpcAddress); user.addToken(nmToken); return user; }
@Private @VisibleForTesting protected void populateNMTokens(List<NMToken> nmTokens) { for (NMToken token : nmTokens) { String nodeId = token.getNodeId().toString(); if (getNMTokenCache().containsToken(nodeId)) { LOG.info("Replacing token for : " + nodeId); } else { LOG.info("Received new token for : " + nodeId); } getNMTokenCache().setToken(nodeId, token.getToken()); } }
NMTokenCache.setNMToken(nmToken.getNodeId().toString(), nmToken.getToken());
private void _registerSchedulerAndCreateNMClient(String queue) throws Exception { NMTokenCache nmTokenCache = new NMTokenCache(); nmClient = NMClient.createNMClient(); nmClient.setNMTokenCache(nmTokenCache);
@Private @VisibleForTesting protected void populateNMTokens(List<NMToken> nmTokens) { for (NMToken token : nmTokens) { String nodeId = token.getNodeId().toString(); if (getNMTokenCache().containsToken(nodeId)) { LOG.info("Replacing token for : " + nodeId); } else { LOG.info("Received new token for : " + nodeId); } getNMTokenCache().setToken(nodeId, token.getToken()); } }
public ContainerManagementProtocolProxy(Configuration conf) { this(conf, NMTokenCache.getSingleton()); }
/** * Returns NMToken, null if absent. Only the singleton obtained from * {@link #getSingleton()} is looked at for the tokens. If you are using your * own NMTokenCache that is different from the singleton, use * {@link #getToken(String) } * * @param nodeAddr * @return {@link Token} NMToken required for communicating with node manager */ @Public public static Token getNMToken(String nodeAddr) { return NM_TOKEN_CACHE.getToken(nodeAddr); }
/** * Sets the NMToken for node address only in the singleton obtained from * {@link #getSingleton()}. If you are using your own NMTokenCache that is * different from the singleton, use {@link #setToken(String, Token) } * * @param nodeAddr * node address (host:port) * @param token * NMToken */ @Public public static void setNMToken(String nodeAddr, Token token) { NM_TOKEN_CACHE.setToken(nodeAddr, token); }
NMTokenCache.setNMToken(nmToken.getNodeId().toString(), nmToken.getToken());
@Private @VisibleForTesting protected void populateNMTokens(List<NMToken> nmTokens) { for (NMToken token : nmTokens) { String nodeId = token.getNodeId().toString(); if (LOG.isDebugEnabled()) { if (getNMTokenCache().containsToken(nodeId)) { LOG.debug("Replacing token for : " + nodeId); } else { LOG.debug("Received new token for : " + nodeId); } } getNMTokenCache().setToken(nodeId, token.getToken()); } }
public ContainerManagementProtocolProxy(Configuration conf) { this(conf, NMTokenCache.getSingleton()); }
/** * Returns NMToken, null if absent. Only the singleton obtained from * {@link #getSingleton()} is looked at for the tokens. If you are using your * own NMTokenCache that is different from the singleton, use * {@link #getToken(String) } * * @param nodeAddr * @return {@link Token} NMToken required for communicating with node manager */ @Public public static Token getNMToken(String nodeAddr) { return NM_TOKEN_CACHE.getToken(nodeAddr); }
/** * Sets the NMToken for node address only in the singleton obtained from * {@link #getSingleton()}. If you are using your own NMTokenCache that is * different from the singleton, use {@link #setToken(String, Token) } * * @param nodeAddr * node address (host:port) * @param token * NMToken */ @Public public static void setNMToken(String nodeAddr, Token token) { NM_TOKEN_CACHE.setToken(nodeAddr, token); }
NMTokenCache.setNMToken(nmToken.getNodeId().toString(), nmToken.getToken());