2
curl -i -X PUT "http://SomeHostname:50070/webhdfs/v1/file1?op=CREATE"
HTTP/1.1 307 TEMPORARY_REDIRECT
Content-Type: application/octet-stream
Location: http://sslave0:50075/webhdfs/v1/file1?op=CREATE&overwrite=false
Content-Length: 0
Server: Jetty(6.1.26)

这里它为datanode返回sslave0,对我来说似乎是一个内部地址

4

1 回答 1

0

使用 WebHDFS,在您的情况下,NameNode Web 界面 @port 50070 接受 put 请求并分配有关要存储的文件的元数据信息。然后它返回一个重定向到一个数据节点地址(ssalve0:50075 地址),在该地址完成了实际的 Http PUT。

底线 - 名称节点不存储任何真实数据,仅存储元数据。它是存储文件实际信息的数据节点 - 因此重定向

如果你想拥有一个不需要以这种方式处理数据节点的单个代理节点,那么你需要配置HttpFs

于 2013-11-13T00:25:18.190 回答