本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
设置自动扩缩组的运行状况检查宽限期
如果 Amazon EC2 Auto Scaling 运行状况检查确定某个 InService
实例运行不正常,则会将其终止并启动一个新的替换实例。运行状况检查宽限期指定了因新实例运行状况不正常而将其终止之前继续运行的最短时间(以秒为单位)。
一个示例用例可能是要求 Amazon EC2 Auto Scaling 避免在 Elastic Load Balancing 运行状况检查失败且原因是实例仍在初始化时采取行动。Elastic Load Balancing 运行状况检查并行运行,从实例向负载均衡器注册时开始。通过设置宽限期,可以防止 Amazon EC2 Auto Scaling 在您新启动的实例进入 InService
状态后,但没有立即通过这些运行状况检查时,不必要地将这些实例标记为 Unhealthy
并予以终止。
在控制台中,创建自动扩缩组时的运行状况检查宽限期默认为 300 秒。使用 Amazon CLI 或 SDK 创建自动扩缩组时,默认值为 0 秒。值为 0 将关闭运行状况检查宽限期。
如果将该值设置过高,会降低 Amazon EC2 Auto Scaling 运行状况检查的效果。如果您为实例启动使用了生命周期挂钩,则可以将运行状况检查宽限期设置为 0。借助生命周期挂钩,Amazon EC2 Auto Scaling 提供了一种方法,可确保实例始终在完成初始化之后才会进入 InService
状态。有关更多信息,请参阅 Amazon EC2 Auto Scaling 生命周期钩子。
宽限期适用于以下实例:
-
新启动的实例
-
处于待机状态后重新投入运行的实例
-
您手动附加到组的实例
重要
在运行状况检查宽限期内,如果 Amazon EC2 Auto Scaling 检测到某个实例不再处于 Amazon EC2 running
状态,则会立即将该实例标记为Unhealthy
并予以替换。例如,假设您停止了自动扩缩组中的某个实例,则该实例会被标记为Unhealthy
并被替换。
设置组的运行状况检查宽限期
您可以为新的和现有的自动扩缩组设置运行状况检查宽限期。
注意
我们强烈建议同时为您的自动扩缩组设置默认实例预热时间。有关更多信息,请参阅 为 Auto Scaling 组设置原定设置实例预热。