webhdfs 创建文件异常
webhdfs create file exception
我在 centos 7 上使用 hadoop 2.7.1
如果我想在 Hadoop 集群中使用 webhdfs
我应该配置这个 属性
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
但还有什么?
我的名字节点ip是192.168.4.128
当我在 Windows 8 上使用 Firefox 并发送此获取请求时
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
.
中却不行
是否需要处理其他配置来处理此请求?
WebHDFS 执行四种 HTTP 操作(GET、POST、PUT、DELETE),而 Web 浏览器通常只支持 GET 和 POST。
包括一些插件,例如 RESTClient (for Firefox), Advanced REST Client(对于 Chrome),用于发送 HTTP PUT 和 HTTP DELETE 请求。
或者,您可以从命令行使用 curl
。
注意:默认启用 WebHDFS。所以,hdfs-site.xml
中添加的属性是多余的(只是说)。
我在 centos 7 上使用 hadoop 2.7.1
如果我想在 Hadoop 集群中使用 webhdfs
我应该配置这个 属性
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
但还有什么?
我的名字节点ip是192.168.4.128
当我在 Windows 8 上使用 Firefox 并发送此获取请求时
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
.
是否需要处理其他配置来处理此请求?
WebHDFS 执行四种 HTTP 操作(GET、POST、PUT、DELETE),而 Web 浏览器通常只支持 GET 和 POST。
包括一些插件,例如 RESTClient (for Firefox), Advanced REST Client(对于 Chrome),用于发送 HTTP PUT 和 HTTP DELETE 请求。
或者,您可以从命令行使用 curl
。
注意:默认启用 WebHDFS。所以,hdfs-site.xml
中添加的属性是多余的(只是说)。