You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Xiao Chen (JIRA)" <ji...@apache.org> on 2016/06/02 03:08:59 UTC
[jira] [Updated] (HADOOP-13155) Implement TokenRenewer to renew and
cancel delegation tokens in KMS
[ https://issues.apache.org/jira/browse/HADOOP-13155?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Xiao Chen updated HADOOP-13155:
-------------------------------
Attachment: HADOOP-13155.07.patch
Thanks again [~andrew.wang] for the discussion, and for getting HADOOP-13228 in.
Attached patch 7 is a rebase on latest trunk.
Regarding the config and compat:
- {{DFSUtilClient}} now has a static variable for storing the config name, and defaults to dfs._ for compat. It can be set via {{DFSUtilClient#setKeyProviderUriKeyName}}.
- The provider creation logic is extracted to a new class {{KMSUtil}} in common.
- The newly added renewer classes uses {{KMSUtil}}, but since they're in common, they use the hadoop._ configs. Of course, this means one will need to have both configs set correctly so that the token can be renewed, but this seems to be the most compatible way.
> Implement TokenRenewer to renew and cancel delegation tokens in KMS
> -------------------------------------------------------------------
>
> Key: HADOOP-13155
> URL: https://issues.apache.org/jira/browse/HADOOP-13155
> Project: Hadoop Common
> Issue Type: Bug
> Reporter: Xiao Chen
> Assignee: Xiao Chen
> Attachments: HADOOP-13155.01.patch, HADOOP-13155.02.patch, HADOOP-13155.03.patch, HADOOP-13155.04.patch, HADOOP-13155.05.patch, HADOOP-13155.06.patch, HADOOP-13155.07.patch, HADOOP-13155.pre.patch
>
>
> Service DelegationToken (DT) renewal is done in Yarn by {{org.apache.hadoop.yarn.server.resourcemanager.security.DelegationTokenRenewer}}, where it calls {{Token#renew}} and uses ServiceLoader to find the renewer class ([code|https://github.com/apache/hadoop/blob/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/token/Token.java#L382]), and invokes the renew method from it.
> We seem to miss the token renewer class in KMS / HttpFSFileSystem, and hence Yarn defaults to {{TrivialRenewer}} for DT of such kinds, resulting in the token not being renewed.
> As a side note, {{HttpFSFileSystem}} does have a {{renewDelegationToken}} API, but I don't see it invoked in hadoop code base. KMS does not have any renew hook.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org