2013-02-28 82 views
0

我按照一些指导来设置伪分布式模式,我运行了start-all.sh并且守护进程都很好(其中6个),然后启动我的WordCount示例在独立模式下运行良好,但卡在地图100%,减少0%。Hadoop减少任务停留在0%

查看jobtracker,reduce任务处于状态reduce > copy。 唯一的错误日志地处secondarynamenode.log

2013-02-27 23:29:59,555 ERROR org.apache.hadoop.security.UserGroupInformation: PriviledgedActionException as:my_user_name cause:java.net.ConnectException: Connection refused 
2013-02-27 23:29:59,555 ERROR org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode: Exception in doCheckpoint: 
2013-02-27 23:29:59,555 ERROR org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode: java.net.ConnectException: Connection refused 

我可以ssh本地主机不需要密码。 Hadoop版本是1.1.1。我从commande行启动一个jar文件。

真的不知道什么是错,有些帮助?

在此先感谢。

+0

我假设你已经用my_user_name替换了真正的用户名。请在命令行中使用'jps'来列出hadoop的守护进程。他们是否真的在运行(尤其是'NameNode')?此外 - 你是否正确地在'hdfs-site.xml'中配置了'dfs.namenode.secondary.http'? – harpun 2013-02-28 18:27:48

+0

我敢肯定,所有的守护进程都没问题,并且作业已经通过map执行,但在reduce任务之前停滞不前。但是我没有设置dfs.namenode.secondary.http,它的值应该是什么? – darkjh 2013-03-01 09:25:24

+0

默认值列在[here](http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml)。如果0.0.0.0不起作用,请尝试一个真实的IP。 – harpun 2013-03-01 17:52:23

回答

0

您运行的字数有多少?如果您在独立模式下运行大型数据集而不使用组合器,那么这会导致一些麻烦。尝试

job.setMapperClass(<Mapper_Class>); 
job.setCombinerClass(<Reducer_Class>); 
job.setReducerClass(<Reducer_Class>); 

在包含您的程序中的驱动程序的主要方法。这可能会帮助你。