自动缩放您的 Elastic Beanstalk 环境实例 - AWS Elastic Beanstalk

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

自动缩放您的 Elastic Beanstalk 环境实例

本主题介绍如何自定义 Auto Scaling 功能以管理 Elastic Beanstalk 环境的工作负载。您可以使用 Elastic Beanstalk 控制台、命名空间配置选项AWS CLI或 EB CLI 为您的环境配置 Auto Scaling。

负载平衡环境或单实例环境

您的 AWS Elastic Beanstalk 环境包括一个 A uto Scaling 组,用于管理您的环境中的 Amazon EC2 实例。在单实例环境中,Auto Scaling 组可确保始终有一个正在运行的实例。在负载均衡的环境中,您将为组配置一系列要运行的实例,Auto Scaling 将根据负载按需添加或删除实例。

EC2 实例配置

Auto Scaling 组还会应用您的配置选择来配置和管理您的环境中的 EC2 实例。您可以修改 EC2 配置以更改实例类型、密钥对、Amazon Elastic Block Store (Amazon EBS) 存储空间以及其他只有在启动实例时才能配置的设置。

按需实例和竞价型实例

作为一种选择,Elastic Beanstalk 可以在您的环境中包含竞价型实例,并与按需实例一起管理这些实例。您可以通过启用容量再平衡将 Amazon A EC2 uto Scaling 配置为监控和自动响应影响竞价型实例可用性的更改。您还可以配置 Auto Scaling 服务用于为您的环境配置竞价型实例。现货分配策略

启用 Spot 实例时所需的权限

启用竞价型实例请求需要使用 Amazon EC2 启动模板。当您在环境创建或更新期间配置此功能时,Elastic Beanstalk 会尝试将您的环境配置为使用 EC2 亚马逊启动模板(如果环境尚未使用这些模板)。在这种情况下,如果您的用户策略缺乏必要的权限,则创建或更新环境可能会失败。因此,我们建议您使用托管用户策略,或者将所需的权限添加到自定义策略中。有关所需权限的详细信息,请参阅 启动模板要求的权限

Auto Scaling 触发

Auto Scaling 组使用两个 Amazon CloudWatch 警报来触发扩展操作。当每个实例的平均出站网络流量在 5 分钟时间段内高于 6 MiB 或低于 2 MiB 时,默认触发器将扩展。要高效使用 Auto Scaling,请根据您的应用程序、实例类型和服务要求配置触发器。您可以基于若干个统计数据 (包括延迟、磁盘 I/O、CPU 使用率和请求计数) 来进行扩展。

安排 Auto Scaling 操作

要在可预测的高峰流量期间优化您的环境 EC2 对 Amazon 实例的使用,请将 Auto Scaling 组配置为按计划更改其实例数量。您可以安排每天或每周重复一次的组配置更改,或安排一次性更改,以便为可为网站带来大量流量的营销活动做好准备。

Auto Scaling 运行状况检查

Auto Scaling 会监控其启动的每个亚马逊 EC2 实例的运行状况。如果任何实例出现意外终止,Auto Scaling 会检测该终止,并启动替代实例。要配置组以使用负载均衡器的运行状况检查机制,请参阅你的 Elastic Beanstalk 环境的 Auto Scaling 运行状况检查设置