我有一份在 32 个现场实例上使用 Hadoop 0.20 运行的工作。它已经运行了 9 个小时,没有任何错误。在那段时间里它已经处理了 3800 个任务,但我注意到只有两个任务似乎被卡住并且已经单独运行了几个小时(显然响应是因为它们没有超时)。这些任务通常不会超过 15 分钟。我不想失去所有已经完成的工作,因为这花了我很多钱。我真的很想杀死这两个任务,让 Hadoop 重新分配它们或将它们视为失败。在他们停止之前,我无法从其他 3798 个映射中获得 reduce 结果!
但我不知道该怎么做。我考虑过尝试找出哪些实例正在运行任务,然后终止这些实例,但是
- 我不知道如何找出哪些实例是罪魁祸首
- 恐怕会产生意想不到的影响。
我如何杀死单个地图任务?