在项目中使用到hdfs作为存储,为了在不同的节点加载hdfs上的数据,我们使用nfsv3服务,在客户端使用

root来mount hdfs上的数据到本地,然后把本地的数据发到hdfs上,因为这个我们的集群namenode是HA的,

所以在mount前,需要确认active的namenode,而且比较不爽的事,如果客户端的机器/etc/hosts中需要配置所有的datanodes机器信息。

后来找到的解决方案是使用httfs,它本质上是一个代理,是java jetty web程序,直接运行在可以在hadoop集群上,可以感知namenode HA的配置,

本质上是对webhdfs进行了一次封装,但使用它的时候不用担心本机是否配置好所有的datanode ip 主机名映射。

httpfs的安装:如果使用hdp之类的集成工具,有现成的rpm包,直接安装即可,若是使用cdh的tar包,已经包含了,直接可以使用。

配置:主要配置一下httpfs启动用户的代理,

<property>
<name>hadoop.proxyuser.#HTTPFSUSER#.hosts</name>
<value>httpfs-host.foo.com</value>
</property>
<property>
<name>hadoop.proxyuser.#HTTPFSUSER#.groups</name>
<value>*</value>
</property>

替换#HTTPFSUSER# 为启动 HttpFS 服务的用户名即可。

需要重启动hadoop.

启动命令:

 hdfs --daemon start httpfs
也可以在hadoop的sbin目录下找到starthttpfs.sh start
常用的命令如:
创建文件夹,删除文件夹,上传本地文件,下载文件到本地示例如下
curl -i -X PUT http://#hostname#:14000/webhdfs/v1/user/abc?op=MKDIRS&user.name=hdfs  
curl -i -X GET http://#hostname#:14000/webhdfs/v1/user/abc/test.txt?op=OPEN&user.name=hdfs 
curl -i -X PUT -T /tmp/test.txt http://#hostname#:14000/webhdfs/v1/user/hive/tmp/test.txt?op=CREATE&data=true&user.name=hive -H "Content-Type:application/octet-stream"
 
 
 

httpfs的使用的更多相关文章

  1. 基于Httpfs访问HDFS的C++实现

    Httpfs是hadoop2.x中hdfs项目的内置应用,基于tomcat和jesery,对外提供完备HDFS操作的RESTful接口,无需安装客户端,可方便实现数据交互,如从windows访问存储在 ...

  2. httpfs安装指南

    httpfs安装指南 安装环境 Linux maven3 jdk1.6 本地的maven源(有些依赖的jar包Cloudera已不再维护) 1.下载httfs源代码包 https://github.c ...

  3. Ubuntu 14.10 下Hadoop HttpFS 配置

    因为hadoop集群中需要配置一个图形化管理数据的截面,后来找到HUE,那么在配置HUE的过程中,发现需要配置httpfs,因为配置了httpfs,hue才能去操作hdfs中的数据. HttpFs能干 ...

  4. Hadoop HDFS 的 HttpFS

    参考 Hadoop权威指南 第3章中3.4节 背景 要写一个操作HDFS的web后台(文件CRUD),虽然可以直接使用HDFS提供的FileSystem类然后通过get方法获取到一个Distribut ...

  5. 配置HDFS HttpFS和WebHDFS

    HDFS支持两种RESTful接口:WebHDFS和HttpFS. WebHDFS默认端口号为50070,HttpFS默认端口号为14000. 默认启动WebHDFS而不会启动HttpFS,而Http ...

  6. CentOS和Ubuntu系统下安装 HttpFS (助推Hue部署搭建)

    不多说,直接上干货! 我的集群机器情况是 bigdatamaster(192.168.80.10).bigdataslave1(192.168.80.11)和bigdataslave2(192.168 ...

  7. WebHDFS vs HttpFS GateWay

    基于hadoop 2.7.1版本 一.简介 1. WebHDFS官方简介: Introduction The HTTP REST API supports the complete FileSyste ...

  8. httpFS访问

    编辑文件httpfs-env.sh 执行sbin/httpfs.sh 执行命令curl -i "http://192.168.1.213:14000/webhdfs/v1?user.name ...

  9. hadoop-3.1.2启动httpfs

    最近有一个需求,要求使用httpfs读取数据,一开始看到httpfs这个词,第一感觉是不是多了个f,是不是https,后来百度一下,其实不然. httpfs其实是使用http协议访问hdfs文件系统: ...

随机推荐

  1. MathType与Office公式编辑器有什么不同

    说到在论文中编辑公式,有经验的人都会知道要用公式编辑器来编辑,没经验的人也会被安利使用公式编辑器.然而在使用公式编辑器时,又有了两种选择,一种是使用Office自带的公式编辑器,一种是MathType ...

  2. WebApi 异常处理解决方案

    1.继承ExceptionFilterAttribute类,重写OnException方法 public class WebApiExceptionFilterAttribute : Exceptio ...

  3. easyui上次图片

    easyuiForm提交: 前台代码: <form id="importFileForm" method="post" enctype="mul ...

  4. Codeforces Round #311 (Div. 2) A,B,C,D,E

    A. Ilya and Diplomas 思路:水题了, 随随便便枚举一下,分情况讨论一下就OK了. code: #include <stdio.h> #include <stdli ...

  5. STL 源代码剖析 算法 stl_algo.h -- inplace_merge

    本文为senlie原创.转载请保留此地址:http://blog.csdn.net/zhengsenlie inplace_merge(应用于有序区间) ----------------------- ...

  6. php 重写session

    重写session的存储机制 转自 http://www.cnblogs.com/bc8web/p/5699935.html Session数据区 默认以 文件的形式存储与服务器操作系统临时目录中! ...

  7. 打包签名时出现Conversion to Dalvik format failed with error 1

    今天在导出签名APK时,居然出现了“Conversion to Dalvik format failed with error 1” 于是,我习惯性地“Project”->“Clean”,把工程 ...

  8. LAMP集群项目五 nfs分发文件到服务器

    前边已经配置了免密钥登录,现在脚本直接调用scp即可 ./etc/init.d/functions ] then echo “argv is not correct” exit fi for ip i ...

  9. 160414、java上传文件以流方式判断类型

    public enum FileType {       /**        * JEPG.        */       JPEG("FFD8FF"),          / ...

  10. Hibernate的批量处理和分页技术、投影技术

    投影查询——过滤部分字段返回的List集合元素为Object[] Query query = session.createQuery("select c.cname, c.csex from ...