Hadoop webHDFS设置和使用说明

1.配置

namenode的hdfs-site.xml是必须将dfs.webhdfs.enabled属性设置为true,否则就不能使用webhdfs的LISTSTATUS、LISTFILESTATUS等需要列出文件、文件夹状态的命令,因为这些信息都是由namenode来保存的。

在namenode和一台datanode中向/etc/hadoop/conf/hdfs-site.xml中添加属性:

dfs.webhdfs.enabled
true


2.使用说明

访问namenode的hdfs使用50070端口,访问datanode的webhdfs使用50075端口。访问文件、文件夹信息使用namenode的IP和50070端口,访问文件内容或者进行打开、上传、修改、下载等操作使用datanode的IP和50075端口。要想不区分端口,直接使用namenode的IP和端口进行所有的webhdfs操作,就需要在所有的datanode上都设置hefs-site.xml中的dfs.webhdfs.enabled为true。


3.curl操作webhdfs

创建并写一个文件
curl -i -X PUT "http://localhost:50070/webhdfs/v1/?op=CREATE
[&overwrite=][&blocksize=][&replication=]
[&permission=][&buffersize=]“
curl -i -X PUT -T "http://:/webhdfs/v1/?
op=CREATE...“
注意这个地方填入的是DataNode的信息


在一个文件内追加内容
curl -i -X POST "http://:/webhdfs/v1/?op=APPEND[&buffersize=]”
curl -i -X POST -T "http://:/webhdfs/v1/?
op=APPEND...“
注意该条命令获得的是DataNode的信息。


打开并读取一个文件
curl -i -L "http://:/webhdfs/v1/?op=OPEN
[&offset=][&length=][&buffersize=]“


创建一个目录
curl -i -X PUT "http://:/?op=MKDIRS[&permission=]“


重名命文件、文件夹
curl -i -X PUT ":/webhdfs/v1/?op=RENAME&destination="


删除文件/文件夹
curl -i -X DELETE "http://:/webhdfs/v1/?op=DELETE [&recursive=]“


文件/ 文件夹的状态信息
curl -i “http://:/webhdfs/v1/?op=GETFILESTATUS“


目录列表
curl -i "http://:/webhdfs/v1/?op=LISTSTATUS”


获取目录的上下文环境汇总信息
curl -i "http://:/webhdfs/v1/?op=GETCONTENTSUMMARY"


获取Check Sum File
curl -i "http://:/webhdfs/v1/?op=GETFILECHECKSUM”


获取Home 目录
curl -i "http://:/webhdfs/v1/?op=GETHOMEDIRECTORY”


设置权限
curl -i -X PUT "http://:/webhdfs/v1/?op=SETPERMISSION [&permission=]“


设置所有者
curl -i -X PUT "http://:/webhdfs/v1/?op=SETOWNER [&owner=][&group=]"


设置备份
curl -i -X PUT "http://:/webhdfs/v1/?op=SETREPLICATION [&replication=]“


参考

Hadoop Restful

Hadoop 2.0详细配置教程,这篇文章写的太牛了

你可能感兴趣的:(云计算)