问题描述:
在伪分布式测试程序时Map 100%完成,reduce 总是在0%无法完成。
原因:
我遇到的问题是hostname主机名引起的,由于之前修改了hostname(/etc/sysconfig/network),hadoop配置文件slave中是localhost而/etc/sysconfig/network中是我修改的其他名字。
从输出目录的log文件中的job配置文件中可以查看到mapreduce.job.submithost的配置,reduce一定要能通过这个值访问到提交作业的节点(jobtracker)。
解决办法:
在/etc/sysconfig/network中修改hostname的配置并确定与hostname命令的输出保持一致,重启hadoop。