自动触发AWS Autoscale

问题描述 投票:0回答:1

我在 AWS 中有一个自动缩放 Web 应用程序。当我不使用它时,我使用 Lambda(使用 Cloudwatch)自动终止 EC2 实例。但我找不到自动结构来再次触发它。

我已经尝试过了。

  • 我尝试使用 Cloudwatch,但我必须在第一个请求后等待。它不适合我的设置。
  • 我通过将来自端口 80 的请求重定向到 Lambda 来触发 ELB,然后将我的主项目重定向到 443,但它看起来不太健康。

如果您有其他建议或我可以使用的服务,可以分享吗?

amazon-web-services amazon-elb autoscaling
1个回答
0
投票

如果您希望“立即响应”流量,那么您“不应该扩展到零实例”。启动或启动实例需要时间,这可能无法满足您的要求。因此,您应该始终保持至少一个实例始终运行。 可以创建可快速添加到 Auto Scaling 组的实例的“热池”。这些实例可以保持在停止或休眠状态以降低成本,但它们仍然需要时间来启动。请参阅:Amazon EC2 Auto Scaling 的温池 - Amazon EC2 Auto Scaling

典型的模式是: 创建一个横向扩展警报

,可以检测 Auto Scaling 组中的当前实例何时高于所需容量。使用警报触发 Auto Scaling 策略,将另一个实例添加到组中。

创建一个
    缩减警报
  • ,可以检测资源何时过多,这意味着您为应用程序支付了过多费用。使用警报触发 Auto Scaling 策略,从组中删除实例。您可以为 Auto Scaling 组指定一个最小大小,例如指定应始终至少有一个实例。
  • 一般规则是“快速扩展,缓慢扩展”:
您希望

横向扩展警报能够相当快地响应(例如,基于几分钟内的指标)。但是,请务必小心,因为对使用高峰响应太快可能会增加不需要的容量。这会导致 Auto Scaling 组“抖动”——即添加和删除容量太快。

为了防止波动,请将
    缩减警报
  • 配置为在删除资源之前等待一段时间(例如,使用 15 分钟或更长时间的指标)。拥有一些未充分利用的资源通常比不断添加和删除资源更好,因此在决定缩减规模时要慢慢来。
  • 您提到“我使用 Lambda(使用 CloudWatch)自动终止 EC2 实例”。但是,EC2 Auto Scaling 不使用 Lambda 函数。相反,它使用
  • CloudWatch Alarms 来监控指标,并使用 Auto Scaling 策略
  • 来确定如何响应警报。当然,您可以使用 Lambda 创建自己的自动扩展功能,但您会错过
EC2 Auto Scaling

的许多功能。

© www.soinside.com 2019 - 2024. All rights reserved.