Yarn资源调度器的选择

Posted 一木呈

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Yarn资源调度器的选择相关的知识,希望对你有一定的参考价值。

现象:集群提交任务,运行极其缓慢,通过WEB监控页面,计算资源没有充分利用

分析:查看资源调度策略采用计算能力调度器Capacity Sheduler

Yarn资源调度器的选择

运行的Mapreduce Job列表:

Yarn资源调度器的选择

可以看到并行任务大部分处于accepted状态,提交队列是default,而资源调度器采用的是容量调度。


调度器的关键配置:

Yarn资源调度器的选择

Yarn资源调度器的选择


关键参数:

  •   yarn.scheduler.capacity.maximum-applications

   最多可同时处于等待和运行状态的应用程序数目

  • yarn.scheduler.capacity.maximum-am-resource-percent

   集群中可用于运行application master的资源比例上限,这通常用于限制并发运行的应用程序数目。

 

  •  yarn.scheduler.capacity.root.queues

    root队列的所有子队列

  

  • yarn.scheduler.capacity.root.default.capacity

    default队列的资源容量

  • yarn.scheduler.capacity.root.default.user-limit-factor

     每个用户可使用的资源限制

   

  • yarn.scheduler.capacity.root.default.maximum-capacity

      Default队列可使用的资源上限.

   

  • yarn.scheduler.capacity.root.default.state

     Default队列的状态,可以是RUNNING或者STOPPED.

    

  • yarn.scheduler.capacity.root.default.acl_submit_application

      限制哪些用户可向default队列中提交应用程序.

   

  • yarn.scheduler.capacity.root.default.acl_administer_queue

      限制哪些用户可管理default队列中的应用程序,“*”表示任意用户

  • yarn.scheduler.capacity.node-locality-delay

    调度器尝试调度一个rack-local container之前,最多跳过的调度机会,通常而言,该值被设置成集群中机架数目,默认情况下为-1,表示不启用该功能。

   

下面是队列分配的资源状态:

Yarn资源调度器的选择

在单个队列只能有一个任务在运行,其他任务在等待。

对于独立使用的集群,我为公平调度更为合理;容量调度适合多租户大型集群。

修改集群调度器

调整之后的资源使用状况:

调整后资源 好像得到了充分利用。。。

以上是关于Yarn资源调度器的选择的主要内容,如果未能解决你的问题,请参考以下文章

YARN中的资源调度

Hadoop Yarn调度器的选择和使用

YARN调度器的性能瓶颈

YARN调度器的性能瓶颈

yarn三种调度器(资源调度策略或机制)

0012 - YARN三种资源调度器解析