工学1号馆

home

« | 返回首页 | »

hadoop常见问题总结1

By Wu Yudong on May 27, 2015

原创文章,转载请注明: 转载自工学1号馆

问题1:http://localhost:50030

HTTP ERROR: 404
/jobtracker.jsp
RequestURI=/jobtracker.jsp
Powered by Jetty://

解决办法:
buid本地库存后,应该把build目录删除,否则启动脚本会把目录重定向到build目录中,导致web管理页面打不开,启动脚本中,如果有build目录,就将路径转到build下.

问题2、http://localhost:50070
Unable to connect
如下图所示:

解决办法:首次运行,需要对namenode进行格式化:bin/hadoop namenode -format

注意:上面的命令应该是cd 到hadoop文件夹下

解决问题以后出现如下页面:

问题3:hadoop在子节点上没有datanode进程 

解决办法:

1.先停止Hadoop,bin/stop-all.sh

2.把hadoop/tmp下所有文件删除

3.重新格式化DFS  bin/hadoop namenode -format

4.再重启bin/start-all.sh

5.查看各节点jps,就有DataNode和TaskTracker了

问题4:

Exception in thread "main" org.apache.hadoop.mapreduce.lib.input.InvalidInputException: Input path does not exist: hdfs://localhost:9000/user/wu/in

解决方法:

hadoop处理的文件都是在hdfs中,所以必须把要处理的文件复制到hadoop 某个文件夹中。

下面举例,在in中新建文件夹,把提前做好的wordcount文件复制到hdfs中,最后运行程序

$mkdir input
$cd input
$echo "hello world">test1.txt
$echo "hello hadoop">test2.txt
$cd ..
$bin/hadoop dfs -put input in
$bin/hadoop jar build/hadoop-0.20.2-examples.jar wordcount in out
$bin/hadoop dfs -cat out/*

问题5:

Exception in thread "main" org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory out already exists

删除Output文件夹即可解决

如果文章对您有帮助,欢迎点击下方按钮打赏作者

Comments

No comments yet.
To verify that you are human, please fill in "七"(required)