我一直在玩我的自动缩放组的配置,但我不完全了解这两个是如何工作的。
正如亚马逊所说Health Check Grace Period
指的是:
Auto Scaling 在检查实例运行状况之前等待的时间长度。宽限期从实例投入使用时开始。
虽然Default Cooldown
指的是:
扩展活动完成后,另一个活动可以开始之前的秒数。这也称为冷却时间。详细了解冷却时间。
因此,假设我有一个规则,当 CPU 消耗超过 50% 时横向扩展,并且Health Check Grace Period = 300
和Default Cooldown = 100
。如果我在第 0 秒启动实例,AWS 需要多长时间才能检查扩展组的 CPU 消耗?而且,启动新实例需要多长时间?启动前的时间是 400 秒,其他 100 秒是组再次检查 CPU 的时间吗?谢谢。
运行状况检查宽限期和默认冷却时间是不同的概念。运行状况检查宽限期适用于单个实例,而默认冷却时间适用于弹性伸缩组。
如果实例因 CPU 高于 50% 而在秒 0 启动,则此新实例将获得 300 秒的宽限期以恢复正常。如果在 300 秒后运行正常,它将继续运行,否则将终止。
如果 CPU 在 100 秒时仍高于 50%,则弹性伸缩组将启动一个新实例(上一次伸缩操作发生在 100 秒前 = 冷却时间)。因此,您的问题的答案是 100 秒,直到启动新实例。
另请注意,默认情况下,Amazon EC2 Auto Scaling 在手动扩展活动期间不遵守冷却时间(= 设置所需容量),并且如果实例运行状况不佳,Auto Scaling 组不会等待冷却期完成,然后再替换运行状况不佳的实例。