如何解决 Elastic Beanstalk 中与扩展触发器有关的问题?

1 分钟阅读
0

我的 AWS Elastic Beanstalk 环境没有按照我预期的方式进行扩展。

解决方法

先决条件:

  • 您的 Amazon Elastic Compute Cloud(Amazon EC2)实例有足够的容量,可以在 AWS 区域进行扩展。此容量基于您在自动扩缩组配置中定义的最大实例数。
  • 您的冷却时间取决于应用程序的安装和配置要求。
  • 您使用默认的 Amazon CloudWatch 指标Locust 进行负载测试,并确定了启动扩展的最佳指标。

要配置扩展触发器,请使用 Elastic Beanstalk 控制台或选项设置。

在 Elastic Beanstalk 控制台中配置扩展触发器

  1. 打开 Elastic Beanstalk 控制台,然后选择您的环境。
  2. 在导航窗格中,选择配置
  3. 对于容量类别,选择修改
  4. 扩展触发器部分,选择您的触发器选项,然后选择应用

注意: Elastic Beanstalk 为 aws:autoscaling:trigger 命名空间中的自动扩缩设置提供配置选项。此命名空间中的设置按其应用到的资源组织。

使用选项设置配置扩展触发器

使用选项设置中的 .ebextensions 修改您的扩展配置。

要访问用于配置扩展触发器的配置文件,请参阅 GitHub 网站上的autoscaling-triggers-customize.config

以下示例配置文件修改了基于 CPU 利用率的扩展触发器。如果所有实例的 CPU 利用率在三个连续的两分钟周期内均超过 80%,会向自动扩缩组添加一个实例。如果同一周期内所有实例的 CPU 利用率均低于 20%,则会从自动扩缩组中移除一个实例。

option_settings:  aws:autoscaling:trigger:
    MeasureName: CPUUtilization
    Statistic: Average
    Unit: Percent
    Period: '2'
    EvaluationPeriods: '3'
    UpperThreshold: '80'
    UpperBreachScaleIncrement: '1'
    LowerThreshold: '20'
    LowerBreachScaleIncrement: '-1'

相关信息

自动扩展触发器

AWS 官方
AWS 官方已更新 1 年前