You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-issues@hadoop.apache.org by "Yuren Wu (JIRA)" <ji...@apache.org> on 2016/05/18 19:11:13 UTC

[jira] [Commented] (MAPREDUCE-6565) Configuration to use host name in delegation token service is not read from job.xml during MapReduce job execution.

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

Yuren Wu commented on MAPREDUCE-6565:
-------------------------------------

Looks like no patch is available here. I propose to handle it in the DFSUtil.createKeyProvider method. 
    // get useIp flag for KMS 
    
    boolean useIp = conf.getBoolean(
            CommonConfigurationKeys.HADOOP_SECURITY_TOKEN_SERVICE_USE_IP,
            CommonConfigurationKeys.HADOOP_SECURITY_TOKEN_SERVICE_USE_IP_DEFAULT);
    LOG.debug("set "+CommonConfigurationKeys.HADOOP_SECURITY_TOKEN_SERVICE_USE_IP +" value from config." +useIp);
    SecurityUtil.setTokenServiceUseIp(useIp);

> Configuration to use host name in delegation token service is not read from job.xml during MapReduce job execution.
> -------------------------------------------------------------------------------------------------------------------
>
>                 Key: MAPREDUCE-6565
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-6565
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>            Reporter: Chris Nauroth
>
> By default, the service field of a delegation token is populated based on server IP address.  Setting {{hadoop.security.token.service.use_ip}} to {{false}} changes this behavior to use host name instead of IP address.  However, this configuration property is not read from job.xml.  Instead, it's read from a separate {{Configuration}} instance created during static initialization of {{SecurityUtil}}.  This does not work correctly with MapReduce jobs if the framework is distributed by setting {{mapreduce.application.framework.path}} and the {{mapreduce.application.classpath}} is isolated to avoid reading core-site.xml from the cluster nodes.  MapReduce tasks will fail to authenticate to HDFS, because they'll try to find a delegation token based on the NameNode IP address, even though at job submission time the tokens were generated using the host name.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: mapreduce-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: mapreduce-issues-help@hadoop.apache.org