EMR控制台管理YARN分区

EMR支持在控制台上通过可视化UI管理YARN分区,同时可以批量建立节点组与分区的映射,方便操作。您可以直接在节点组上配置分区属性,扩容和弹性伸缩后,EMR会自动为新增节点打上Node Label,无需重新配置新节点。本文为您介绍如何在EMR控制台上管理YARN分区。

背景信息

适用以下场景:

  • 集群异构

    实际的环境部署中,经常会出现不同的机器类型。例如,有些机器是计算型的,有些则是内存型。例如,新采购的机器是大内存和高CPU,偏计算型,已有的机器偏存储型。

  • 多种计算框架共享集群资源

    批处理应用占用大量网络资源或CPU资源,导致准实时计算资源被抢占。例如,离线集群上的Flink应用。

  • 重要作业保障

    如果不希望重要作业被调度到弹性节点,可以为非弹性节点配置单独的分区,让重要作业使用该分区(此处针对少数不希望因为缩容而被延迟的重要作业)。

借助YARN分区管理能力,运维人员可以根据节点的特性(角色定位、处理能力),将其分为不同的分区,让作业运行在指定分区下的节点上,来满足业务多维度的使用需求,同时也可以更好地管理和调度混合类型的机器资源或应用程序。

前提条件

已创建集群,且集群状态为运行中。创建集群详情,请参见创建集群

使用限制

  • 适用于EMR-5.11.1及之后版本、EMR-3.45.1及之后版本。

  • 集群状态为运行中。

  • YARN调度器需使用capacity scheduler。

注意事项

  • 新增或编辑分区后,需要单击部署生效,请在业务低峰期进行操作。

  • 如果YARN调度器切换为fair scheduler,则需要关闭Node Labels开关。

新增分区

  1. 进入服务的配置页面。

    1. 登录E-MapReduce控制台

    2. 在顶部菜单栏处,根据实际情况选择地域和资源组

    3. 在EMR on ECS页面,单击目标集群操作列的集群服务

    4. 集群服务页面,单击YARN服务区域的配置

  2. 单击管理分区页签。

  3. 单击新增分区,在新增分区对话框中,配置相关的参数。

    参数

    说明

    分区名称

    待新增分区的名称。

    长度限制为1~255个字符,仅可使用字母、数字、短划线(-)和下划线(_)。

    说明
    • 允许创建名为DEFAULT的分区。

    • 分区名不能以短划线(-)和下划线(_)开头。

    分区类型

    • Exclusive(默认):只允许请求和该分区匹配的容器调度到该分区的节点上。

    • Non Exclusive:将空闲资源共享给请求DEFAULT分区的容器。

    关联节点组

    选择需要关联的节点组。每个节点组仅可关联一个分区,支持修改关联的节点组。

  4. 单击确定

  5. 单击部署生效

    待系统将该配置热更新生效后,即可在YARN UI上看到新增的分区。

    部署后默认生效时间为10分钟,如果您希望快速生效,可以在配置页签的yarn-site.xml中新增配置项yarn.nodemanager.node-labels.resync-interval-msyarn.nodemanager.node-labels.provider.fetch-interval-ms,修改生效时间,然后在状态页签,手动重启NodeManager组件。

编辑分区

  1. 在EMR控制台YARN服务的管理分区页签,单击待修改分区操作列的编辑

  2. 编辑分区对话框中,可以修改关联的节点组,其余参数不支持修改。

  3. 单击确定

  4. 单击部署生效,使操作生效。

删除分区

  1. 在EMR控制台YARN服务的管理分区页签,单击待删除分区操作列的删除

  2. 在弹出的对话框中,单击确定

  3. 单击部署生效,使操作生效。

    说明
    • 删除分区会解绑关联在该分区上的节点组。

    • 如果该分区绑定了队列,则需要在编辑资源队列页签,关闭分区与队列关联管理开关后,才能删除该分区。

查看分区列表

在YARN服务的管理分区页签,您可以查看分区名称、可访问该分区的队列、节点组、分区类型和资源总量等信息。

关闭分区管理能力

如果您要从capacity scheduler切换为fair scheduler,则需要关闭Node Labels开关,以关闭分区管理能力。然后在YARN服务的状态页签,手动重启ResourceManager组件,以使操作生效。

关闭控制台上的管理分区页面

如果您希望完全通过自定义脚本来使用分区管理能力,且不希望EMR控制台进行分区管理的校验时,您可以在YARN服务的配置页签,修改yarn-operator-confnode_labels_managed_by_emr的参数值为false,刷新控制台后,则管理分区页面不可见,同时node-labels.xml也不会进行分区管理的校验,Node Labels配置详情请参见Node Labels特性使用