弹性伸缩(Auto Scaling),是根据您的业务需求和策略,自动调整集群计算资源的管理服务。
当您在使用火山引擎 E-MapReduce(EMR)集群过程中,如果资源经常出现波峰波谷的情况,那么在计算高峰时,自动扩展一部分临时计算能力,帮助您渡过业务计算高峰;渡过业务高峰后再进行自动缩容,便可以降低您的计算资源使用成本。本文为您介绍弹性伸缩的核心能力及功能使用情况。
在以下场景中,使用 EMR 弹性伸缩功能,可以帮助您节省成本,提高执行效率。
集群类型 | 版本要求 |
---|---|
Hadoop |
|
Starrocks |
|
详见创建集群。
核心能力 | 说明 |
---|---|
支持多种伸缩场景 |
|
支持多种伸缩策略 |
|
说明
在第一次开启节点组弹性伸缩功能的时候,如果您未设置伸缩范围,则系统会将节点组的伸缩范围设置为默认值,默认最小实例数为0,默认最大实例数为30。
在弹性伸缩规则栏,伸缩规则tab页签(默认展示),单击右侧添加伸缩规则按钮即可以添加新的伸缩规则。
详细的字段说明参照下表:
规则项 | 示例值 | 描述 |
---|---|---|
规则名称 | test-policy | 伸缩规则的名称,取值:
|
触发条件 | ||
固定时间点 | 2023-02-10 14:54:14 |
|
每日+区间 | 08:00 - 18:00 | 表示在每天的某个时间段内触发 |
每日+等于 | 09:00 | 表示在每天的某个时间点上触发 |
每周 | 周一、周五 | 表示每周的某一天触发,可以多选 |
每月+区间 | 10 - 22日 | 表示每月的某一连续日期触发 |
每月+等于 | 最后一天 | 表示每月的某一天触发,支持选最后一天或第一天 |
数值类型 | Yarn 可用核数: | 某一项指标超过阈值的情况,在某一时间段内发生的次数超过所设定的次数时,则触发。指标的采样间隔为半分钟。 |
负载指标项一览:
条件类型 | 数据源 | 指标code | 源生指标 | 指标名 | 单位 |
---|---|---|---|---|---|
数值 | YARN | AvailableVCores | availableVirtualCores | Yarn可用核数 | core |
数值 | YARN | AvailableMemory | availableMB | Yarn可用内存 | GB |
数值 | YARN | AppsRunning | appsRunning | Yarn运行任务数 | 个 |
数值 | YARN | AppsPending | appsPending | Yarn排队任务数 | 个 |
数值 | YARN | MemoryAvailablePrecentage | availableMB/totalMB | Yarn可用内存比例 | % |
数值 | YARN | VCoresAvailablePrecentage | availableVirtualCores/totalVirtualCores | Yarn可用核数比例 | % |
数值 | YARN | AppsPendingRatio | appsPending/(appsSubmitted + appsPending + appsRunning) | Yarn排队任务比例 | % |
数值 | YARN | AppsKilled | appsKilled | Yarn中止任务数 | 个 |
数值 | YARN | AppsFailed | appsFailed | Yarn失败任务数 | 个 |
数值 | YARN | AppsCompleted | appsCompleted | Yarn完成任务数 | 个 |
数值 | YARN | AppsSubmitted | appsSubmitted | Yarn提交任务数 | 个 |
规则名称和触发条件填写完成后,单击确定按钮,完成伸缩规则添加。
伸缩规则添加成功后,您可对添加成功的伸缩规则进行以下管理操作:
注意
注意
该冷却时间只对弹性伸缩规则生效,不对手动行为生效,即在冷却时间内,手动扩缩容功能不受影响。
在可用弹性伸缩节点组栏,单击右侧操作列中关联规则按钮,可以看到当前集群下的所有已添加的规则,若规则较多时,您可以选择“仅查看已绑定的规则”或在右侧的搜索框里输入规则名称来进行快速检索。
说明
若集群下还没有规则,可以单击添加规则按钮,快速链接跳转到添加规则页面,进行添加伸缩规则。详见添加伸缩规则。
单击列表操作列中的绑定按钮,可以绑定该规则到当前节点组上,绑定时需设置伸缩行为的相关参数,说明如下:
参数 | 说明 |
---|---|
新增实例数 | 按台数增加 |
新增实例百分比 | 根据规则触发时,实例数的百分比来计算新增台数,向上取整,如果当时的实例数为0,则按1处理。 |
减少实例数 | 按台数减少 |
减少实例百分比 | 根据规则触发时,实例数的百分比来计算减少台数,向下取整。 |
绑定规则后,您可以通过单击伸缩行为列中的编辑图标按钮进行伸缩行为的调整。
注意
单次最多可以调整的实例个数不允许超过30。
如果需要查看规则的详细信息,以便对应设置伸缩行为,可以单击规则详情按钮或规则左侧的展开符进行查看。
单击伸缩规则 tab 页签右侧的历史记录,可以查看集群的弹性伸缩记录。
在历史记录中,您可进行以下操作:
可通过勾选已命中触发条件来快速筛选历史记录,默认为已勾选。
可在搜索框里面输入规则名称, 来筛选所关注的规则触发与执行情况,支持模糊查询。
可在时间搜索框里输入起始与终止时间进行查询,系统默认时间范围为距离当前时间近一天。
还可以通过伸缩状态列右侧的筛选漏斗按钮进行筛选记录。具体状态说明如下表:
状态 | 描述 |
---|---|
执行中 | 弹性伸缩活动正在执行。 |
全部成功 | 根据伸缩规则与绑定信息,所有伸缩的节点,均被加入或移出对应的节点组。 |
部分成功 | 只有在扩容时才会发生,因为受 ECS 或云盘库存的影响,只有部分节点执行成功。 |
全部失败 | 根据伸缩规则,没有一个节点被加入或移出集群。 |
拒绝 | 当运行伸缩规则后的实例数大于最大实例数或者小于最小实例数时,或者当运行规则触发时该节点组的上一次伸缩活动还未结束,则会拒绝该规则运行。 |
异常 | 只有在缩容时才会发生,当 ECS、云盘或计费模块等服务异常时,组件已经下线,但节点未能移除,此时,该伸缩组状态会锁定为缩容中,不能进行节点变动的操作,需要您尽快联系我们进行处理,以免受到损失。 |
点击命中触发条件列中的查看按钮,可以结合历史指标值查看负载类规则的触发情况。