更新时间:2024-11-29 GMT+08:00
简介
在大数据应用,尤其是实时分析处理数据的场景中,常常需要根据数据量的变化动态调整集群节点数量以增减资源。MRS的弹性伸缩规则功能支持根据集群负载对集群的Task节点进行弹性伸缩。如果数据量是按照周期进行有规律的变化,用户可以按照固定时间段来自动调整Task节点数量范围,从而在数据量变化前提前完成集群的扩缩容。
- 弹性伸缩规则:根据集群实时负载指标对Task节点数量进行调整,数据量变化后触发扩缩容,有一定的延后性。
- 资源计划:按时间段设置Task节点数量范围,若数据量变化存在周期性规律,则可通过资源计划在数据量变化前提前完成集群的扩缩容,避免出现增加或减少资源的延后。
弹性伸缩规则与资源计划均可触发弹性伸缩,两者必须至少配置其中一种,也可以叠加使用。资源计划与基于负载的弹性伸缩规则叠加使用可以使得集群节点的弹性更好,足以应对偶尔超出预期的数据峰值出现。
当某些业务场景要求在集群扩缩容之后,根据节点数量的变化对资源分配或业务逻辑进行更改时,手动扩缩容的场景客户可以登录集群节点进行操作。对于弹性伸缩场景,MRS支持通过自定义弹性伸缩自动化脚本来解决。自动化脚本可以在弹性伸缩前后执行相应操作,自动适应业务负载的变化,免去了人工操作。同时,自动化脚本给用户实现个性需求提供了途径,完全自定义的脚本与多个可选的执行时机基本可以满足用户的各项需求,使弹性伸缩更具灵活性。
- 弹性伸缩规则:
- 用户对于一个集群,可以同时设置扩容、缩容最多各5条弹性伸缩规则。
- 系统根据用户的配置顺序从前到后依次判断规则,先扩容,后缩容。请尽量把重要的策略放在前面,以防一次扩容或缩容无法达到预期效果而进行反复触发。
- 比对因子包括大于、大于等于、小于、小于等于。
- 集群连续5n(n默认值为1)分钟持续满足配置的指标阈值后才能触发扩容或者缩容。
- 每次扩容或者缩容后,存在一个冷却时间,冷却时间默认为20分钟,最小值为0。
- 单次扩容或者缩容的节点数,最小1个节点,最大100个节点。
- 集群Task节点数量会被限定在用户配置的默认节点数量范围内或者当前时间段生效的资源计划的节点数量范围内。当前时间段生效的资源计划的节点数量范围优先级更高。
- 资源计划(按时间段设置Task节点数量范围):
- 用户可以按时间段设置集群Task节点的最大数量和最小数量,当集群Task节点数不满足当前时间资源计划节点范围要求时,系统触发扩容或缩容。
- 用户最多可以为一个集群设置5条资源计划。
- 资源计划周期以天为单位,起始时间与结束时间可以设置为00:00-23:59之间的任意时间点。起始时间早于结束时间至少30分钟。不同资源计划配置的时间段不可交叉。
- 资源计划触发扩容或缩容后,存在10分钟的冷却时间,冷却时间内不会再次触发弹性伸缩。
- 当启用资源计划时,在除配置资源计划配置时间段的其他时间内,集群Task节点数量会被限定在用户配置的默认节点数量范围内。
- 自动化脚本:
- 用户可以设置自定义脚本,当弹性伸缩触发时,在集群节点上自动运行。
- 用户最多可以为一个集群设置10个自动化脚本。
- 可以指定自动化脚本某种或多种类型的节点上执行。
- 脚本执行时机可以是扩容前、扩容后、缩容前或缩容后。
- 使用自动化脚本前,请先将脚本上传到集群虚拟机或与集群同region的OBS文件系统中。集群虚拟机上的脚本只能在已有节点上执行,若脚本需要在新扩容的节点上执行,请将脚本上传到OBS。
父主题: 配置弹性伸缩规则