本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon EC2 Auto Scaling 组
Amazon EC2 Auto Scaling 组包含一组亚马逊 EC2 实例,出于自动扩展和管理的目的,这些实例被视为逻辑分组。另外,自动扩缩组让您能够使用 Amazon EC2 Auto Scaling 功能,如运行状况检查替换和扩展策略。保持 Auto Scaling 组中的实例数量和自动扩展都是 Amazon EC2 Auto Scaling 服务的核心功能。
为 Auto Scaling 组使用区域移动
可使用以下方法之一启动可用区转移。
要启动可用区转移,请参阅启动、更新或取消可用区转移。
自动扩缩组可用区转移的工作原理
假设有一个包含以下可用区的自动扩缩组:
us-east-1aus-east-1bus-east-1c
您注意到 us-east-1a 中出现故障并启动可用区转移。在 us-east-1a 中启动可用区转移时,会出现以下行为。
横向扩展 — Auto Scaling 会在运行状况良好的可用区(
us-east-1b和us-east-1c)中启动所有新的容量请求。动态扩展 — Auto Scaling 可阻止扩展策略减少所需的容量。Auto Scaling 不会阻止扩展策略增加所需容量。
实例刷新 — Auto Scaling 会延长在活动分区转移期间延迟的任何实例刷新过程的超时时间。
选择受损可用区运行状况检查行为 运行状况检查行为 替换运行状况不佳 所有可用区( us-east-1a、us-east-1b和us-east-1c)中显示运行状况不佳的实例将被替换。忽略运行状况不佳 us-east-1b和us-east-1c中显示运行状况不佳的实例将被替换。可用区中的实例不会被有效的分区移动 (us-east-1a) 所取代。
使用可用区转移的最佳实践
要在使用可用区转移时保持应用程序的高可用性,建议遵循以下最佳实践。
-
监控 EventBridge 通知以确定何时出现持续的可用区受损事件。有关更多信息,请参阅使用 EventBridge自动扩展 Amazon EC2 自动扩展。
-
使用具有适当阈值的扩缩策略,确保容量足以应对丢失一个可用区这一情况。
-
设置运行状况良好的百分比至少为 100% 的实例维护策略。进行这种设置之后,Auto Scaling 会等待新实例准备就绪,然后终止运行状况不佳的实例。
对于预缩放客户,我们还建议采取以下措施:
-
选择忽略运行状况不佳作为受影响可用区的运行状况检查行为,因为在发生问题事件期间无需更换运行状况不佳的实例。
-
在 ARC 中为自动扩缩组使用可用区转移。中的分区自动转移功能 Amazon 应用程序恢复控制器 (ARC) 允许在 AWS 检测 AWS 到可用区损坏时将资源的流量转移出可用区。有关更多信息,请参阅 ARC 中的可用区自动转移。
对于使用已禁用跨区域功能的负载均衡器的客户,我们还建议采取以下措施:
-
在可用区分配中使用仅均衡。
-
如果您在 Auto Scaling 组和负载均衡器上都使用分区移动,请务必先取消您的 Auto Scaling 组的分区移动。然后,等待所有可用区的容量实现均衡,再取消对负载均衡器的可用区转移。
-
由于当您启用分区转移并使用跨区域禁用的负载均衡器时,可能会出现容量不均衡,因此 Auto Scaling 具有额外的验证。如果您遵循最佳实践,则可以通过选中 AWS 管理控制台 或中的复选框来确认这种可能性
AttachTrafficSources。skip-zonal-shift-validationCreateAutoScalingGroupUpdateAutoScalingGroup