Yarn管理动态队列

简介: 动态队列是在应用程序运行时自动创建的。当 YARN 服务重新启动时,它们将被删除。

这是CDP中Yarn使用手册系列的一篇。之前的文章请参考《Apache Hadoop Yarn概述》、《CDP中使用YARN Web UI和CLI》、《CDP中配置Apache Hadoop Yarn的安全性》、《CDP中Yarn资源调度与管理》、《CDP中Yarn管理队列》、《Yarn在全局级别配置调度程序属性》、《Yarn配置每个队列属性》、《Yarn管理放置规则》。

动态队列是在应用程序运行时自动创建的。当 YARN 服务重新启动时,它们将被删除。

动态队列是在运行时自动创建的。capacity-scheduler.xml配置文件中没有定义动态队列 。动态队列可以在那些允许动态自动子创建的静态父项下创建。必须使用 YARN 队列管理器 UI 显式设置动态自动子创建。

您可以通过两种方式创建动态队列:

·      动态队列路径由提交者在提交作业时指定。如果为队列路径中提供的父队列启用了动态自动子创建功能,则将创建动态队列。

·      放置规则适用于可将其放入动态队列的已提交作业。动态队列是根据动态放置规则的预定义表达式创建的。

根据您的资源分配模式,动态队列的管理方式不同:

在绝对和相对模式下,当您为队列启用动态自动子创建功能时,它将成为托管父队列。它不能有静态子队列,它下面的队列只能动态创建。它允许 1 级动态队列嵌套。

在权重模式下,没有托管父队列。当您为某个队列启用动态自动子创建功能时,它会成为一个可以同时拥有静态和动态子队列的父队列。它允许 2 级动态队列嵌套。

注意

尽管可以使用安全阀配置片段来配置动态队列,但Cloudera 建议使用 YARN 队列管理器 UI 进行动态队列配置,即使这会导致一些限制。

1    托管父队列

托管父队列是在绝对和相对资源分配模式下动态自动创建子队列。

在绝对和相对模式下,当您为队列启用动态自动子创建时,它将成为托管父队列。它不能有静态子队列,其下的队列只能动态创建。

在绝对和相对模式下,动态创建的队列始终属于预定义(静态)队列,即托管父队列。这将嵌套限制为仅一层。此外,为托管父队列设置的队列属性将应用于其所有动态创建的子队列。要更改其所有动态子队列的队列属性,您必须更改托管父队列级别的配置。

通过错误地设置托管父队列,可以动态创建零容量队列。

例如,您可以创建一个托管父队列并为其动态创建的子队列分配一个基于百分比的最小容量限制 5%。在这种情况下,最多 20 个队列可以在 5% 的容量限制下运行。这会强制所有后续队列等待,直到队列被释放(如果队列中没有应用程序正在运行,则其容量设置为零)。因此,以考虑应该并行运行的队列数量的方式设计属于托管父队列的子队列的最小容量限制至关重要。

2     将队列转换为托管父队列

在绝对和相对模式下,您必须创建托管父队列以启用动态队列创建。您可以通过 YARN 队列管理器 UI 执行此操作。

请注意,在托管父队列级别设置的队列属性适用于其所有叶队列。

重要的

为队列启用动态自动子创建后,您将无法禁用它。如果您错误地启用它,您必须删除队列及其子队列,然后重新创建它们。

1.   Cloudera Manager 中,选择YARN Queue Manager UI

图形队列层次结构显示在 概览选项卡中。

2.   找到要为其启用动态自动子创建功能的队列。

3.   选择更多选项菜单并选择 启用动态自动子创建。

图片 1.png

4.   设置队列的最小和最大容量。

5.   点击保存。

要定义可能导致动态创建子队列的放置规则,请确保在放置规则创建期间选择创建目标队列(如果不存在?)。选项并提供托管父队列作为父队列。有关详细信息,请参阅管理放置规则

3     在权重模式下启用动态自动子创建

在权重模式下,当您为队列启用动态自动创建子队列时,它将成为一个可以同时拥有静态和动态子队列的父队列。您可以通过 YARN 队列管理器 UI 启用该功能。

在权重模式下,没有托管父队列。当您为某个队列启用动态自动子创建功能时,它将成为一个可以同时拥有静态和动态子队列的父队列。如果未启用此功能,则队列只能有静态子队列。

与动态队列嵌套级别仅限于一级的管理父队列相反,在权重模式下,动态自动子创建允许您创建 2 级动态队列。

重要的

为队列启用动态自动子创建后,您将无法禁用它。如果您错误地启用它,您必须删除队列及其子队列,然后重新创建它们。

由于一个已知问题,您只能为已经有至少一个子队列的队列启用动态自动子创建。这意味着您必须在要为其启用此功能的父队列下创建至少一个静态子队列。

为父队列启用动态自动子创建后,如果您的设置只需要动态子队列,您可以停止和删除静态子队列。

1.   Cloudera Manager 中,选择YARN Queue Manager UI

图形队列层次结构显示在 概览选项卡中。

2.   找到要为其启用动态自动子创建功能的队列。

3.   选择更多选项菜单并选择 启用动态自动子创建。

图片 2.png

为队列启用了动态自动子创建,并且队列名称旁边会显示一个螺栓图标。

如果不需要,请先删除您创建的静态子队列,然后再为该队列启用动态自动子创建功能。

