前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Fair Scheduler和Capacity Scheduler比较

Fair Scheduler和Capacity Scheduler比较

作者头像
大数据杂货铺
发布2021-01-08 14:18:37
1.5K0
发布2021-01-08 14:18:37
举报
文章被收录于专栏:大数据杂货铺

本节提供有关选择Capacity Scheduler的好处和性能改进的信息,以及Fair Scheduler和Capacity Scheduler之间的功能比较。

为什么需要Scheduler?

Cloudera Data Platform(CDP)在YARN群集中仅支持Capacity Scheduler

在发布CDP之前,Cloudera客户根据所使用的产品(分别是CDH或HDP)使用了两个调度程序(Fair Scheduler和Capacity Scheduler)之一。

CDP中收敛到一个调度程序是一个艰难的选择,但最终植根于我们为客户降低复杂性的意图,同时帮助我们集中精力进行未来的投资。多年来,这两个调度程序都有很大的发展,以至于Fair Scheduler从Capacity Scheduler借用了几乎所有功能,反之亦然。鉴于此,我们最终决定将您的所有YARN群集的工作负载都放在Capacity Scheduler的上面。

当前使用Fair Scheduler的群集在迁移到CDP时必须迁移到Capacity Scheduler。Cloudera提供了有关此类迁移的工具,文档和相关帮助。

使用容量计划程序的好处

以下是使用Capacity Scheduler时的一些好处:

  • 与Ranger集成
  • 节点分区/标签
  • 改进了在云原生环境中的Scheduler,例如更好的垃圾箱打包,自动扩展支持等。
  • 计划吞吐量的提高
    • 全局调度框架
    • 一次查找多个节点
  • 相似性/反相似性:仅在运行应用程序Y的那些节点上运行应用程序X,反之亦然。不要在同一节点上运行应用程序X和应用程序Y。

调度程序性能改进

提供有关全局调度功能及其测试结果的信息。

全局计划改进带来的改进(YARN-5139)

在更改全局调度之前,YARN调度程序处于整体锁定状态,表现不佳。全局调度在很大程度上改进了YARN调度程序的内部锁定结构和线程模型。调度程序现在可以解耦放置决策并更改内部数据结构。这还可以使您一次查找多个节点,云上的自动缩放和bin-packing策略会使用这些节点。有关更多信息,请参见 设计和实现说明。

在模拟的基础上,使用全局调度功能的测试结果显示:

这是一个具有20000个节点和47000个正在运行的应用程序的模拟环境。有关这些测试的更多信息,请参见性能报告。

YARN社区的性能测试

微软发布了Hydra:用于数据中心规模分析的联合资源管理器(Carlo等)报告,重点介绍了可伸缩性(将YARN部署到超过25万个节点,其中包括五个大型联合集群,每个集群有5万个节点)和通过使用Capacity Scheduler调度获得更高的性能(每个群集的调度程序每秒可以分配超过40k的容器)。这是世界上最大的YARN部署。

我们还看到了社区中其他公司的性能数据,这些数据与我们使用模拟器测试的结果一致(对于具有数千个节点的集群,每秒数千个容器分配)。

免责声明:上面讨论的性能数字与群集的大小,群集上运行的工作负载,队列结构,运行状况(例如节点管理器,磁盘和网络),容器搅动等有关。这通常需要对调度程序和其他群集参数进行微调,以达到理想的性能。这不是仅通过使用CDP就可以实现的保证数量。

功能比较

随着时间的推移,两个调度程序的功能都变得相似。表中列出了当前功能列表以及两个调度程序之间的差异。

支持的功能

功能列表

Capacity Scheduler

Fair Scheduler

评论

队列

分层队列

弹性队列容量来实现更好的资源共享

队列中基于百分比的资源配置

百分比和绝对资源设置不能同时使用。

自动队列创建

用户映射(用户/组到队列的映射)

CLI / REST API支持来管理队列

在队列之间移动应用程序

创建/删除/修改动态队列

队列中的预订支持

授权

授权控制(队列中用于提交/管理/管理的ACL)

第三方ACL控制(Ranger)

应用位置

节点标签支持

Hive放置集成

节点属性支持

放置约束支持

受支持的约束在当前实施中受到限制。

节点位置

位置延迟控制

用户限制配额管理

AM资源配额管理

队列优先级

通过队列权重间接管理。

每个容器单位的最大和最小分配限制

调度

异步调度支持

调度程序之间的实现有所不同,因此不应视为等效。

多种资源类型支持(CPU,内存,GPU等)

队列排序策略(公平,FIFO等)

每个心跳有多个容器分配

抢占

队列间抢占支持

队列内抢占支持

基于预留的抢占

基于队列优先级的抢占

在做出抢占式决策时,将考虑队列权重。

应用支持

一流的应用概念

应用优先级

应用程序超时

跨队列移动应用程序

高可用性有状态应用程序恢复

路线图中的功能

功能列表

Capacity Scheduler

Fair Scheduler

评论

队列

队列中的绝对资源配置

百分比和绝对资源设置不能同时使用。

应用位置

最大应用数量

通过AM资源配额间接管理。

调度

基于应用程序大小的公平性

从Fair Scheduler迁移到Capacity Scheduler

从CDP私有云Base 7.1版本开始,Cloudera提供fs2cs转换实用程序,它是一个CLI应用程序,并且是YARN CLI命令的一部分。该实用程序有助于从Fair Scheduler迁移到Capacity Scheduler。

有关使用fs2cs 转换实用程序,调度程序迁移过程和手动配置的信息,请参阅《数据迁移指南》中的从“Fair Scheduler”到“Capacity Scheduler”迁移。

原文链接:https://docs.cloudera.com/cdp-private-cloud-base/7.1.5/yarn-reference/topics/yarn-FS-vs-CS.html

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-01-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大数据杂货铺 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 使用容量计划程序的好处
  • 全局计划改进带来的改进(YARN-5139)
  • YARN社区的性能测试
  • 支持的功能
  • 路线图中的功能
  • 从Fair Scheduler迁移到Capacity Scheduler
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档