伸缩组是弹性伸缩的核心单元。在伸缩组中配置好ECS实例模板并启用伸缩组后,您可以通过伸缩规则自动伸缩ECS实例,也可以手动添加已有的ECS实例。

ECS实例模板

ECS实例模板分为两类:自定义伸缩配置和实例启动模板。自动创建ECS实例时,会使用处于生效状态的ECS实例模板。

伸缩规则

您可以通过以下方式执行伸缩规则:
  • 手动执行
  • 通过定时任务执行
  • 通过报警任务执行

在计算和执行过程中,伸缩规则可以根据伸缩组的MinSize、MaxSize自动调整可以增加或减少的ECS实例数。例如,伸缩规则中指定将伸缩组的ECS实例数调整至50台,但伸缩组MaxSize只有45台,则整个伸缩规则会按调整至45台来计算和执行。

伸缩活动

执行伸缩规则、手动添加或删除ECS实例后均会触发伸缩活动,伸缩活动具有以下特点:
  • 同一伸缩组内、同一时刻只能有一个伸缩活动在执行。
  • 伸缩活动不可以中断。例如,某个创建20台ECS实例的伸缩活动正在执行中,当创建到第5台ECS实例时,您无法强行终止该伸缩活动。
  • 伸缩活动有ECS实例加入伸缩组失败时,需要保持ECS实例级事务的完整性,而非伸缩活动级事务的完整性,即只进行ECS实例级回滚,而不是伸缩活动级回滚。例如,当伸缩组创建了20台ECS实例,但只有19台ECS实例成功加入负载均衡时,则只对不成功的1台ECS实例进行自动释放操作。
  • 由于弹性伸缩是借助阿里云的RAM(Resource Access Management)服务,通过ECS OpenAPI弹性创建ECS实例,所以回滚的ECS实例在被释放前仍然会被扣费。
伸缩活动存在冷却时间,冷却时间具有以下特点:
  • 在冷却时间内,伸缩组只会拒绝云监控报警任务类型的伸缩活动请求,其他类型的触发任务(如手工执行伸缩规则、定时任务等)可以绕过冷却时间立即执行伸缩活动。
  • 每个伸缩活动的最后一个ECS实例加入或移出伸缩组成功后,整个伸缩组冷却时间才开始计时。