http request to webhdfs, but empty reply from server
hadoop
Solution
You're trying to connect to the NameNode IPC socket (port 9000), rather than the web socket (which defaults to 50075). Try this instead:
http://172.16.18.50:50075/webhdfs/v1/?op=GETHOMEDIRECTORY
Also, your configuration in hdfs-site.xml needs to have `true` rather than `enabled` as its value:
hdfs-site.xml ----
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
To confirm everything is working, look at the logs for your namenode, you should see something like:
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/*
At the moment, i assume yours says:
2012-05-22 06:11:20,676 INFO org.apache.hadoop.http.HttpServer: dfs.webhdfs.enabled = false
Problem
I'm new in hadoop. I enabled the webhdfs and use the curl command to get a Home Directory. curl -i "http://172.16.18.50:9000/webhdfs/v1/?op=GETHOMEDIRECTORY" But get the information : Empty reply from server.Here is the conf files: core-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> ``` Can anyone give some suggestions?