本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建计算环境
您需要先创建计算环境,然后才能在 Amazon Batch 中运行作业。您可以创建托管计算环境,在该环境中根据您的规格Amazon Batch管理环境中的 Amazon EC2 实例或 Amazon Fargate 资源。或者,您可以创建非托管计算环境,在其中处理环境中的 Amazon EC2 实例配置。
重要
以下场景不支持 Fargate Spot 实例:
-
在具有 ARM64 架构的亚马逊 Linux 容器上。
-
Windows containers on Amazon Fargate
在这些情况下,如果将作业提交到仅使用 Fargate Spot 计算环境的作业队列,则作业队列将被阻止。
使用 Amazon Fargate 资源创建托管计算环境
-
通过 https://console.aws.amazon.com/batch/
打开Amazon Batch主机。 -
从导航栏中,选择要使用的 Amazon Web Services 区域。
-
在导航窗格中,选择 Compute environments。
-
选择创建。
-
配置计算环境。
注意
Windows containers on Amazon Fargate作业的计算环境必须至少有一个 vCPU。
-
要进行计算环境配置,请选择 Fargate。
-
对于 “名称”,为您的计算环境指定一个唯一的名称。该名称最多可包含 128 个字符。可以包含大小写字母、数字、连字符(-)和下划线(_)。
-
对于服务角色,选择服务相关角色,允许Amazon Batch服务代表您调用所需的 Amazon API 操作。例如,选择 AWSServiceRoleForBatch。有关更多信息,请参阅Amazon Batch 的服务相关角色权限:
-
(可选)展开标签。要添加标签,请选择 Add tag(添加标签)。然后,输入密钥名称和可选值。选择 Add tag (添加标签)。
-
选择 “下一页”。
-
-
在实例配置部分中:
-
(可选)要使用 Fargate Spot 容量,请打开 Fargate Spot。有关 Fargate Spot 的信息,请参阅使用亚马逊 EC2 Spot 和 fargate_Spot。
-
对于最大 vCPU,请选择计算环境可以扩展到的最大 vCPU 数量,无论作业队列需求如何。
-
选择 “下一页”。
-
-
配置网络。
重要
计算资源需要访问才能与 Amazon ECS 服务端点通信。这可以通过接口 VPC 端点或具有公共 IP 地址的计算资源实现。
有关接口 VPC 端点的更多信息,请参阅 Amazon Elastic Container Service 开发人员指南中的 Amazon ECS 接口 VPC 端点(Amazon PrivateLink)。
如果您没有配置接口 VPC 端点,并且您的计算资源没有公有 IP 地址,必须使用网络地址转换 (NAT) 来提供此访问。有关更多信息,请参阅 Amazon VPC 用户指南中的 。有关更多信息,请参阅创建 VPC:
-
对于虚拟私有云 (VPC) ID,请选择要在其中启动实例的 VPC。
-
对于子网,选择要使用的子网。默认情况下,所选 VPC 中的所有子网都可用。
注意
Fargate 上的 Amazon Batch 目前不支持 Local Zones。有关更多信息,请参阅本地区域、波长区域中的 Amazon ECS 集群以及 Amazon 弹性容器服务开发人员指南。Amazon Outposts
-
对于 Security groups,选择要附加到实例的安全组。默认情况下,将选择您的 VPC 的默认安全组。
-
选择 “下一页”。
-
-
要查看,请查看配置步骤。如果需要进行更改,请选择 Edit(编辑)。完成后,选择创建计算环境。
使用 EC2 资源创建托管计算环境
-
通过 https://console.aws.amazon.com/batch/
打开Amazon Batch主机。 -
从导航栏中,选择要使用的 Amazon Web Services 区域。
-
在导航窗格中,选择 Compute environments。
-
选择创建。
-
配置环境。
-
要配置计算环境,请选择亚马逊弹性计算云 (Amazon EC2)。
-
对于 “编排类型”,选择 “托管”。
-
对于 “名称”,为您的计算环境指定一个唯一的名称。该名称最多可包含 128 个字符。可以包含大小写字母、数字、连字符(-)和下划线(_)。
-
(可选)对于服务角色,选择服务相关角色,允许Amazon Batch服务代表您调用所需Amazon的 API 操作。例如,选择 AWSServiceRoleForBatch。有关更多信息,请参阅Amazon Batch 的服务相关角色权限:
-
对于 Instance role (实例角色),请选择创建新的实例配置文件或使用附加了所需 IAM 权限的现有实例配置文件。此实例配置文件允许为您的计算环境创建的 Amazon ECS 容器实例代表您调用所需Amazon的 API 操作。有关更多信息,请参阅Amazon ECS 实例角色:如果您选择创建新实例配置文件,则将为您创建所需的角色 (
ecsInstanceRole
)。 -
(可选)展开标签。
-
(可选)对于 EC2 标签,选择添加标签为在计算环境中启动的资源添加标签。然后,输入密钥名称和可选值。选择 Add tag (添加标签)。
-
(可选)对于标签,选择添加标签。然后,输入密钥名称和可选值。选择 Add tag (添加标签)。
有关更多信息,请参阅给您的 Amazon Batch 资源加标签:
-
选择 “下一页”。
-
-
在实例配置部分中:
-
(可选)要启用竞价型实例,请启用 Spot。有关更多信息,请参阅 Spot 实例。
-
(仅限竞价)对于按需价格的最大百分比,请选择竞价型实例价格与实例启动前该实例类型的按需价格进行比较时可以达到的最大百分比。例如,如果您的最高价格为 20%,则竞价价格必须低于该 EC2 实例当前按需价格的 20%。您始终支付最低 (市场) 价格,并且绝不会高于您的最大百分比。如果将此字段留空,则默认值为按需价格的 100%。
-
(仅限竞价)对于竞价型队列角色,请选择现有的 Amazon EC2 Spot 队列 IAM 角色来应用于您的竞价型计算环境。如果您还没有 Amazon EC2 Spot 队列 IAM 角色,则必须先创建一个。有关更多信息,请参阅亚马逊 EC2 现货队列的角色:
重要
要在创建时标记您的竞价型实例,您的 Amazon EC2 Spot 队列 IAM 角色必须使用更新的 A mazonEC2 SpotFleetTaggingRole 托管策略。A mazonEC2 SpotFleetRole 托管策略没有标记竞价型实例所需的权限。有关更多信息,请参阅 Spot 实例在创建时未加标签 和 标记资源。
-
对于最低 vCPU,选择计算环境维护的最低 vCPU 数量,无论作业队列需求如何。
-
对于所需的 vCPU,选择您的计算环境启动时使用的 vCPU 数量。当作业队列需求增大时,Amazon Batch 会增加计算环境中所需的 vCPU 数量并添加 EC2 实例 (最高可达最大 vCPU 数)。当需求减少时,Amazon Batch 会减少计算环境中所需的 vCPU 数量并删除实例 (减少至最小 vCPU 数)。
-
对于最大 vCPU,请选择计算环境可以扩展到的最大 vCPU 数量,无论作业队列需求如何。
-
对于允许的实例类型,选择可以启动的 Amazon EC2 实例类型。您可以指定实例系列来启动这些系列中的任何实例类型(例如
c5
c5n
、或p3
)。或者,您可以指定一个系列中的特定尺寸(例如c5.8xlarge
)。金属实例类型不在实例系列中。例如,c5
不包括c5.metal
。您也可以选择optimal
与您的任务队列需求相匹配的R4实例类型(从M4、和实例系列中)。C4注意
在创建一个计算环境时,为该计算环境选择的实例类型必须共享同一架构。例如,您不能在同一个计算环境中混用 x86 和 ARM 实例。
注意
Amazon Batch 将根据您的作业队列中所需的数量扩展 GPU。要使用 GPU 调度,计算环境必须包含
p2
、、p3
、p4
g3
g3s
g4
、或g5
系列的实例类型。注意
当前,
optimal
使用C4M4、和R4实例系列中的实例类型。如果Amazon Web Services 区域没有来自这些实例系列的实例类型,则使用C5M5、和R5实例系列中的实例类型。 -
展开 Additional configuration (其他配置)。
-
(可选)对于置放群组,输入置放群组名称以对计算环境中的资源进行分组。
-
(可选)对于 EC2 密钥对,在连接到实例时选择公钥和私有密钥对作为安全证书。有关亚马逊 EC2 密钥对的更多信息,请参阅亚马逊 EC2 密钥对和 Linux 实例。
-
对于分配策略,选择在从允许的实例类型列表中选择实例类型时要使用的分配策略。BEST_FIT_PROGRESSIV E 通常是 EC2 按需计算环境的更好选择,而 SPOT_CAPACITY _OPTIZED 适用于 EC2 Spot 计算环境。有关更多信息,请参阅分配策略:
-
(可选)对于 EC2 配置,选择图像类型和映像 ID 替代值,为计算环境中的实例选择 Amazon 系统映像 (AMI) 提供信息。Amazon Batch如果未为每种图像类型指定图像 ID 替代项,请Amazon Batch选择最新的 Amazon ECS 优化的 AMI。如果未指定图像类型,则默认为非 GPU、非 G Amazon raviton 实例的亚马逊 Linux 2。
重要
要使用自定义 AMI,请选择映像类型,然后在映像 ID 覆盖框中输入自定义 AMI ID。
- Amazon Linux 2
-
所有Amazon基于 Graviton 的实例系列(例如、
C6g
M6g
R6g
、和T4g
)的默认值,可用于所有非 GPU 实例类型。 - Amazon Linux 2(GPU)
-
所有 GPU 实例系列(例如
P4
和G4
)的默认值,可用于所有非Amazon基于 Graviton 的实例类型。 - Amazon Linux
-
可用于非 GPU、非 G Amazon raviton 实例系列。对亚马逊 Linux AMI 的标准支持已经结束。有关更多信息,请参阅 Amazon Linux AMI
。
注意
您为计算环境选择的 AMI 必须与您要用于该计算环境的实例类型的架构相匹配。例如,如果您的计算环境使用A1实例类型,则您选择的计算资源 AMI 必须支持Arm实例。亚马逊 ECS 同时出售亚马逊 ECS 优化的 Amazon Linux 2 AMI 的Arm版本x86和版本。有关更多信息,请参阅亚马逊弹性容器服务开发人员指南中的亚马逊 ECS 优化的 A mazon Linux 2 AMI。
-
(可选)对于启动模板,选择现有的 Amazon EC2 启动模板来配置您的计算资源。模板的默认版本会自动填充。有关更多信息,请参阅启动模板支持:
注意
在启动模板中,您可以指定自己创建的自定义 AMI。
-
(可选)对于 Launch template version (启动模板版本),输入
$Default
、$Latest
或要使用的特定版本号。重要
如果启动模板的版本参数为
$Default
或$Latest
,则在基础架构更新期间评估指定启动模板的默认或最新版本。如果默认情况下选择了不同的 AMI ID 或选择了最新版本的启动模板,则在更新中使用该 AMI ID。有关更多信息,请参阅更新 AMI ID: -
选择 “下一页”。
-
-
在网络配置部分中:
重要
计算资源需要访问才能与 Amazon ECS 服务端点通信。这可以通过接口 VPC 端点或具有公共 IP 地址的计算资源实现。
有关接口 VPC 端点的更多信息,请参阅 Amazon Elastic Container Service 开发人员指南中的 Amazon ECS 接口 VPC 端点(Amazon PrivateLink)。
如果您没有配置接口 VPC 端点,并且您的计算资源没有公有 IP 地址,必须使用网络地址转换 (NAT) 来提供此访问。有关更多信息,请参阅 Amazon VPC 用户指南中的 。有关更多信息,请参阅创建 VPC:
-
对于虚拟私有云 (VPC) ID,请选择要在其中启动实例的 VPC。
-
对于子网,选择要使用的子网。默认情况下,所选 VPC 中的所有子网都可用。
注意
Amazon Batch在亚马逊 EC2 上支持本地区域。有关更多信息,请参阅《本地区域、波长区域中的 Linux 实例和 A mazon ECS 集群的 Amazon ECS 集群》和《亚马逊弹性容器服务开发人员指南》Amazon Outposts中的本地区域。
-
(可选)对于安全组,请选择要连接到您的实例的安全组。默认情况下,将选择您的 VPC 的默认安全组。
-
-
选择 “下一页”。
-
要查看,请查看配置步骤。如果需要进行更改,请选择 Edit(编辑)。完成后,选择创建计算环境。
使用 EC2 资源创建非托管计算环境
-
通过 https://console.aws.amazon.com/batch/
打开Amazon Batch主机。 -
从导航栏中,选择要使用的 Amazon Web Services 区域。
-
在计算环境页面上,选择创建。
-
配置环境。
-
要配置计算环境,请选择亚马逊弹性计算云 (Amazon EC2)。
-
对于 “编排类型”,选择 “非托管”。
-
-
对于 “名称”,为您的计算环境指定一个唯一的名称。名称的长度最多可为 128 个字符。可以包含大小写字母、数字、连字符(-)和下划线(_)。
-
(可选)对于服务角色,选择一个允许Amazon Batch服务代表您调用所需的 Amazon API 操作的角色。例如,选择 AWSBatchServiceRole。有关更多信息,请参阅Amazon Batch服务 IAM 角色。
-
对于最大 vCPU,请选择计算环境可以扩展到的最大 vCPU 数量,无论作业队列需求如何。
-
(可选)展开标签。要添加标签,请选择 Add tag(添加标签)。然后,输入密钥名称和可选值。选择 Add tag (添加标签)。有关更多信息,请参阅给您的 Amazon Batch 资源加标签:
-
选择 “下一页”。
-
要查看,请查看配置步骤。如果需要进行更改,请选择 Edit(编辑)。完成后,选择创建计算环境。
使用 EKS 资源创建托管计算环境
-
通过 https://console.aws.amazon.com/batch/
打开Amazon Batch主机。 -
从导航栏中,选择要使用的 Amazon Web Services 区域。
-
在导航窗格中,选择 Compute environments。
-
选择创建。
-
要配置计算环境,请选择亚马逊弹性 Kubernetes 服务 (亚马逊 EKS)。
-
对于 “名称”,为您的计算环境指定一个唯一的名称。名称的长度最多可为 128 个字符。可以包含大小写字母、数字、连字符(-)和下划线(_)。
-
对于实例角色,选择已附加所需的 IAM 权限的现有实例配置文件。
注意
要在Amazon Batch控制台中创建计算环境,请选择具有
eks:ListClusters
和eks:DescribeCluster
权限的实例配置文件。 -
对于 EKS 集群,请选择现有的 Amazon EKS 集群。
-
对于命名空间,输入一个Kubernetes命名空间以对集群中的Amazon Batch进程进行分组。
-
(可选)展开标签。选择添加标签,然后输入键值对。
-
选择 “下一页”。
-
(可选)要使用 EC2 竞价型实例,请启用 “使用竞价型实例启用 Amazon EC2 竞价型实例”。
-
(仅限竞价)对于按需价格的最大百分比,请选择竞价型实例价格与实例启动前该实例类型的按需价格进行比较时可以达到的最大百分比。例如,如果您的最高价格为 20%,则竞价价格必须低于该 EC2 实例当前按需价格的 20%。您始终支付最低 (市场) 价格,并且绝不会高于您的最大百分比。如果将此字段留空,则默认值为按需价格的 100%。
-
(仅限竞价)对于竞价型队列角色,请为
SPOT
计算环境选择 Amazon EC2 竞价型队列 IAM 角色。重要
如果分配策略设置为
BEST_FIT
或未指定,则此角色是必需的。 -
(可选)对于最低 vCPU,请选择计算环境维护的最低 vCPU 数量,无论作业队列需求如何。
-
(可选)对于最大 vCPU,请选择计算环境可以扩展到的最大 vCPU 数量,无论作业队列需求如何。
-
对于允许的实例类型,选择可以启动的 Amazon EC2 实例类型。您可以指定实例系列来启动这些系列中的任何实例类型(例如
c5
c5n
、或p3
)。或者,您可以指定一个系列中的特定尺寸(例如,c5.8xlarge
)。金属实例类型不在实例系列中。例如,c5
不包括c5.metal
。您也可以选择optimal
实例类型(从C4M4、和R4实例系列中),因为您需要与任务队列的需求相匹配。注意
在创建一个计算环境时,为该计算环境选择的实例类型必须共享同一架构。例如,您不能在同一个计算环境中混用 x86 和 ARM 实例。
注意
Amazon Batch根据作业队列中的所需数量扩展 GPU。要使用 GPU 调度,计算环境必须包含
p2
、、p3
、p4
g3
g3s
g4
、或g5
系列的实例类型。注意
目前,
optimal
使用 C4、M4 和 R4 实例系列中的实例类型。如果Amazon Web Services 区域没有来自这些实例系列的实例类型,则使用C5M5、和R5实例系列中的实例类型。 -
(可选)展开其他配置。
-
(可选)对于置放群组,输入置放群组名称以对计算环境中的资源进行分组。
-
对于分配策略,请选择 BEST_FIT_PROGRESSIVE。
-
(可选)对于亚马逊系统映像 (AMI) 配置,请选择添加亚马逊计算机映像 (amis) 配置。然后,选择图像类型,输入图片 ID 替代项和Kubernetes版本。
重要
要使用自定义 AMI,请选择映像类型,然后在映像 ID 覆盖框中输入自定义 AMI ID。
注意
如果未为每种图像类型指定图像 ID 替代项,请Amazon Batch选择最新的 Amazon ECS 优化的 AMI。如果未指定图像类型,则默认为非 GPU、非 G Amazon raviton 实例的亚马逊 Linux 2。
- Amazon Linux 2
-
所有Amazon基于 Graviton 的实例系列(例如、
C6g
M6g
R6g
、和T4g
)的默认值,可用于所有非 GPU 实例类型。 - Amazon Linux 2(GPU)
-
所有 GPU 实例系列(例如
P4
和G4
)的默认值,可用于所有非Amazon基于 Graviton 的实例类型。
-
(可选)对于启动模板,请选择现有的启动模板。
-
(可选)对于 Launch 模板版本
$Default
,输入$Latest
、或版本号。
-
-
选择 “下一页”。
-
对于虚拟私有云 (VPC) ID,请选择要在哪里启动实例的 VPC。
-
对于子网,选择要使用的子网。默认情况下,所选 VPC 中的所有子网都可用。
注意
Amazon Batch在亚马逊 EKS 上支持本地区域。有关更多信息,请参阅亚马逊 EKS 用户指南中的亚马逊 EKS 和Amazon本地区域。
-
(可选)对于安全组,请选择要连接到您的实例的安全组。默认情况下,您的 VPC 的默认安全组处于选中状态。
-
选择 “下一页”。
-
要查看,请查看配置步骤。如果需要进行更改,请选择 Edit(编辑)。完成后,选择创建计算环境。