冷却时间指成功执行伸缩活动后的一段锁定时间。您可以通过以下两种方式配置冷却时间:
在伸缩组中配置默认冷却时间,默认冷却时间不能为空,请参照 创建伸缩组。
在伸缩规则中配置冷却时间,如果不配置,将使用默认冷却时间,请参照 创建伸缩规则。
说明:如果同时在伸缩组和伸缩规则中配置了冷却时间,弹性伸缩服务将优先使用伸缩规则中的冷却时间。
冷却时间规则
伸缩组成功执行伸缩活动后,弹性伸缩服务开始计算冷却时间。如果在伸缩活动中,多台 ECS 实例加入或者移出伸缩组,则从最后一台 ECS 实例加入或者移出伸缩组后开始计算冷却时间,请参照
示例 1。如果在伸缩活动中,没有 ECS 实例成功加入或者移出伸缩组,则不会开始计算冷却时间。
在冷却时间内,伸缩组会拒绝由云监控报警任务触发的伸缩活动请求。但其他类型任务(手动执行任务、定时任务)触发的伸缩活动可以立即执行,绕过冷却时间。
如果您停用伸缩组,然后再次启用伸缩组,冷却时间将会失效,请参照
示例 2。
说明:冷却时间仅锁定同一个伸缩组的伸缩活动,不会对其他伸缩组的伸缩活动产生影响。
示例场景
示例 1
一个伸缩组 asg-uf6f3xewn3dvz4bsy7r1,默认冷却时间是 10 分钟,伸缩组内存在一条伸缩规则 add3,冷却时间为 15 分钟。
根据 add3 成功执行一次伸缩活动后,扩张了 3 台 ECS 实例,从第 3 台 ECS 实例加入伸缩组开始计算冷却时间,15 分钟内不会接受由云监控报警任务触发的伸缩活动请求。
示例 2
一个伸缩组 asg-m5efkz67re9x7a571bjh,默认冷却时间是 10 分钟,伸缩组内存在一条伸缩规则 remove1,没有设置冷却时间。
在 18:00 根据 remove1 成功执行一次伸缩活动后,收缩了 1 台 ECS 实例。正常情况下,在 18:10 前伸缩组不会接受由云监控报警任务触发的伸缩活动请求。此时停用伸缩组,然后在 18:05 再次启用伸缩组,冷却时间将失效。如果在 18:05 至 18:10 间云监控报警任务触发了伸缩活动请求,伸缩组仍会接受并执行请求。
阿里云 AI 助理回答
冷却时间是阿里云弹性伸缩服务(AutoScaling)中的一个重要配置,用于控制在成功执行一次伸缩活动后,多长时间内伸缩组不会响应新的扩缩容请求,以避免因监控指标波动导致的频繁扩缩容。以下是关于冷却时间的详细说明和示例:
冷却时间配置方式
- 默认冷却时间:在创建伸缩组时设置,适用于所有由报警任务触发的伸缩活动。如果未在特定伸缩规则中单独配置冷却时间,默认使用此设置。
- 伸缩规则冷却时间:针对具体伸缩规则可单独配置,优先级高于默认冷却时间。若某规则设置了冷却时间,则该规则触发的活动将遵循此特定冷却时间。
冷却时间计算与生效规则
- 计时开始于最后一次ECS实例加入或移出伸缩组之后。如果伸缩活动中没有ECS实例实际变化,则不启动冷却时间计时。
- 在冷却时间内,仅拒绝由云监控报警任务触发的伸缩活动请求;手动执行的任务、定时任务等非报警触发的操作不受冷却时间限制,可以立即执行。
- 停用后再启用伸缩组,会重置之前的冷却时间计时,即首次伸缩活动不受之前冷却时间的影响。
示例场景
示例 1: - 伸缩组默认冷却时间设为10分钟,某规则(add3)单独设置冷却时间为15分钟。 - 执行add3规则后,增加了3台ECS实例,从最后一台实例加入开始,接下来15分钟内,该伸缩组不会响应云监控报警任务发起的扩缩容请求。
示例 2: - 伸缩组默认冷却时间10分钟,规则remove1未单独设置冷却时间。 - 18:00执行remove1规则,减少1台ECS实例,理论上至18:10前不应接受云监控报警触发的请求。 - 但若在18:02停用并随即在18:05重新启用伸缩组,之前因缩容产生的冷却时间失效,故18:05至18:10间收到的云监控报警触发的请求会被处理。
通过上述信息,用户可以了解到如何配置和理解冷却时间机制,以及其在不同场景下的应用效果,从而更有效地利用阿里云弹性伸缩服务管理资源。