如何在集群外节点跨网段向HDFS写数据
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github:https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 最近后台有位兄弟向Fayson提了一个问题,原文如下: “ 就是我的hdfs机器配置两个ip,一个外部可以访问,一个内部互联的地址,机器的hostname都是配置内网地址,现在有一个集群外的机器要写hdfs文件,发现namenode分配的datanode的地址是内网地址,不能访问到,这个不知道怎么去配置了。 ” Fayson想了想这个问题其实在各个环境是都可能碰到的,于是在这篇文章给大家系统介绍一下。 在做Hadoop应用开发时有多种方式访问HDFS文件系统(如:FileSystem、WebHdfsFileSystem),Fayson前面的文章《 如何使用Java代码访问HDFS.docx 》已讲过使用FileSystem访问HDFS。另外一种基于REST的API实现,分为两种一种是Hortonworks提供的WebHDFS默认的与Hadoop集成,一种是Cloudera 提供的HttpFS需要安装独立的HttpFS服务。本篇文章主要介绍如何使用WebHdfs和HttpFS方式访问HDFS。两种方式具体架构如下图: 内容概述 1