什么是 AWS Auto Scaling? - AWS Auto Scaling
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

什么是 AWS Auto Scaling?

通过使用 AWS Auto Scaling,您可以在几分钟内为作为您的应用程序的一部分的 AWS 资源配置自动扩展。AWS Auto Scaling 控制台提供了一个单一的用户界面,可以统一管理多个 AWS 服务的自动扩展功能。您可以为单个资源或整个应用程序配置自动扩展。

利用 AWS Auto Scaling,您可以通过扩展计划来配置和管理资源的扩展。扩展计划使用动态扩展和预测式扩展来自动扩展应用程序的资源。这将确保您添加处理应用程序上的负载所需的计算能力然后在不再需要它时进行删除。扩展计划可让您选择扩展策略以定义如何优化资源利用率。您可以针对可用性、成本或这两者的平衡进行优化。此外,您还可以创建自定义扩展策略。

AWS Auto Scaling 对流量存在每日或每周变化的应用程序很有用,这包括:

  • 周期性流量,例如正常营业时间内的高资源利用率和夜间的低资源利用率

  • 打开和关闭工作负载模式,例如批处理、测试或定期分析

  • 可变的流量模式,例如具有峰值增长的营销活动

AWS Auto Scaling 的功能

使用 AWS Auto Scaling 可自动扩展以下资源:

  • Amazon EC2 Auto Scaling 组:启动或终止 Auto Scaling 组中的 EC2 实例。

  • Amazon EC2 Spot 队列请求:从 Spot 队列请求启动或终止实例,或自动替换由于价格或容量原因而中断的实例。

  • Amazon ECS:根据负载变化上调或下调 ECS 服务的预期数量。

  • Amazon DynamoDB:启用 DynamoDB 表或全局二级索引以增加或减少其预置的读取和写入容量,从而不受限制地处理流量增加。

  • Amazon Aurora:动态调整为 Aurora 数据库集群预配置的 Aurora 只读副本数以处理活动连接或工作负载的变化。

当前可用的扩展功能是动态扩展和预测式扩展。

动态扩展将为您的应用程序中的可扩展资源创建目标跟踪扩展策略。这使您的扩展计划可以根据需要为每个资源增加和删除容量,从而将资源利用率保持在指定的目标值。提供的默认扩展指标基于用于自动扩展的最常用的指标。

预测式扩展的工作方式:

  • 负载预测:AWS Auto Scaling 将分析指定负载指标的长达 14 天的历史记录并预测接下来两天的需求。此数据以一小时的间隔提供并且每天都会更新。

  • 计划的扩展操作:AWS Auto Scaling 将计划主动增加和删除资源容量的扩展操作以反映负载预测。在计划的时间,AWS Auto Scaling 将使用由计划的扩展操作指定的值更新资源的最小容量。其目的是将资源利用率保持在扩展策略指定的目标值。如果您的应用程序需要的容量大于预期,则可以使用动态扩展来增加额外的容量。

  • 最大容量行为:每个资源都有一个最小容量限制和一个最大容量限制,计划的扩展操作指定的值应该在此限制之间。但是,您可以控制在预测容量大于最大容量时应用程序是否可以添加超出其最大容量的资源。

目前,预测式扩展仅适用于 Amazon EC2 Auto Scaling 组。

定价

AWS Auto Scaling 功能由 Amazon CloudWatch 指标和警报启用。如果已支付 CloudWatch 和您使用的其他 AWS 资源的服务费,这些功能将免费提供。

如何开始

有关 AWS Auto Scaling 的简介,我们建议您熟悉以下内容:

  • 扩展计划的工作方式—它介绍了扩展策略、动态扩展和预测式扩展的概念以帮助您熟悉 AWS Auto Scaling。

  • AWS Auto Scaling FAQs产品页面上的常见问题提供了有关此服务的好处的信息。—

  • 中的 区域和终端节点 AWS General Reference 此表显示 的区域可用性。—AWS Auto Scaling

  • Amazon EC2 Auto Scaling 用户指南—本指南向您介绍如何创建和管理要在扩展 Amazon EC2 实例的队组时使用的 Auto Scaling 组。

  • Application Auto Scaling 用户指南—本指南为您提供了与超出 Amazon EC2 的容量自动扩展资源相关的主题和资源。当您需要特定于扩展 Amazon EC2 之外的单个可扩展资源或服务的更多信息时,您可以访问本指南中的技术文档。

要开始使用,请完成 开始使用 AWS Auto Scaling中的 AWS Auto Scaling 入门教程。

借助 AWS CloudFormation,您可以使用模板(JSON 或 YAML 格式的文本文件)对相关 AWS 资源的集合进行建模和预置。您可以使用 AWS CloudFormation 的示例模板或创建您自己的模板来创建 AWS 资源以及应用程序运行时所需的任何相关依赖项或运行时参数。您还可以使用 AWS CloudFormation 创建扩展计划的模板。

Amazon CloudWatch 是用于 AWS 云资源和您在 AWS 上运行的应用程序的监控服务。CloudWatch 可让您收集和跟踪指标、日志文件和使用警报自动应对应用程序中的变更。您还可使用 AWS CLI 或 API 将自己的自定义指标发送到 CloudWatch。