我有 5 个节点的 hadoop 集群。我为每个节点配置了 10 个映射器。当 MR 作业正在运行时,其中一个 hdfs 节点死亡。这最终导致将该任务跟踪器列入黑名单。在它被列入黑名单之后和 MR 作业完成之前,如果我修复了受影响的 hdfs 节点,是否可以从黑名单中恢复任务跟踪器?
我在 ubuntu 上使用 cloudera cdh 4.2。
我正在阅读有关 tasktracker 故障的“Hadoop Definitive Guide”。我找到了这个声明
"列入黑名单的 tasktracker 不会被分配任务,但它们会继续与 jobtracker 通信。故障会随着时间的推移而过期(以每天一个的速度),因此 tasktracker 只需继续运行即可再次运行作业。或者,如果有是可以修复的底层故障(例如通过更换硬件),tasktracker 将在重启并重新加入集群后从 jobtracker 的黑名单中删除。 ”
我不确定Cloudera 4.2,但你可以试试这个命令
$ hadoop job -unblacklist <jobid> <hostname>
如果要将其从全局黑名单中删除,请尝试
hadoop job -unblacklist-tracker <hostname>
这两个命令都必须以管理员用户身份运行。