YARN调度组件-FIFO、Capacity、Fair调度器

YARN调度器包括FIFO、Capacity和Fair三种。FIFO简单直观,适合低负载环境;Capacity调度器保证队列最小容量,适合大规模集群;Fair调度器则实现资源的公平分配,确保所有应用平均获取资源。各调度器有其特点,适用于不同使用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

YARN调度组件

YARN有一个可拔插的调度器组件,根据不同的使用场景和用户需求,管理员可以选择简单的FIFO(先入先出),Capacity或者Fair Share Scheduler。Scheduler类在yarn-dafault.xml中设置关于当前正在运行的调度信息,可以通过打开的ResourceManager网站界面,在左侧的集群菜单中的调度选项找到。

1.FIFO调度器

FIFO调度基本上是一个简单的“先来先服务”的调度,其中JobTracker从一个工作队列首先拉取最早的作业。FIFO调度不考虑作业的优先级和范围。FIFO调度适合低负载集群,但是当使用大型共享集群时,它的功能不佳并且可能会导致一些问题。

2.Capacity调度器

Capacity调度器是YARN中的另一个可拔插的调度器,允许多个组件安全的共享一个大规模Hadoop集群。容量调度器在很多大规模Hadoop集群上成功运行。

为了使用Capacity调度器,管理员使用总槽位(或处理器)容量的预定值配置一个或多个队列。这种分配保证了每个队列的最小资源使用量。管理员为每个队列的可用资源容量配置了软限制和可选的硬限制。每个队列有严格的ACL(访问控制列表),用以控制哪些用户可以向每个队列提交作业。另外也有措施来保证用户无法查看或修改其他用户的应用程序。

容量调度器允许共享集群,同时给每个用户或租一定的最小容量保证。这些最小值在不需要时可以放弃,超过的容量将会给与那些最饥饿的队列,其中饥饿成都用运行中或以用的队列容量来衡量。因此,由初始的最小容量保证所定义的最满队列将获得最需要的资源。空闲容量可以被分配,并且以最具成本效益的弹性方式提供给用户。

队列的定义和属性(如容量和ACL)可以由管理员以安全的方式,在运行时更改,以尽量减少对用户的干扰。管理员可以在运行时添加额外的队列,但队列不能在运行时被删除。此外,管理员可以在运行时停止队列,以确保在现有的应用程序运行完毕后,没有新的应用程序被提交。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值