一、概念说明
EMR 资源采用「EMR 资源 > 节点组 > 节点」三层结构:
·EMR 资源:为 EMR on TKE 实例提供底层算力的资源池,详见 资源说明。
·节点组:EMR 资源内的资源分组,统一维护组内节点的机型规格、计费类型、Labels 与 Taints、自定义脚本、置放群组以及弹性伸缩策略。
·节点:节点组的最小组成单位,即一台云服务器实例。
同一个 EMR 资源可划分为多个节点组,例如将常驻服务与计算任务分别放入不同节点组,实现运维隔离与差异化弹性策略。节点组同时也是弹性伸缩的基本单元,弹性伸缩规则均以节点组为范围生效。
创建 EMR on TKE 实例时可以选择一个或多个节点组,实例将优先调度到所选节点组内的节点;若不选择节点组,则可调度到该 EMR 资源下的全部节点。
二、节点组与 TKE 节点池的关系
节点组是 EMR 侧的资源分组概念,节点池是容器服务 TKE 侧的概念,两者相互独立。节点组内的节点支持加入 TKE 节点池,可以选择沿用节点池上已有的配置。
·扩容时支持配置是否加入 TKE 节点池。
·加入 TKE 节点池后,节点可以选择继承节点池的 Labels、Taints、自定义脚本等配置。
三、管理入口
节点组有两个管理入口,两者内容一致,区别在于可见范围和可用操作。
| 入口 | 路径 | 可见范围 | 差异说明 |
| 计算资源 | EMR 控制台 > 工具箱 > 资源运维 > EMR 资源 > 单击资源 ID > 节点管理 | 该 EMR 资源下的全部节点组 | 管理该 EMR 资源的所有节点组 |
| EMR on TKE 实例 | 实例详情页 > 资源管理 > 节点管理 | 仅当前实例创建时选中、后续新建以及通过添加已有节点组加入的节点组 | 工具栏额外提供添加已有节点组,可从所属 EMR 资源中选择已有节点组加入当前实例 |
注意:说明:
注意:两个入口的操作结果互相同步:在实例详情页新建、编辑、删除节点组,扩缩容节点,开启或关闭弹性伸缩,均会同步到对应的 EMR 资源以及使用该节点组的其他 EMR on TKE 实例;在计算资源侧的操作,也会同步到所有使用该节点组的实例。
四、创建节点组
节点组支持两种创建方式:
·创建 EMR on TKE 实例时,在资源配置步骤的配置 EMR 资源抽屉中按可用区配置节点组,详见 创建集群。
·对已有 EMR 资源,在节点管理页单击新建节点组。
配置项说明如下:
| 配置项 | 配置说明 |
| 节点组名称 | 系统提供默认名称,支持修改。长度为 1-64 个字符,仅支持中文、字母、数字、短划线(-)和下划线(_);同一 EMR 资源内名称不可重复。 |
| 节点类型 | 支持普通节点。 |
| 计费模式 | 支持按量计费和包年包月。仅按量计费节点组支持弹性伸缩。 |
| 可用区及子网 | 支持添加多个可用区,每个可用区选择对应子网,最多支持 3 个可用区。 |
| 节点规格 | 同一机型对应一个可用区,同一规格在不同可用区为独立选项;同一节点组可包含多个机型族。已选规格支持拖拽调整顺序,顺序决定扩容时的机型优先级。 |
| 系统盘、数据盘 | 配置磁盘类型与容量,数据盘最多可添加 20 块。选择多个机型时,可选的系统盘和数据盘类型取各机型的交集。 |
| Labels、Taints | 用于设置节点标签与污点,控制 Pod 调度。 |
| 自定义脚本、标签、置放群组 | 与 EMR 资源扩容保持一致,按需配置。 |
五、编辑节点组
在节点组操作列单击编辑,可修改节点组的规格、磁盘、Labels、Taints、自定义脚本、置放群组等配置。
·节点类型和计费模式创建后不可修改,仅展示为文本。
·架构不支持跨架构调整,仅当前架构下的机型可选。
六、扩容
在节点组操作列单击扩容,为节点组增加节点。
·节点组配置了多个规格时,扩容会优先选择排序靠上的机型。
·输入扩容数量后展示费用明细,多规格场景下按价格区间展示。
七、缩容
支持在节点组维度和节点维度发起缩容。
缩容规则:
·最小节点数:缩容后集群剩余节点数需不少于 3 个;包年包月节点缩容时,集群剩余包年包月节点数需不少于1个。不满足时无法缩容。
·弹性节点:节点组已开启自动伸缩时,仅当所选节点全部为非弹性节点才可手动缩容;所选节点包含弹性节点时不支持手动缩容。
·优雅缩容:支持开启优雅缩容并设置等待时间,可对带指定 Label 的 Pod 做豁免,直到其上作业全部运行结束后再缩容相应的节点。
费用说明:
·按量计费节点缩容后立即停止计费,不产生退款。
·包年包月节点缩容时展示预计退还的剩余未使用费用,实际退费以最终结算为准。
八、添加已有节点
在节点组操作列的更多中选择添加已有节点,可将 EMR 资源下的空闲节点加入当前节点组。
·加入条件:仅支持加入与当前节点组计费类型、节点类型一致,且未加入任何节点组的节点。
·配置继承:加入后节点将继承所在节点组的 Labels 与 Taints;若节点自身已存在相同 Key,以节点组的 Value 为准。
九、删除节点组
在节点组操作列的更多中选择删除。
·节点组内仍有节点时不支持删除,需先移除组内所有节点。
·已开启弹性伸缩的节点组,删除后将同时关闭弹性伸缩并删除关联的所有伸缩规则;由托管伸缩为该节点组扩容的弹性节点将被缩容释放。
注意:警告:
注意:删除节点组及其关联伸缩规则的操作不可恢复,请谨慎操作。
十、自动伸缩
弹性伸缩以节点组为范围生效,仅按量计费节点组支持自动伸缩,包年包月节点组不支持。在自动伸缩页单击添加策略,先选择节点组,再选择伸缩策略。
两种策略对比如下:
| 对比项 | 时间伸缩 | 托管伸缩 |
| 触发方式 | 按设定的时间规则定时或周期扩缩容 | 基于负载自动扩缩容,由 EMR 安装的 Karpenter 实现 |
| 规则数量 | 支持配置多条规则,按优先级顺序执行 | 每个节点组一条规则,规则名称回显节点组名称 |
| 节点数范围 | 支持配置最小节点数与最大节点数 | 最小节点数为 0,支持配置最大节点数 |
时间伸缩的规则叠加时,系统按优先级选择执行。
托管伸缩的规则参数说明如下:
| 参数 | 说明 |
| 整合策略 | 决定哪些节点会被整合回收。空闲时整合仅回收无负载的空节点;空闲或低利用率时整合会额外回收资源利用率低、负载可迁移的节点,以降低成本。 |
| 整合等待 | 节点空闲或负载变化后,等待该时长再触发整合,避免频繁抖动。取值范围为 0-3600 秒,默认为 30 秒。 |
| 最大节点数 | 该节点组可扩容到的节点数上限,达到上限后不再扩容。取值范围为 1-9999,添加策略时默认为 20。 |
| CPU 上限、内存上限、GPU 上限 | 该节点组所有节点的 vCPU 核数、内存总量、GPU 卡数上限,留空表示不限制。 |
| 节点过期时间 | 节点的最长存活时长,到期后自动替换为新节点,便于打补丁或刷新机型。 |
| 中断预算 | 单位时间内最多可同时中断(整合、过期、替换)的节点数量或比例,用于保护业务可用性,默认为 10%。 |
| 调度权重 | 多个节点组竞争调度时,权重越高越优先被选择。取值范围为 0-100。 |
自动伸缩页通过二级页签切换策略管理和伸缩记录,在伸缩记录中可按节点组查看历史伸缩明细。