Kind | % Complete | Num Tasks | Pending | Running | Complete | Killed | Failed/Killed Task Attempts | |
---|---|---|---|---|---|---|---|---|
map | 100.00% | 122 | 0 | 0 | 122 | 0 | 121 / 0 | |
reduce | 100.00% | 1 | 0 | 0 | 1 | 0 | 0 / 0 |
--
李玉林
setNumReduceTasks(int tasks)
类,设置了reduce的个数是2,但是执行的还是1个reduce,这个除了在程序中配置外,貌似还可以在core-site.xml中配置吧?但是忘了那个参数怎么写了。谢谢air,提示找不到类的问题已经解决了,方法就是删除多余的class,但是原理不清楚,air能否给讲解下?reduce在xml设置后,也可以运行两个了。
在slave端运行ps -aux | grep tasktracker,显示如下:[hadoop@slave1 ~]$ ps -aux | grep tasktrackerWarning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQhadoop 2179 0.4 6.7 1197716 49600 ? Sl Aug30 5:08 /home/hadoop/jdk1.6.0_26/bin/java -Dproc_tasktracker -Xmx1000m -Dhadoop.log.dir=/home/hadoop/hadoop-0.20.203.0/bin/../logs -Dhadoop.log.file=hadoop-hadoop-tasktracker-slave1.log -Dhadoop.home.dir=/home/hadoop/hadoop-0.20.203.0/bin/.. -Dhadoop.id.str=hadoop -Dhadoop.root.logger=INFO,DRFA -Djava.library.path=/home/hadoop/hadoop-0.20.203.0/bin/../lib/native/Linux-i386-32 -Dhadoop.policy.file=hadoop-policy.xml -classpath /home/hadoop/hadoop-0.20.203.0/bin/../conf:/home/hadoop/jdk1.6.0_26/lib/tools.jar:/home/hadoop/hadoop-0.20.203.0/bin/..:/home/hadoop/hadoop-0.20.203.0/bin/../hadoop-core-0.20.203.0.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/aspectjrt-1.6.5.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/aspectjtools-1.6.5.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-beanutils-1.7.0.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-beanutils-core-1.8.0.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-cli-1.2.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-codec-1.4.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-collections-3.2.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-configuration-1.6.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-daemon-1.0.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-digester-1.8.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-el-1.0.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-httpclient-3.0.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-lang-2.4.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-logging-1.1.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-logging-api-1.0.4.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-math-2.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-net-1.4.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/core-3.1.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/hsqldb-1.8.0.10.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jackson-core-asl-1.0.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jackson-mapper-asl-1.0.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jasper-compiler-5.5.12.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jasper-runtime-5.5.12.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jets3t-0.6.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jetty-6.1.26.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jetty-util-6.1.26.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jsch-0.1.42.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/junit-4.5.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/kfs-0.2.2.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/log4j-1.2.15.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/mockito-all-1.8.5.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/oro-2.0.8.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/servlet-api-2.5-20081211.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/slf4j-api-1.4.3.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/slf4j-log4j12-1.4.3.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/xmlenc-0.52.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jsp-2.1/jsp-2.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jsp-2.1/jsp-api-2.1.jar:. org.apache.hadoop.mapred.TaskTrackerhadoop 27559 0.0 0.1 4464 740 pts/2 S+ 15:38 0:00 grep --color=auto tasktracker在master端运行,显示如下:[hadoop@master hadoop]$ ps -aux | grep tasktrackerhadoop 4028 0.4 4.1 1194344 43188 ? S Aug30 4:59 /home/hadoop/jdk1.6.0_26/bin/java -Dproc_tasktracker -Xmx1000m -Dhadoop.log.dir=/home/hadoop/hadoop-0.20.203.0/bin/../logs -Dhadoop.log.file=hadoop-hadoop-tasktracker-master.log -Dhadoop.home.dir=/home/hadoop/hadoop-0.20.203.0/bin/.. -Dhadoop.id.str=hadoophadoop 19561 0.0 0.0 4812 636 pts/3 S 15:44 0:00 grep tasktracker这是不是说明master中没有加载那些jar包啊,但是在删除class之后,就可以运行了,那么上面的两个ps显示的结果说明了什么问题呢?
在 2011年8月31日 下午3:52,李玉林 <yulin...@gmail.com>写道:谢谢air,提示找不到类的问题已经解决了,方法就是删除多余的class,但是原理不清楚,air能否给讲解下?reduce在xml设置后,也可以运行两个了。应该是类冲突的原因在slave端运行ps -aux | grep tasktracker,显示如下:[hadoop@slave1 ~]$ ps -aux | grep tasktrackerWarning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQhadoop 2179 0.4 6.7 1197716 49600 ? Sl Aug30 5:08 /home/hadoop/jdk1.6.0_26/bin/java -Dproc_tasktracker -Xmx1000m -Dhadoop.log.dir=/home/hadoop/hadoop-0.20.203.0/bin/../logs -Dhadoop.log.file=hadoop-hadoop-tasktracker-slave1.log -Dhadoop.home.dir=/home/hadoop/hadoop-0.20.203.0/bin/.. -Dhadoop.id.str=hadoop -Dhadoop.root.logger=INFO,DRFA -Djava.library.path=/home/hadoop/hadoop-0.20.203.0/bin/../lib/native/Linux-i386-32 -Dhadoop.policy.file=hadoop-policy.xml -classpath /home/hadoop/hadoop-0.20.203.0/bin/../conf:/home/hadoop/jdk1.6.0_26/lib/tools.jar:/home/hadoop/hadoop-0.20.203.0/bin/..:/home/hadoop/hadoop-0.20.203.0/bin/../hadoop-core-0.20.203.0.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/aspectjrt-1.6.5.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/aspectjtools-1.6.5.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-beanutils-1.7.0.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-beanutils-core-1.8.0.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-cli-1.2.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-codec-1.4.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-collections-3.2.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-configuration-1.6.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-daemon-1.0.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-digester-1.8.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-el-1.0.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-httpclient-3.0.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-lang-2.4.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-logging-1.1.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-logging-api-1.0.4.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-math-2.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/commons-net-1.4.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/core-3.1.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/hsqldb-1.8.0.10.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jackson-core-asl-1.0.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jackson-mapper-asl-1.0.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jasper-compiler-5.5.12.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jasper-runtime-5.5.12.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jets3t-0.6.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jetty-6.1.26.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jetty-util-6.1.26.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jsch-0.1.42.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/junit-4.5.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/kfs-0.2.2.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/log4j-1.2.15.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/mockito-all-1.8.5.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/oro-2.0.8.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/servlet-api-2.5-20081211.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/slf4j-api-1.4.3.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/slf4j-log4j12-1.4.3.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/xmlenc-0.52.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jsp-2.1/jsp-2.1.jar:/home/hadoop/hadoop-0.20.203.0/bin/../lib/jsp-2.1/jsp-api-2.1.jar:. org.apache.hadoop.mapred.TaskTrackerhadoop 27559 0.0 0.1 4464 740 pts/2 S+ 15:38 0:00 grep --color=auto tasktracker在master端运行,显示如下:[hadoop@master hadoop]$ ps -aux | grep tasktrackerhadoop 4028 0.4 4.1 1194344 43188 ? S Aug30 4:59 /home/hadoop/jdk1.6.0_26/bin/java -Dproc_tasktracker -Xmx1000m -Dhadoop.log.dir=/home/hadoop/hadoop-0.20.203.0/bin/../logs -Dhadoop.log.file=hadoop-hadoop-tasktracker-master.log -Dhadoop.home.dir=/home/hadoop/hadoop-0.20.203.0/bin/.. -Dhadoop.id.str=hadoophadoop 19561 0.0 0.0 4812 636 pts/3 S 15:44 0:00 grep tasktracker这是不是说明master中没有加载那些jar包啊,但是在删除class之后,就可以运行了,那么上面的两个ps显示的结果说明了什么问题呢?找不到类是你本机环境的问题,与其它机器没有关系,hadoop会自动将jar文件分发到分布式缓存;不过如果你再master上启动TT的话,应该能够自动将hadoop目录/lib下的jar包都包含进来的,奇怪啊。。。