schedule

1 理想情况下,应用对Yarn资源的请求应该立刻得到满足,但现实情况往往资源是有限的,特别是在一个很繁忙的集群,一个应用资源的请求经常需要等待一段时间才能得到相应的资源。

2 在yarn中负责给应用分配资源的就是schedule

 

3 yarn 架构

        1 Resource Manager(RM) :

                        1 构成:

                                ① Schedule

                                ② Application Master

                        2 负责对各NM上的资源进行统一管理和调度,将AM分配给空闲的Container运行并监控其状态

                        3 对AM申请的资源请求分配相应的空闲Container

        2 Schedule:

                        1 根据应用程序的资源要求,以及集群机器的资源情况,为应用程序分配封装在Container中的资源

                        2 调度器是可插拔的,例如:CapacitySchedule、FairSchedule

        3 Application Manager:

                        1 管理整个系统中所有应用程序,包括应用程序提交、与调度器协商资源以启动AM

                        2 负责向RM协调资源

                        3 与Nodemanager协同工作,完成task的执行和监控

                        4 监控或者跟踪应用程序的状态,也负责任务因为各种原因而需要的重启 

        4 Nodemanager

                        1 向RM汇报本节点的资源使用情况 和 各个Container 的运行状态

                        2 接收并处理来自AM的Container启动/停止等请求

        5 Container

                        1 是yarn中的资源抽象,它封装了某个节点上的多维资源,如内存、CPU、磁盘、网络等

                        2 当AM向RM申请资源时,RM为AM返回的资源便是Container表示的

                        3 yarn会为每个任务分配一个Container且该任务只能使用该Container中描述的资源

4 yarn调度器

        1 FIFO Schedule 

                1 单队列,根据作业提交的先后顺序,先到的先服务

                2 不适用共享集群,大的应用可能会占用所有集群资源,这就导致其他应用被阻塞

 

                3 优点:

                        简单易懂

                4 缺点:

                        不支持多队列,生产环境很少用

        2 Capacity Schedule

                   1  优点:

                               1 多队列:每个队列可配置一定的资源量,每个队列采用FIFO调度策略

                               2 容量保证:可以为每个队列设置资源最低保证和资源上限

                               3 灵活性:如果一个队列中的资源有剩余,可以暂时共享给那些需要资源的队列,而一旦该队列有新的应用提交,则其他队列借调的资源会归还给该队列

                                4 多租户:支持多用户共享集群和多应用程序同时运行。为了防止同一用户的作业独占队列中的资源,该调度器会对同一用户提交作业所用的资源量进行限定

        3 Fair Schedule

        

          与容量相比较:

                相同点:

                        1 多队列:支持多队列操作

                        2 容量保证:可以为每个队列,设置资源最低保证和资源使用上限

                        3 灵活性:如果一个队列中资源有剩余,可以暂时共享给其他需要资源的队列,当该队列有新任务提交,则其他队列借调的资源会归还给该队列

                        4 多租户:支持多用户共享集群,多个应用程序同时运行

                不同点:

                        1 核心调度策略不同

                                ① 容量调度器:优先选择资源利用率低的队列

                                ② 公平调度器:优先选择对资源的缺额比较大

                        2 每个队列可以单独设置资源分配方式

                                ①容量调度器:FIFO、DRF

                                ②公平调度器:FIFO、DRF、FAIR

        4 缺额

                1 缺额:某一时刻,一个作业应该获取获取的资源 和 实际获取资源的差距

                2 公平调度器的设计目标:在时间尺度上,所有作业获得公平的资源

                3 公平调度器会优先为缺额大的作业分配资源

 

                

5  队列资源分配方式:

        1 FIFO策略

        2 Fair策略

        3 DRF策略 -- 内存、CPU、硬盘、网络 进行主资源衡量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值