You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-issues@hadoop.apache.org by "Steve Loughran (JIRA)" <ji...@apache.org> on 2013/11/07 14:25:27 UTC

[jira] [Commented] (YARN-941) RM Should have a way to update the tokens it has for a running application

    [ https://issues.apache.org/jira/browse/YARN-941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13815946#comment-13815946 ] 

Steve Loughran commented on YARN-941:
-------------------------------------

Thinking some more, if the AM  just terminated itself with a special error code when tokens stopped working, then when it exits the RM could restart it and not file this as a failure -which would push back most of the token expiry logic into the AM -the RM wouldn't need to see when tokens had expired on running containers and restart them, just wait for container stopped events as usual and react slightly differently to the exit codes. 

This strategy would also give the AM the opportunity do cleaner shutdowns, send out notifications &c. If there was a way to determine the expiry time in advance then it could even display its remaining life to management tools/web UIs

> RM Should have a way to update the tokens it has for a running application
> --------------------------------------------------------------------------
>
>                 Key: YARN-941
>                 URL: https://issues.apache.org/jira/browse/YARN-941
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>            Reporter: Robert Joseph Evans
>
> When an application is submitted to the RM it includes with it a set of tokens that the RM will renew on behalf of the application, that will be passed to the AM when the application is launched, and will be used when launching the application to access HDFS to download files on behalf of the application.
> For long lived applications/services these tokens can expire, and then the tokens that the AM has will be invalid, and the tokens that the RM had will also not work to launch a new AM.
> We need to provide an API that will allow the RM to replace the current tokens for this application with a new set.  To avoid any real race issues, I think this API should be something that the AM calls, so that the client can connect to the AM with a new set of tokens it got using kerberos, then the AM can inform the RM of the new set of tokens and quickly update its tokens internally to use these new ones.



--
This message was sent by Atlassian JIRA
(v6.1#6144)