Amazon A EC2 uto Scaling 实例生命周期 - Amazon A EC2 uto Scaling
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon A EC2 uto Scaling 实例生命周期

Auto Scaling 组中的EC2实例的路径或生命周期与其他EC2实例的路径或生命周期不同。生命周期从 Auto Scaling 组启动实例并将其投入使用时开始。生命周期在您终止实例或 Auto Scaling 组禁用实例并将其终止时结束。

注意

一旦启动实例,您就需要为实例付费,包括尚未将实例投入使用的时间。

下图显示了 Amazon A EC2 uto Scaling 生命周期中实例状态之间的转换。

Auto Scaling 组中实例的生命周期。

扩展

以下横向扩展事件指示 Auto Scaling 组启动EC2实例并将其附加到该组:

发生扩展事件时,Auto Scaling 组会使用其分配的启动模板启动所需数量的EC2实例。这些实例最初处于 Pending 状态。如果您向 Auto Scaling 组添加生命周期挂钩,则可在此处执行自定义操作。有关更多信息,请参阅 生命周期钩子

当每个实例都完成配置并通过 Amazon 运行EC2状况检查后,它会附加到 Auto Scaling 组并进入InService状态。针对 Auto Scaling 组的所需容量对实例进行计数。

如果您的 Auto Scaling 组配置为接收来自 Elastic Load Balancing 负载均衡器的流量,则 Amazon A EC2 uto Scaling 会在将您的实例标记为之前自动向该负载均衡器注册该实例InService

以下总结了向负载均衡器注册实例以进行横向扩展事件的步骤。

向外扩展事件的高级示意图。

已投入使用的实例

实例将保持 InService 状态,直至出现下列情况之一:

缩小

以下缩减事件指示 Auto Scaling 组从该组中分离EC2实例并将其终止:

您必须为所创建的每个横向扩展事件创建一个相应的缩减事件。这有助于确保分配给您的应用程序的资源与对这些资源的需求尽可能相符。

发生缩减事件时,Auto Scaling 组会终止一个或多个实例。Auto Scaling 组使用其终止策略来确定要终止的实例。正在从自动扩缩组中终止的实例将进入 Terminating 状态,且无法重新将其投入使用。

如果您的 Auto Scaling 组配置为接收来自弹性负载平衡负载均衡器的流量,则 Amazon A EC2 uto Scaling 会自动从负载均衡器中注销正在终止的实例。取消注册实例可确保将所有新请求重定向到负载均衡器目标组中的其他实例,同时允许与该实例的现有连接继续,直到取消注册延迟到期。

如果您向自动扩缩组添加生命周期挂钩,则可在终止中的实例上执行自定义操作。有关更多信息,请参阅 生命周期钩子。最后,实例将完全终止并进入 Terminated 状态。

以下总结了为缩减事件向负载均衡器注销实例的步骤。

缩减事件的高级示意图。

分离实例

您可以从 Auto Scaling 组中分离实例。分离实例后,您可以独立于 Auto Scaling 组管理实例或者将实例附加到其他 Auto Scaling 组。

有关更多信息,请参阅 从您的 Auto Scaling 组中分离或附加实例

附加实例

您可以将符合特定条件的正在运行的EC2实例附加到您的 Auto Scaling 组。在附加实例后,将该实例作为 Auto Scaling 组的一部分进行管理。

有关更多信息,请参阅 从您的 Auto Scaling 组中分离或附加实例

生命周期钩子

您可以将生命周期挂钩添加到 Auto Scaling 组,以便在实例启动或终止时执行自定义操作。

当 Amazon A EC2 uto Scaling 响应扩展事件时,它会启动一个或多个实例。这些实例最初处于 Pending 状态。如果您已将一个 autoscaling:EC2_INSTANCE_LAUNCHING 生命周期挂钩添加到您的 Auto Scaling 组,则实例将从 Pending 状态转换为 Pending:Wait 状态。完成生命周期操作后,实例将进入 Pending:Proceed 状态。在完全配置实例后,实例将附加到 Auto Scaling 组并进入 InService 状态。

当 Amazon A EC2 uto Scaling 响应缩减事件时,它会终止一个或多个实例。这些实例将从 Auto Scaling 组中分离并进入 Terminating 状态。如果您已将一个 autoscaling:EC2_INSTANCE_TERMINATING 生命周期挂钩添加到您的 Auto Scaling 组,则实例将从 Terminating 状态转换为 Terminating:Wait 状态。完成生命周期操作后,实例将进入 Terminating:Proceed 状态。在完全终止实例后,实例将进入 Terminated 状态。

有关更多信息,请参阅 Amazon EC2 Auto Scaling 生命周期钩子

进入和退出备用状态

可以将任何处于 InService 状态的实例置于 Standby 状态。这使您能够终止对实例的使用,排查实例的问题或对实例进行更改,然后重新将实例投入使用。

处于 Standby 状态的实例继续由 Auto Scaling 组管理。但是,在将这些实例重新投入使用前,它们不是您的应用程序的有效部分。

有关更多信息,请参阅 临时从 Auto Scaling 组中移除实例