AWS CodeDeploy 是否可与 ECS、AutoScaling 和容量提供程序一起使用?

Is AWS CodeDeploy usable with ECS, AutoScaling, and a capacity provider?

首先我会稍微解释一下我的情况。

我正在使用 AWS 控制台(网站)来完成我将要谈论的所有事情。我目前正在主持一个 API 的新项目。我想要一个可以自动适应当前流量的解决方案,我希望部署尽可能简单

为了托管我的 API 和其他服务,我使用 ECS 集群 ,目前只有一项服务(API)。还有一个附加到它的 ALB(应用程序负载平衡器)。该服务可以启动 1 到 X 个任务,其中 X 是 Auto Scaling 可以启动的最大实例数。 Auto Scaling 在这里是为了随着对 ALB 的请求数量的增加而调整实例数量。

只是旁注,严格来说每个实例一个任务。因此,有 5 个实例意味着总共有 5 个任务。

据我了解,要将 ECS 任务正确放置在将自动添加或删除的实例之间,它需要容量提供程序。

因为我希望部署简单,所以我首先选择了 CodeBuild 来做一些事情(比如为我的 API 构建一个可重用的自定义 docker 图像)。我发现 CodePipeline 还可以以某种方式包装“构建”过程和“部署”过程。但是它需要一个CodeDeploy已经配置好,所以我尝试创建一个以ECS为计算平台。

现在的问题是CodeDeploy需要ECS服务才能使用蓝/绿部署。要启用Blue / Green deployment,似乎不允许我们拥有Capacity Provider。

“使用 blue/green 部署类型时 不支持 集群容量提供程序。” Source

我发现一个主题似乎使用 Auto Scaling 作为 CodeDeploy 应用程序的计算平台 Source

但这里他们只使用 EC2,而不使用 ECS...

那么,还有其他方法可以实现我想要的吗?

遵循此文档:https://docs.aws.amazon.com/codedeploy/latest/userguide/tutorial-ecs-deployment.htmlCodeDeploy 当前不支持 Amazon ECS 容量提供程序

根据 thread git,ECS 服务现在 支持容量提供程序的蓝/绿部署