http请求到webhdfs,但给出filenotfoundexception

gijlo24d  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(363)

我安装了hadoop1.0.4。我启用了webhdfs并使用curl命令来获取主目录。

curl -i "http://172.16.30.40:50075/webhdfs/v1?user.name=ubantu&op=GETFILESTATUS"

它适用于gethomeditory,但不适用于getfilestatus、liststatus等其他操作
我有个例外


**{"RemoteException":{"exception":"FileNotFoundException","javaClassName":"java.io.FileNotFoundException","message":"File /webhdfs/v1 not found."}}**

以下是conf文件:
hdfs-site.xml文件

<configuration>
     <property>
         <name>dfs.replication</name>
         <value>3</value>
     </property>
     <property>
        <name>dfs.webhdfs.enabled</name>
        <value>true</value>
     </property>
     <property>
       <name>dfs.support.append</name>
       <value>true</value>
    </property>
</configuration>

有人能给点建议吗?
谢谢。

tcbh2hod

tcbh2hod1#

根据文件(http://hadoop.apache.org/docs/r1.0.4/webhdfs.html#gethomedirectory),以访问您应该使用的主目录 curl -i "http://<HOST>:<PORT>/webhdfs/v1/?op=GETHOMEDIRECTORY" 另外,尝试使用:50070。这是我用于webdfs的端口,它工作正常。

curl -i "http://localhost:50070/webhdfs/v1/?op=GETHOMEDIRECTORY"

更新:
在您的示例中,您没有指定要检查其状态的文件路径。在下面的示例中,如果您将/path/to/your/与文件的路径交换,然后用文件名更改“file”,那么这会给您带来什么?

curl -i  "http://localhost:50070/webhdfs/v1/path/to/your/file?op=GETFILESTATUS"

相关问题