webhdfs创建文件异常

6rqinv9w  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(545)

我正在centos 7上使用hadoop 2.7.1
如果我想在hadoop集群中使用webhdfs
我应该配置这个属性

<property>
      <name>dfs.webhdfs.enabled</name>
      <value>true</value>
</property>

但还有什么?
我的名字节点ip是192.168.4.128
当我在Windows8上使用firefox并发送此get请求时

http://192.168.4.128:50070/webhdfs/v1/hadoopDir/A.txt/?user.name=SYSTEM&op=OPEN

我可以打开一个文件,看到它的内容
但当我把 PUT 请求

http://192.168.4.128:50070/webhdfs/v1/HadoopDir/B.txt/?user.name=SYSTEM&op=CREATE&data=true

我得到以下回应

{"RemoteException":{"exception":"IllegalArgumentException","javaClassName":"java.lang.IllegalArgumentException","message":"Invalid value for webhdfs parameter \"op\": No enum constant org.apache.hadoop.hdfs.web.resources.GetOpParam.Op.CREATE"}}

为什么进来 GET 正在打开文件的操作一切正常,但不在 PUT .
是否应处理任何其他配置来处理此请求?

hs1rzwqc

hs1rzwqc1#

webhdfs执行四种http操作(get、post、put、delete),而web浏览器通常只支持get和post。
包括一些插件,如restclient(用于firefox)、advanced rest client(用于chrome),用于发送httpput和httpdelete请求。
或者,您可以使用 curl 从命令行。
注意:默认情况下启用webhdfs。所以,在 hdfs-site.xml 是多余的(只是说说而已)。

相关问题