You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "Daryn Sharp (JIRA)" <ji...@apache.org> on 2015/01/06 17:09:35 UTC

[jira] [Commented] (HDFS-7586) HFTP does not work when namenode bind on wildcard

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

Daryn Sharp commented on HDFS-7586:
-----------------------------------

I think this is due to a misconfig.  The rpc-address key should be an actual ip/host:port.  There is a rpc-bind-host key that should be set to 0.0.0.0 for multihoming.  For more details, see:

http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HdfsMultihoming.html



> HFTP does not work when namenode bind on wildcard
> -------------------------------------------------
>
>                 Key: HDFS-7586
>                 URL: https://issues.apache.org/jira/browse/HDFS-7586
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: datanode
>    Affects Versions: 2.2.0, 2.3.0, 2.4.0, 2.5.0, 2.6.0
>            Reporter: Benoit Perroud
>            Priority: Minor
>         Attachments: HDFS-7586-v0.1.txt
>
>
> When wildcard binding for NameNode RPC is turned on (i.e.  dfs.namenode.rpc-address=0.0.0.0:8020), HFTP download is failing.
> Call to http://namenode:50070/data/.. returns the header Location with parameter nnaddr=0.0.0.0:8020, which is unlikely to ever succeed :)
> The idea would be, if wildcard binding is enabled, to get read the IP address the request is actually connected to from the HttpServletRequest and return this one.
> WDYT?
> How to reproduce:
> 1. Turn on wildcard binding
> {code}dfs.namenode.rpc-address=0.0.0.0:8020{code}
> 2. Upload a file
> {code}$ echo "123" | hdfs dfs -put - /tmp/randomFile.txt{code}
> 3. Validate it's failing
> {code}
> $ hdfs dfs -cat hftp://namenode1/tmp/randomFile.txt
> {code}
> 4. Get more details via curl
> {code}
> $ curl -vv http://namenode1:50070/data/tmp/randomFile.txt?ugi=hdfs | grep "Location:"
>  Location: http://datanode003:50075/streamFile/tmp/randomFile.txt?ugi=hdfs&amp;nnaddr=0.0.0.0:8020
> {code}
> We can clearly see the 0.0.0.0 returned as the NN ip.



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