从HDFS读取文件而无需访问数据节点

时间:2015-04-21 22:12:00

标签: hadoop hdfs

我的小组目前有一个Hadoop群集,用于测试(Cloudera),主要和次要名称节点可供所有人通过LAN访问,还有一些数据节点连接到单独的交换机,无法通过LAN访问。

通过此设置,我可以从我的开发人员笔记本电脑连接到名称节点,并执行与文件元数据有关的操作,例如获取目录中的文件列表。但是,我无法读取任何实际的文件内容。

是否有任何方法可以让我只通过名称节点读取文件内容?或者,我是否必须咬紧牙关并正确修复网络设置?

谢谢!

1 个答案:

答案 0 :(得分:2)

您必须使用HttpFS Gateway,也称为Hadoop HDFS over HTTP。通过使用此服务,与webhdfs API 100%兼容,您将能够执行 2步操作(即在第一阶段访问Namenode,然后接收重定向到Datanode,最后访问此类第二阶段的Datanode)只访问运行HttpFS的节点;这是因为HttpFS在重定向中指向自己。

在您的情况下,在Namenode中安装HttpFS。