AWS ECS 中的批处理系统与 AWS Batch 有何不同?

Posted

技术标签:

【中文标题】AWS ECS 中的批处理系统与 AWS Batch 有何不同?【英文标题】:How is a batch processing system in AWS ECS different from AWS Batch? 【发布时间】:2018-11-12 21:11:41 【问题描述】:

我有一个批处理系统,每天在固定时间运行 5 小时。使用 AWS Batch,我可以安排创建所需 EC2 实例的作业来执行该作业并终止实例。但是使用 ECS,我可以根据我的要求自动启动和终止 EC2 实例吗?

【问题讨论】:

【参考方案1】:

只要您将计算环境创建为 Managed Compute Environment 而不是非托管的,就可以使用 AWS Batch 完成这种自动缩减。

但是,在 ECS 中使用任务意味着EC2 resources must be cleaned up and deleted manually。它可以内置到您的应用程序的一部分中,也可以使用 CloudFormation 进行管理,但最终缩减这些资源将是您的责任。

【讨论】:

如果我使用 AWS Fargate 会怎样?看起来它可以管理服务器部分,我只需要使用容器。 我认为 AWS fargate 将解决您提到的目的。但是对于 ECS 实例的资源分配是有限的。据我所知,这将限制 ECS 用于长期批处理作业。

以上是关于AWS ECS 中的批处理系统与 AWS Batch 有何不同?的主要内容,如果未能解决你的问题,请参考以下文章

将弹性文件系统挂载到 AWS Batch Compute Environment

AWS ECS 容量提供商

Terraform 中的 ECS 服务如何连接到 AWS 自动缩放组

AWS — AWS ECS

如何使用 docker compose up 与 ECS 上下文设置 AWS 区域

Netflix Zuul/Ribbon/Eureka 与 AWS ELB/ALB 和 ECS