yarn笔记——资源调度器区别

    xiaoxiao2023-11-19  168

        公司里维护的hadoop是cdh版本,yarn资源调度器默认使用fair scheduler,最近在对接华为fushioninsight平台,该平台中的yarn使用的capacity scheduler。好奇这两种调度类型的区别,经过hadoop权威指南和网上现有的博客,做如下整理

    Fair scheduler与capacity scheduler的区别

    相同点     两种调度器,层次化队列的方式呈现,实现了资源的隔离。

    不同点 1、 capacity通过百分比来划分集群的资源;fair scheduler通过设定具体使用资源值(CPU、memory)来限定。 2、 capacity scheduler队列中的job,就是按照FIFO方式来运行;fair scheduler,可以通过fair-scheduler.xml中的defaultqueueschedulerpolicy标签来指定每个队列的调度策略(fair、fifo、drf)。 3、 当大job在执行时,又提交一个小job,fair scheduler会尽快腾出“空间”给小job运行。而capacity scheduler情况下,会等大job执行完毕,才执行小job。 4、 capacity scheduler的队列是弹性队列,可以设定弹性的最大百分比。 5、 fair scheduler支持抢占机制,capacity scheduler不支持

    附带记录一下yarn提交任务粗略的过程:

    1、client将应用提交给resourcemanager,resourcemanager收到请求,返回applicationid 2、client向rm申请启动applicationmaster 3、yarn选择一个nodemanager启动am 4、am启动后,向rm申请具体任务资源(container) 5、根据yarn设定的调度策略,在nodemanager节点上启动container 6、container启动完毕,并向am汇报

    最新回复(0)