Hadoop跑map-reduce任务时停滞不前的问题

来源:互联网 发布:淘宝的官换机可信吗 编辑:程序博客网 时间:2024/05/18 20:08

今天跑job的时候,发现map任务很正常地结束,但跑reduce任务时到20%几就停滞不前,而且一直卡住没法正常结束。看userlog,好 像是FETCH map任务的结果时超时,无法取到结果。中间还出现了一个诡异的地址web30.bbn.com.cn/202.106.195.30。也就是 说,reduce任务到这个诡异的地址上去取结果。上网搜了一下,这个域名/IP是网通的一台找不到域名或地址后自动定向的上网导航服务器。再看了下 jobtracker的日志,看到在启动的时候它将这个地址加进了节点中。这就说明,它认为这个节点是一个合法的节点,然后分配任务的时候也往这个节点分配任务(当然会失败),取结果的时候也试图到这个节点上取。

反复检查了SSHhosts文件,一切都很正常。conf/slaves文件看起来也没有问题。就是不知道哪里出的错。后来看到log中有一个heartbeat的词,突然想起来,节点是通过心跳来告诉master自己还存活的。而在这之前,我做了一个测试,加了一个新节点到集群中,后来又把节点给删了,hosts的文件也被改了,会不会是这个节点还在往master发送心跳?SSH到那个新节点上,jps看一下任务,tasktracker果然还活着!把这个进程kill掉,问题就OK了。。。好2啊。。。