8

私はhadoopが初めてです。webhdfs を有効にし、curl コマンドを使用してホーム ディレクトリを取得します。

curl -i "http://172.16.18.50:9000/webhdfs/v1/?op=GETHOMEDIRECTORY"

しかし、情報を取得してください:サーバーからの空の応答。conf ファイルは次のとおりです。

コア-site.xml ----

<configuration>
   <property>
      <name>fs.default.name</name>
      <value>hdfs://webHDFS0:9000</value>
   </property>

   <property>
      <name>hadoop.tmp.dir</name>
      <value>/home/eins/hadoop-1.0.2/tmp</value>
   </property>
</configuration>

hdfs-site.xml ----

<configuration>
   <property>
      <name>dfs.replication</name>
      <value>2</value>
   </property>
    <property>
        <name>dfs.webhdfs.enabled</name>
        <value>enabled</value>
    </property>
</configuration>

誰でも提案できますか?

4

1 に答える 1

16

Web ソケット (デフォルトは 50075) ではなく、NameNode IPC ソケット (ポート 9000) に接続しようとしています。代わりにこれを試してください:

http://172.16.18.50:50075/webhdfs/v1/?op=GETHOMEDIRECTORY

また、 hdfs-site.xml の構成には、値としてではtrueなく、次のものが必要です。enabled

hdfs-site.xml ----

<configuration>
   <property>
      <name>dfs.replication</name>
      <value>2</value>
   </property>
    <property>
        <name>dfs.webhdfs.enabled</name>
        <value>true</value>
    </property>
</configuration>

すべてが機能していることを確認するには、namenode のログを調べます。次のように表示されます。

2012-05-22 06:23:42,176 INFO org.apache.hadoop.http.HttpServer: dfs.webhdfs.enabled = true
2012-05-22 06:23:42,177 INFO org.apache.hadoop.http.HttpServer: Added filter 'SPNEGO' (class=org.apache.hadoop.hdfs.web.AuthFilter)
2012-05-22 06:23:42,179 INFO org.apache.hadoop.http.HttpServer: addJerseyResourcePackage: packageName=org.apache.hadoop.hdfs.server.namenode.web.resources;org.apache.hadoop.hdfs.web.resources, pathSpec=/webhdfs/v1/*

現時点では、あなたが次のように言っていると思います:

2012-05-22 06:11:20,676 INFO org.apache.hadoop.http.HttpServer: dfs.webhdfs.enabled = false
于 2012-05-21T11:35:11.487 に答える