关于Hadoop中出现“Exceeded MAX_FAILED_UNIQUE_FETCHES”的错误

出现在日志或者Web控制界面,有类似如下的情况:

10/09/07 19:24:51 INFO mapred.JobClient: Task Id : attempt_201009071911_0004_r_000000_2, Status : FAILED
Shuffle Error: Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out.

导致这种错误的原因很多,主要来说是Reduce阶段取map结果->reduce结点时出错的。
我的解决方案,一定要保证自定义的/etc/hosts中的别名和hostname一致!
例如,自定义的是node1-node5,而hostname是hadoop1-hadoop5,那么一定会出现这种错误。
正确的hosts定义如下:

127.0.0.1     localhost localhost.localdomain
#50.57.48.244     hadoop1

#For Hadoop Nodes
10.182.169.24   hadoop1
10.182.169.29   hadoop2
10.182.169.30   hadoop3
10.182.169.31   hadoop4
10.182.169.32   hadoop5

由于我这里只想走内网(Rackspace内网不用交流量钱),所以得把云虚拟机中自定义的hostname那个host映射注释掉。

完毕。

1 thought on “关于Hadoop中出现“Exceeded MAX_FAILED_UNIQUE_FETCHES”的错误

Leave a Reply

Your email address will not be published.