gpt4 book ai didi

Hadoop Fair Scheduler 没有将任务分配给某些节点

转载 作者:可可西里 更新时间:2023-11-01 16:27:27 24 4
gpt4 key购买 nike

我正在尝试运行 Fair Scheduler,但它没有将 Map 任务分配给某些节点,只有一个作业正在运行。我的理解是,公平调度程序将使用 conf 插槽限制,除非存在多个作业,此时公平计算开始。我还尝试在 fair- 中将所有队列设置为 FIFO- scheduler.xml,但我得到了相同的结果。

我已经使用 mapreduce.jobtracker.taskscheduler 参数在所有 mapred-site.xml 文件中设置了调度程序(尽管我相信只有 JobTracker 需要它)并且部分节点接收和运行Map任务没有问题。然而,其他节点要么永远不会获得任何 Map 任务,要么获得一轮 Map 任务(即,所有槽都被填充一次)然后再也不会获得任何 Map 任务。

我尝试将此作为开发自己的 LoadManager 的先决条件,因此我继续将调试 LoadManager 放在一起。从日志消息中,我可以看到问题节点一直在请求 Map 任务,并且它们的插槽是空的。然而,他们从未被分配任何。

所有节点都与默认调度程序完美配合。我在启用 Fair Scheduler 时才开始遇到这个问题。

有什么想法吗?有人有这个工作,并采取了我错过的步骤吗?

编辑:值得注意的是,Fair Scheduler Web UI 页面指示了正确的 Fair Share 计数,但 Running 列总是较少。我正在使用默认的每用户池并且一次只有 1 个用户和 1 个作业。

最佳答案

原因是未记录的 mapred.fairscheduler.locality.delay 参数。有问题的节点位于禁用 HDFS 的不同机架上,使这些节点上的所有任务都非机架本地。因此,由于公平调度程序的延迟调度算法,他们招致了很大的延迟,描述了here。 .

关于Hadoop Fair Scheduler 没有将任务分配给某些节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6232711/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com