Hadoop 纱线动态重新分配剩余计算能力

Hadoop 纱线动态重新分配剩余计算能力,hadoop,yarn,Hadoop,Yarn,我想知道如何配置纱线的动态队列: 假设有2个队列 A(高性能,占群集的70%) B(正常,剩余=集群的30%) 我注意到B项只会保留其分配的资源,即使其他70%是空的。如何重新分配这些资源(在没有A作业的情况下)以更快地完成B作业?容量计划程序文档对队列之间的弹性和资源抢占提出了一些看法 无弹性资源可以分配给任何超出其容量的队列。在将来某个时间点,当在低于容量的情况下运行的队列需要这些资源时,当在这些资源上调度的任务完成时,它们将被分配给在低于容量的情况下运行的队列上的应用程序(还支持抢占)。这

我想知道如何配置纱线的动态队列: 假设有2个队列

  • A(高性能,占群集的70%)
  • B(正常,剩余=集群的30%)

  • 我注意到B项只会保留其分配的资源,即使其他70%是空的。如何重新分配这些资源(在没有A作业的情况下)以更快地完成B作业?

    容量计划程序文档对队列之间的弹性和资源抢占提出了一些看法

    无弹性资源可以分配给任何超出其容量的队列。在将来某个时间点,当在低于容量的情况下运行的队列需要这些资源时,当在这些资源上调度的任务完成时,它们将被分配给在低于容量的情况下运行的队列上的应用程序(还支持抢占)。这可以确保资源以可预测和弹性的方式提供给队列,从而防止集群中人为的资源孤岛,从而提高利用率


    它还指定了关于队列弹性和资源/容器抢占的配置参数,如:

    warn.scheduler.capacity.[queue path].capacity-以百分比(%)表示的队列容量(如12.5)。每个级别上所有队列的容量之和必须等于100。如果有空闲资源,队列中的应用程序可能会消耗比队列容量更多的资源,从而提供弹性

    关于优先购买权

    CapacityScheduler支持从资源使用量超过其保证容量的队列中抢占容器


    该页面上还列出了许多参数,您应该查看这些参数,以便进行良好的配置。

    但是,如果更高优先级的队列a开始占用以前未使用的资源,那么在哪里指定队列b是否释放当前占用的资源?