如果要定义可能导致动态创建子队列的放置规则,请确保在创建放置规则期间选中创建目标队列,如果它不存在?属性并提供启用动态自动子创建的父队列。有关详细信息,请参阅 管理放置规则

4     管理动态自动子创建启用父队列

Cloudera Manager 中的 YARN 队列管理器 UI 提供了队列层次结构的概览,您可以在其中查看和管理启用了动态自动子创建的父队列。

1.   Cloudera Manager 中,选择YARN Queue Manager UI

图形队列层次结构显示在 概览选项卡中。启用动态自动子创建的父队列的队列名称旁边会显示一个螺栓图标。

2.   选择三个垂直点并为启用动态自动子创建的父队列选择以下操作之一:

o   查看/编辑队列属性:在相对和绝对资源分配模式下,您可以查看和编辑队列属性 动态自动创建队列部分 。在权重资源分配模式下,您只能查看该部分。

o   添加子队列:仅在权重模式下支持,其中动态父队列可以同时拥有静态和动态子队列。

o   删除队列:您必须先停止队列,然后才能删除它。

注意

您不能删除 rootroot.default 队列。

o   停止队列/停止队列及其子队列:停止队列及其子队列(如果有)。

注意

在权重模式下,如果队列有动态创建的子队列,一旦停止动态子队列,将无法重新启动。

o   编辑动态子队列容量:仅在绝对和相对模式下受支持。

o   更多信息:您将被重定向到 资源管理器UIv2 队列页面。

5    管理动态创建的子队列

YARN 队列管理器 UI 提供了队列层次结构的概览,您可以在其中查看和管理动态创建的子队列。

您不能直接删除动态创建的子队列。有关动态队列删除的更多信息,请参阅删除动态创建的子队列

1.   Cloudera Manager 中,选择YARN Queue Manager UI

图形队列层次结构显示在 概览选项卡中。在图片 3.png启用了动态自动子创建的父队列的队列名称旁边会显示一个叶子。

2.   选择更多选项菜单并为动态创建的队列执行以下操作之一:

o   查看/编辑队列属性:在相对和绝对资源分配模式下可用。

o   更多信息:您将被重定向到 资源管理器UIv2 队列页面。

6    删除动态创建的子队列

您不能直接删除动态创建的子队列,但有一些解决方法可以删除它们。例如,当该队列中的应用程序终止时,它会很有用。

有两种方法可以删除动态创建的子队列:

·      重新启动 YARN 服务:这会停止并删除所有动态创建的队列。

·      停止然后删除动态创建的子队列的父队列:这将删除动态父队列及其所有子队列 - 静态和动态的。

原文链接:https://docs.cloudera.com/cdp-private-cloud-base/latest/yarn-allocate-resources/topics/yarn-dynamic-queues.html

 

目录
相关文章
|
4月前
|
SQL 资源调度 分布式计算
Yarn【多队列实例、任务优先级设置】
Yarn【多队列实例、任务优先级设置】
|
5月前
|
资源调度 分布式计算 Hadoop
Yarn队列租户配置教程(实践记录)
Yarn队列租户配置教程(实践记录)
68 0
|
6月前
|
资源调度 分布式计算 数据可视化
灵活、可用、高扩展,EasyMR 带来全新 Yarn 的队列管理功能及可视化配置
本文为大家介绍各类资源划分和队列管理方式,以及 EasyMR YARN 的队列管理功能,如何通过可视化界面管理,给广大用户带来更高效和便捷的队列管理体验。
47 0
|
6月前
|
SQL 资源调度 大数据
大数据平台 CDP 中如何配置 hive 作业的 YARN 队列以确保SLA?
大数据平台 CDP 中如何配置 hive 作业的 YARN 队列以确保SLA?
|
分布式计算 资源调度 Hadoop
大数据基础-yarn配置多资源队列
yarn配置多资源队列
256 0
|
资源调度 分布式计算 Hadoop
Yarn队列租户配置教程(实践记录)
Yarn队列租户配置教程(实践记录)
430 0
Yarn队列租户配置教程(实践记录)
|
JSON 资源调度 分布式计算
Yarn管理放置规则
放置规则可以定义在指定应将哪个队列用于提交的作业时考虑的逻辑。这些预定义规则使您可以在提交作业时无需指定队列名称即可提交作业。
310 0
Yarn管理放置规则
|
资源调度 分布式计算 Hadoop
Yarn配置每个队列属性
队列属性包含定义队列行为的设置。使用队列属性,您可以定义不需要直接从父队列继承属性的设置,并定义特定于队列的设置。
512 0
Yarn配置每个队列属性
|
存储 资源调度 分布式计算
CDP中Yarn管理队列
YARN Queue Manager 是 Apache Hadoop YARN Capacity Scheduler 的队列管理图形用户界面。您可以使用 YARN 队列管理器 UI 来管理集群容量,使用队列来平衡来自不同用户的多个应用程序的资源需求。使用 YARN 队列管理器 UI,您可以设置调度程序级别属性和队列级别属性。
722 0
CDP中Yarn管理队列
|
资源调度 分布式计算 Hadoop
CDP中Yarn资源调度与管理
您可以通过调度分配资源、通过配置 cgroup 限制 CPU 使用、使用分区将集群划分为子集群以及在 Docker 容器上启动应用程序来管理集群上运行的应用程序的资源。
758 0