• YARN 调度器


    YARN 调度器


    1、FIFO(先进先出调度器)

    单队列,任务独占所有资源,先进先出;

    优点:简单不需配置;

    缺点:大集群中大小任务都会阻塞;

     


    2、Capacity(容量调度器)

    多队列(单队列FIFO),支持配额,弹性队列,延迟调度(等待别的队列容器释放而非抢占)

    优点:相比FIFO更适用于集群

    缺点:单个队列仍是FIFO

     


    3、Fair(公平调度器)

    多队列(单队列 Fair/FIFO/DRF),支持配额,弹性队列,延迟调度,支持抢占

    优点:单队列默认Fair,任务动态公平分配

    缺点:相对其他调度器复杂

     

     

    3.1、Fair Share说明

    Instantaneous Fair Share:瞬时公平分配

    Steady Fair Share:固定公平分配

     

    steady fair share,是一个静态值,是Yarn根据每个队列的minShare、maxShare和weight的配置计算得到的理论上应该分配给这个队列的最大资源,它与这个队列当前是否有app正在运行无关,只和我们在fair-scheduler.xml中的配置有关。

    Instaneous fair share则不同,它是根据当前集群中队列的运行状态的变化而实时变化的,即,如果一个队列上没有任何一个app在运行,即这个队列是inactive队列,那么,这个队列的instaneous fair share值是0,剩余的active队列会对集群资源进行瓜分,显然,如果集群中有队列从active变为inactive,那么剩余这些队列瓜分到的instaneous fair shared都会随之变大,反之,如果有一个队列从inactive变为active,则剩余每个队列的instaneous fair share会随之变小,即instaneous fair share会变小。

    3.2、Fair Share资源计算

    FairShare和SteadyFairShare的计算思想为: 先找到一个比值R,则各个队列应分配的资源分为如下三种情况:

    • 当队列S的minShare > R*weight,则分配minShare

    • 当队列S的maxShare < R*weight,则分配maxShare

    • 其它情况直接分配R*weight 这些分配的总和等于totalSlots。这个比值R也称为weight-to-slots,因为其值将队列的weight转换为实际的资源个数。

     

    简单评估队列分配资源值:

    Steady FairShare的计算公式是

    totalResources(集群总资源)/weights(所有队列的weight总和)*weight(某个队列的weight)

    FairShare的计算公式是

    totalResources(集群总资源)/activeWeights(active队列的weight总和)*activeWeight(active队列的weight)

     

    更具体的计算方法见参考


     

    4、调度器选择

    大部分情况下公平调度+多队列适合绝大部分场景(资源限额+动态分配),如果只是简单测试使用不用配置,默认的FIFO就满足。

     


    5、其他问题

    待补充


    6、参考

    YARN源码分析之Fair Scheduler part1

    Hadoop Yarn调度器的选择和使用

    Yarn FairSheduler使用FairSharePolicy计算Fair Share的规则、原理和代码实现

  • 相关阅读:
    浙江省新一代多普勒天气雷达系统
    删除目录下的所有文件及子文件夹
    在南京14所测试出厂雷达(转)
    c++实现aes加密算法,对字符串进行加密
    自已在别人基础上封装的AES数法 C++
    IOS发布问题
    GameCenter 使用指南
    [iOS]AES加密在iOS上面的实现
    【iOS开发必收藏】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!【2012625日更新iap恢复详解】
    基于cocos2dx引擎的游戏框架设计
  • 原文地址:https://www.cnblogs.com/GO-NO-1/p/12711858.html
Copyright © 2020-2023  润新知