设计可扩展的 Fargate 设置?

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

目前我正在做一个项目,我的设置看起来像这样。

  1. 我在 S3 中一次删除 500 个文件。
  2. S3 事件触发 Lambda。
  3. Lambda 提交一个 Fargate ECS 任务,其中 AI 作业运行以进行预测。

我在这个架构中遇到了几个问题。

  1. 当我转储超过750个文件时,我也得到这个错误:
You’ve reached the limit on the number of vCPUs you can run concurrently

已通过请求增加配额来解决这个问题。

  1. 对于我的一些任务,我得到这个错误:
Capacity is unavailable at this time. Please try again later or in a different availability zone

为了解决这个问题,我扩大了规模,现在正在跨两个访问区域运行我的任务。 us-west-1a 和 us-west-1c。与具有 4 个可用区的 us-west-2 不同,us-west-1 只有 2 个可用区。现在,如果我一次处理 500 个任务,它就可以工作。但是,如果我一次转储750个文件,我仍然会遇到上述错误。

我在这里有以下关于架构的问题: 是否有可靠的方法来设置 Fargate 架构? - 我相信如果我可以将我的任务设置为在所有区域运行,us-west-1、us-west-2、us-east-1、us-east2;我们应该好得多。然而,这感觉不像是可以在未来 10 年内扩展的东西。毕竟,我可以继续添加多少个区域? AWS 将对他们可以备用的 Fargate 实例有上限。

在这种情况下,下一个好的解决方案是拥有一个 Auto Scaling 组,然后将任务部署为 EC2 类型。然而,这在这里并不是很划算。我同意这里的成本可靠性权衡,但我想知道是否有办法使 Fargate 可靠地扩展?

amazon-s3 aws-lambda amazon-ecs aws-fargate
© www.soinside.com 2019 - 2024. All rights reserved.