什么是 Amazon Batch? - Amazon Batch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

什么是 Amazon Batch?

借助 Amazon Batch,您可以在 Amazon Web Services 云上运行批处理计算工作负载。Batch 计算是开发人员、科学家和工程师访问大量计算资源的常用方式。Amazon Batch与传统的批量计算软件类似,消除了配置和管理所需基础架构的无差别繁重工作。此服务可以有效地预配置资源以响应提交的作业,以便消除容量限制、降低计算成本和快速交付结果。

作为一项完全托管的服务,Amazon Batch借助,您可以运行任何规模的批处理计算工作负载。Amazon Batch自动配置计算资源,并根据工作负载的数量和规模优化工作负载分配。与Amazon Batch,无需安装或管理批量计算软件,因此您可以将时间集中在分析结果和解决问题上。

Amazon Batch 的组成部分

Amazon Batch借助,您可以借助,您可以在区域内的多个可用区上运行批处理作业。您可以在新的或现有的 VPC 中创建 Amazon Batch 计算环境。在计算环境就绪并与任务队列关联后,您可以定义任务定义,以指定要运行任务的 Docker 容器映像。容器映像将在容器注册表中存储和提取,可能存在于您的 Amazon 基础设施的内部或外部。

任务

提交到 Amazon Batch 的工作单位 (如 shell 脚本、Linux 可执行文件或 Docker 容器映像)。它有一个名字,并作为容器化应用程序运行Amazon Fargate或计算环境中的 Amazon EC2 资源,使用您在任务定义中指定的参数。任务可以按名称或按 ID 引用其他任务,并且可以依赖于其他任务的成功完成。有关更多信息,请参阅 任务

作业定义

作业定义指定如何运行作业。您可以将作业定义视为作业中资源的蓝图。您可以为您的任务提供 IAM 角色以提供对其他任务的访问权限Amazon资源。您还可以指定内存和 CPU 要求。任务定义还可以控制容器属性、环境变量和持久性存储的挂载点。任务定义中的许多规范可以通过在提交单个任务时指定新值来覆盖。有关更多信息,请参阅Job 定义

作业队列

当你提交Amazon Batch作业,你将其提交到特定的作业队列中,该作业将一直驻留在那里,直到它被安排到计算环境中。您可以将一个或多个计算环境与作业队列关联。您还可以为这些计算环境分配优先级值,甚至可以为作业队列本身分配优先级值。例如,您可以有一个高优先级队列供您提交对时间敏感的作业,而一个低优先级队列用于在计算资源较便宜时可以随时运行的作业。

计算环境

计算环境是一组用于运行任务的托管或非托管计算资源。使用托管计算环境,您可以在多个详细级别上指定所需的计算类型(Fargate 或 EC2)。您可以设置使用特定类型的 EC2 实例的计算环境,例如特定模型c5.2xlarge要么m5.10xlarge. 或者,您可以选择只指定要使用最新的实例类型。您还可以指定环境的 vCPUs 的最小数量、所需数量和最大数量,以及您愿意为竞价型实例支付的金额占按按需实例价格和目标 VPC 子网集合的百分比。Amazon Batch根据需要高效启动、管理和终止计算类型。您还可以管理自己的计算环境。因此,您负责在 Amazon ECS 集群中设置和扩展实例Amazon Batch为你创造。有关更多信息,请参阅 计算环境

入门

通过在 Amazon Batch 控制台中创建任务定义、计算环境和任务队列来开始使用 Amazon Batch。

这些区域有:Amazon Batch首次运行向导允许您选择创建计算环境和作业队列以及提交示例 Hello World 作业。如果你已经有了 Docker 镜像,你想在里面启动Amazon Batch,您可以使用该图像创建任务定义,然后将其提交到队列中。有关更多信息,请参阅开始使用 Amazon Batch