暂停进程如何影响其他进程 - Amazon EC2 Auto Scaling

暂停进程如何影响其他进程

以下各节描述了单独暂停不同进程时发生的情况。

Launch 已暂停

  • AlarmNotification 仍处于活动状态,但是您的自动扩缩组无法为超限警报启动横向扩展活动。

  • ScheduledActions 处于活动状态,但是您的自动扩缩组无法为出现的任何计划操作启动横向扩展活动。

  • AZRebalance 停止对组进行重新平衡。

  • ReplaceUnhealthy 继续终止运行不正常的实例,但不启动替换实例。Launch 过程恢复后,Amazon EC2 Auto Scaling 会立即替换它在 Launch 被暂停期间终止的所有实例。

  • InstanceRefresh 不会替换实例。

Terminate 已暂停

  • AlarmNotification 仍处于活动状态,但是您的自动扩缩组无法为超限警报启动横向缩减活动。

  • ScheduledActions 处于活动状态,但是您的自动扩缩组无法为出现的任何计划操作启动横向缩减活动。

  • AZRebalance 仍处于活动状态,但不能正常运行。它可以启动新实例而不终止旧实例。这可能导致您的 Auto Scaling 组增加到比最大大小超出百分之十,因为在重新平衡活动期间允许短时间内发生这种情况。您的 Auto Scaling 组可以保持超出其最大大小,直到您恢复 Terminate 进程。

  • ReplaceUnhealthy 处于非活动状态但未 HealthCheck。当 Terminate 恢复后,ReplaceUnhealthy 进程将立即开始运行。如果任何实例在 Terminate 暂停期间被标记为运行状况不佳,将立即替换它们。

  • InstanceRefresh 不会替换实例。

AddToLoadBalancer 已暂停

  • Amazon EC2 Auto Scaling 会启动实例,但不会将实例添加到负载均衡器目标组或经典负载均衡器。在您恢复 AddToLoadBalancer 进程后,该进程也会在启动实例时将其添加到负载均衡器。不过,它不会添加在此流程暂停时启动的实例。您必须手动注册这些实例。

AlarmNotification 已暂停

  • 当超出 CloudWatch 警报阈值时,Amazon EC2 Auto Scaling 不会调用扩缩策略。当您恢复 AlarmNotification 时,Amazon EC2 Auto Scaling 考虑具有当前违反的警报阈值的策略。

AZRebalance 已暂停

  • Amazon EC2 Auto Scaling 不会在某些事件发生后尝试重新分配实例。不过,如果发生横向扩展或横向缩减事件,扩缩进程仍会尝试平衡可用区。例如,在扩展期间,它会在实例最少的可用区中启动实例。如果组变得不平衡,同时 AZRebalance 处于暂停状态并且您恢复它,Amazon EC2 Auto Scaling 会尝试重新平衡组。它先调用 Launch,然后调用 Terminate

  • AZRebalance 暂停时,暖池不受影响。

HealthCheck 已暂停

  • Amazon EC2 Auto Scaling 停止在 EC2 和 Elastic Load Balancing 运行状况检查后将实例标记为运行状况不佳。您的自定义运行状况检查会继续正常运行。当您暂停 HealthCheck 后,在需要时可以手动设置组中实例的运行状况,并由 ReplaceUnhealthy 替换它们。

InstanceRefresh 已暂停

  • Amazon EC2 Auto Scaling 停止因实例刷新而替换实例。如果正在刷新实例,则会暂停操作而不将其取消。

ReplaceUnhealthy 已暂停

  • Amazon EC2 Auto Scaling 停止替换标记为运行状况不佳的实例。未通过 EC2 或 Elastic Load Balancing 运行状况检查的实例仍会被标记为运行状况不佳。一旦您恢复 ReplaceUnhealthy 进程,Amazon EC2 Auto Scaling 会替换在此进程暂停时标记为运行状况不佳的实例。ReplaceUnhealthy 进程会首先调用 Terminate,然后调用 Launch

ScheduledActions 已暂停

  • Amazon EC2 Auto Scaling 不会运行计划在暂停期间运行的计划操作。当您恢复 ScheduledActions 后,Amazon EC2 Auto Scaling 仅考虑其计划时间尚未过期的计划操作。

其它注意事项

此外,在暂停 LaunchTerminate 时,以下功能可能无法正常运行:

  • 最大实例生命周期:暂停 LaunchTerminate 时,最大实例生命周期功能无法替换任何实例。

  • 竞价型实例中断:如果 Terminate 已暂停且您的自动扩缩组包含竞价型实例,这些实例在竞价型容量不再可用的情况下仍可终止。暂停 Launch 时,Amazon EC2 Auto Scaling 无法从其他竞价型实例池启动替换实例,也无法在同一竞价型实例池再次可用时启动替换实例。

  • 容量再平衡:如果 Terminate 已暂停且您使用容量再平衡处理竞价型实例中断,则当竞价型容量不再可用时,Amazon EC2 竞价型服务仍可以终止实例。如果暂停 Launch,Amazon EC2 Auto Scaling 无法从其他竞价型实例池启动替换实例,也无法在同一竞价型实例池再次可用时启动替换实例。

  • 附加和分离实例:暂停 LaunchTerminate 时,您可以分离附加到自动扩缩组的实例,但在暂停 Launch 期间,您无法将新实例附加到该组。

  • 备用实例:暂停 LaunchTerminate 时,您可以将实例置于 Standby 状态,但在暂停 Launch 期间,您无法将处于 Standby 状态的实例恢复为服务状态。