Hadoop集群中JobTracker和TaskTracker启动耗时过多的原因分析

在正式环境中,我们遇到一个这样的问题:配置更改后,需要重启JobTracker和TaskTracker节点的进程。在重启过程中,JobTracker和TaskTracker进程都很快启动完成,但是查看JobTracker的50030端口的Web管理页面时,发现JobTracker一直无法探知任何一个TaskTracker节点,大概经过10分钟后,才陆陆续续地探知完所有的TaskTracker节点。

    另外,如下参数,如无说明,均为Hadoop 1.2.1版本参数。

  • 重现

    这个问题一直困扰着我们,并且曾经一度怀疑是Hadoop内部的机架探知比较缓慢所造成的。直到最近一次,由于运维需要移动某个TaskTracker机器的位置,需要单独重启这个TaskTracker,在重启了节点的JobTracker和DataNode进程后,发现JobTracker经过长时间也没办法探知到该节点的TaskTracker,此时的NameNode却早已成功探知到DataNode。出现问题后,尝试重新单独启动TaskTracker进程,这时,却发现探知了两个TaskTracker节点,后来才变回一个TaskTracker节点。

  • 分析

    为了了解究竟发生了什么问题,我们查看了JobTracker和TaskTracker的log。由于log的数量太多,这里仅仅列出关键的log。另外,关闭的TaskTracker的hostname为datanode6.dataplat.com。

    首先是JobTracker的log:

2015-01-13 20:38:11,016 INFO org.apache.hadoop.mapred.JobTracker: Lost tracker 'tracker_datanode6.dataplat.com:localhost/127.0.0.1:47379'

2015-01-13 21:21:18,826 INFO org.apache.hadoop.mapred.JobTracker: Adding tracker tracker_datanode6.dataplat.com:localhost/127.0.0.1:52849 to host datanode6.dataplat.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值