FS迁移CS后如何在相对模式下微调 CDP 容量调度其配置
Cloudera Data Platform (CDP)统一了Cloudera Enterprise Data Hub (CDH)和Hortonworks Data Platform (HDP)的技术。基于详细和仔细的分析,遗留平台(HDP 和 CDH)中存在的一些功能被其他替代方案取代。CDH 用户会使用 Fair Scheduler (FS),而 HDP 用户会使用 Capacity Scheduler (CS)。在彻底分析了遗留平台中可用的 YARN调度器后,Cloudera 选择了 Capacity Scheduler 作为 CDP 支持的 YARN调度器。我们现在已经合并了两个调度器之间的功能,最大限度地减少了对 CDH 用户正在经历这个转换的影响。
在之前的博客文章CDP 的四种路径和选择升级或迁移路径中,我们介绍了将旧平台迁移到 CDP 的整体业务和技术问题。在CDH 到 CDP和HDP 到 CDP升级博客文章中,我们介绍了升级的整体技术过程,并提供了每个旧发行版的视频演示。在本博客中,我们将重点转移到在从 CDH 升级或迁移到 CDP 时应特别注意的特定领域。
为了更轻松地从 CDH 升级到 CDP,Cloudera 提供了fs2cs 转换实用程序。作为 Cloudera Manager 中升级集群向导的一部分,此实用程序会自动将某些 Fair Scheduler 配置转换为 Capacity Scheduler 配置。Capacity Scheduler 的某些功能是独一无二的,在 Fair Scheduler 中没有对应的映射。因此,fs2cs转换实用程序无法将每个 Fair Scheduler 配置转换为相应的 Capacity Scheduler 配置。(此类配置的示例将在本文档的后面部分讨论。)在fs2cs之后工具用于调度器属性的初始转换,需要进行一些手动微调以确保生成的调度配置适合您组织的内部资源分配目标和工作负载 SLA。
此博客列出了升级到 CDP 后需要微调的容量调度器的某些配置,以模仿升级前的一些公平调度器行为。此微调可让您将 CDP 容量调度器设置与之前在公平调度器中设置的阈值相匹配。在 CDP Private Cloud Base 7.1.6 中,引入了一种称为“权重模式”的新附加模式,用于将资源分配给队列。本博客重点介绍所有版本的 CDP 私有云基础中存在的遗留的“相对模式”,用于将资源分配给队列。
有关fs2cs转换实用程序、其内部工作方式、示例和限制的详细信息,请参阅Cloudera 之前的这篇博客文章。
有关调度器转换过程的详细说明,包括将 YARN 设置从 Fair Scheduler 迁移到 Capacity Scheduler,请参阅Cloudera 升级文档。
下表对 CDH 中的公平调度器和 HDP 中的容量调度器中的一些功能进行了快速并排比较。
公平调度器 (CDH) | 容量调度器 (HDP) |
---|---|
基于权重:自动公平份额计算 | 基于百分比容量或基于绝对资源配置 |
添加新队列时,动态重新计算所有队列的公平份额 | 添加新子队列时,需要重新配置同一父队列下的兄弟队列(如果有)的容量 |
队列的硬限制为“最大资源”设置的值为“最大运行应用程序”设置的值 | 队列的硬限制为每个队列定义的“最大容量”为每个队列配置“最大应用程序” |
没有在队列中的用户之间定义资源限制的选项 | 以下配置可用于定义队列内用户之间的资源分配“用户限制因子”硬限制“最小用户百分比”软限制 |
以下是 CDP 中容量调度器的一些新增功能:
有关这些资源分配模式的更多信息,请查看我们的资源分配概述。
作为 Cloudera Manager 中升级集群向导的一部分,您可以使用fs2cs转换实用程序将某些 Fair Scheduler 配置自动转换为 Capacity Scheduler 配置。有关fs2cs的使用详情,请参阅 Cloudera 官方文档。此工具还可用于在 CDH 到 CDP 边车迁移期间生成容量调度器配置。
例如,让我们考虑为 CDH 中的 Fair Scheduler 定义的以下动态资源池配置。
作为升级到 CDP 的一部分,fs2cs转换实用程序将公平调度器配置转换为容量调度器中相应的相对模式。以下屏幕截图显示了 YARN 队列管理器中生成的相对模式容量调度器配置。
如前所述, Fair Scheduler 和 Capacity Scheduler 的所有配置没有完全的一对一的映射。应在 CDP 容量调度器中进行一些手动配置更改,以模拟一些 CDH 公平调度器设置。例如,我们可以微调 CDP 容量调度器中的最大容量,以使用最大资源设置之前在 CDH 公平调度器中定义的一些硬限制。此外,在 CDH 中,没有选项可以限制队列中单个用户的资源消耗,因此一个用户可以消耗队列中的全部资源。在这种情况下,需要在 CDP 容量调度器中调整用户限制因素的配置,以允许单个用户超出配置的容量并达到队列的最大容量。
我们可以使用下面列出的计算作为起点,在相对模式下微调 CDP 容量调度器。这为之前在 Fair Scheduler 中定义的用户创建了具有类似容量限制的环境。
计算是使用 YARN 和 CDH Fair Scheduler 中定义的设置完成的。
升级到 CDP 后,我们可以使用上面建议的计算以及之前在 CDH 公平调度器中提供的配置来微调 CDP 容量调度器。这种微调工作模拟了 CDP 容量调度器中的一些以前的 CDH 公平调度器设置。如果您的环境和用例不需要此类模拟,请放弃此微调练习。在这种情况下,具有新容量调度器的升级 CDP 环境提供了一个理想的环境,可以从头开始重新访问和调整一些 YARN 队列资源分配。
下面提供了上面示例中使用的 CDH 公平调度器和微调 CDP 容量调度器的并排比较。
Capacity Scheduler 是 CDP Private Cloud Base 中默认且受支持的 YARN调度器。从 CDH 升级或迁移到 CDP Private Cloud Base 时,从 Fair Scheduler 到 Capacity Scheduler 的迁移是使用fs2cs转换实用程序自动完成的。从 CDP Private Cloud Base 7.1.6 开始,fs2cs转换实用程序转换为容量调度器中的新权重模式。在 CDP 私有云基础的早期版本中,fs2cs实用程序转换为容量调度器中的相对模式。由于 Fair Scheduler 和 Capacity Scheduler 之间的功能差异,所有配置的直接一对一映射是不可能的。在本博客中,我们介绍了一些计算,可用作手动微调的起点,以将相对模式下的 CDP 容量调度器设置与之前在公平调度器中设置的阈值相匹配。后续博客文章将介绍权重模式下 CDP 容量调度器的类似微调。
要了解有关 CDP 中容量调度器的更多信息,以下是一些有用的资源:
公平调度器与容量调度器的比较
CDP 资源调度和管理
升级到 CDP
原文作者:Kiran Anand 和Divya MN
原文链接:https://blog.cloudera.com/fine-tune-fair-to-capacity-scheduler-in-relative-mode/