首页 > 代码库 > httpfs安装指南

httpfs安装指南

httpfs安装指南
安装环境
Linux
maven3
jdk1.6
本地的maven源(有些依赖的jar包Cloudera已不再维护)

  • 1.下载httfs源码包

https://github.com/cloudera/httpfs
使用git下载
git clone https://github.com/cloudera/httpfs.git

  • 2.修改pom.xml文件

在<dependencies>中增加依赖
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core</artifactId>
<version>${cdh.hadoop.version}</version>
</dependency>

  • 3.下载所需要的依赖,

mvn clean:install
其中有些依赖的jar包已不在Cloudera的源上了,需要自己设置maven源,在~/.m2/setting.xml中增加自己的源

  • 4.编译打包

mvn package -Pdist
生成的hadoop-hdfs-httpfs-0.20.2-cdh3u6.tar.gz包在target目录下

  • 5.修改hadoop集群的所有机器的core-site.xml文件

在其中加入以下内容
<property>
<name>hadoop.proxyuser.httpfs.hosts</name>
<value>httpfs-host.foo.com</value>
</property>
<property>
<name>hadoop.proxyuser.httpfs.groups</name>
<value>*</value>
</property>
重启hadoop集群

  • 6.在要安装httpfs的机器上创建httpfs用户

useradd --create-home --shell /bin/bash httpfs 
passwd httpfs

  • 7.安装httpfs

将hadoop-hdfs-httpfs-0.20.2-cdh3u6.tar.gz包复制到/home/httpfs目录下解压
进入到解压出来的目录hadoop-hdfs-httpfs-0.20.2-cdh3u6
将现网集群的hadoop配置文件core-site.xml和hdfs-site.xml复制到/home/httpfs/hadoop-hdfs-httpfs-0.20.2-cdh3u6/etc/hadoop目录下

  • 8.修改httpfs-site.xml

在其中加入
<property>
<name>httpfs.proxyuser.httpfs.hosts</name>
<value>*</value>
</property>
<property>
<name>httpfs.proxyuser.httpfs.groups</name>
<value>*</value>
</property>

  • 9.启动httpfs

使用httpfs用户启动
/home/httpfs/hadoop-hdfs-httpfs-0.20.2-cdh3u6/sbin/httpfs.sh start

  • 10.检查

检查进程是否存在:jps看看有没有Bootstrap进程
查看logs目录下httpfs.log和其他log有无异常信息

  • 11.curl测试

上传文件
curl -i -X PUT "http://172.16.61.154:14000/webhdfs/v1/tmp/testfile?user.name=bdws&op=create"
根据返回回来的URL再次put
curl -i -X PUT -T test.txt --header "Content-Type: application/octet-stream" "http://172.16.61.154:14000/webhdfs/v1/tmp/testfile?op=CREATE&user.name=bdws&data=http://www.mamicode.com/true"
下载文件
curl -i "http://172.16.61.154:14000/webhdfs/v1/tmp/testfile?user.name=bdws&op=open" 
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Set-Cookie: hadoop.auth="u=bdws&p=bdws&t=simple&e=1400181237161&s=F5K1C44TbM/tMjbdFUpM+zExtso="; Version=1; Path=/
Content-Type: application/octet-stream
Content-Length: 20
Date: Thu, 15 May 2014 09:13:57 GMT

this is a test file

  • 12.参考:

Hadoop HDFS over HTTP 0.20.2-cdh3u6 - Server Setup
http://cloudera.github.io/httpfs/ServerSetup.html
WebHDFS说明,很详细包括命令的使用
http://zhangjie.me/webhdfs/
Apache hadoop webhdfs api文档
http://hadoop.apache.org/docs/r1.0.4/webhdfs.html