本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
教程:使用 Amazon EC2 资源创建托管计算环境
完成以下步骤,以使用 Amazon Elastic Compute Cloud(Amazon EC2)资源创建托管式计算环境。
-
打开AWS Batch控制台,地址:https://console.aws.amazon.com/batch/
。 -
从导航栏中,选择要使用的AWS 区域。
-
在导航窗格中,选择环境。
-
选择创建环境,然后选择计算环境。
-
配置环境。
-
在计算环境的配置中,选择 Amazon Elastic Compute Cloud (Amazon EC2)。
-
对于编排类型,请选择托管。
-
对于名称,为计算环境指定唯一名称。名称最长可以包含 128 个字符。可以包含大小写字母、数字、连字符(-)和下划线(_)。
-
对于服务角色,请选择服务相关角色,该角色允许 AWS Batch 服务代表您调用所需的 AWS API 操作。例如,选择 AWSServiceRoleForBatch。有关更多信息,请参阅 将服务关联角色用于 AWS Batch。
-
对于 Instance role (实例角色),请选择创建新的实例配置文件或使用附加了所需 IAM 权限的现有实例配置文件。该实例配置文件允许为您的计算环境创建的 Amazon ECS 容器实例代表您调用所需的 AWS API 操作。有关更多信息,请参阅 Amazon ECS 实例角色。如果您选择创建新实例配置文件,则将为您创建所需的角色 (
ecsInstanceRole)。 -
(可选)展开标签。
-
(可选)对于 EC2 标签,选择添加标签以向在计算环境中启动的资源添加标签。然后,输入一个键和可选的值。选择 Add tag(添加标签)。
-
(可选)在标签中,选择添加标签。然后,输入一个键和可选的值。选择 Add tag(添加标签)。
有关更多信息,请参阅 标记 AWS Batch 资源。
-
-
选择下一步。
-
-
在实例配置部分:
-
(可选)对于使用竞价型实例启用,请开启 Spot。有关更多信息,请参阅竞价型实例。
-
(仅限竞价型)对于按需价格最大百分比,请选择在启动实例之前与该实例类型的按需价格进行比较时竞价型实例价格可达到的最大百分比。例如,如果最高价为 20%,则竞价型价格必须低于该 EC2 实例的当前按需价格的 20%。您始终支付最低 (市场) 价格,并且绝不会高于您的最大百分比。如果将此字段留空,则默认值为按需价格的 100%。
-
(仅限 Spot)对于竞价型实例集角色,选择一个现有的 Amazon EC2 竞价型实例集 IAM 角色以应用于您的 Spot 计算环境。如果您没有现有的 Amazon EC2 竞价型实例集 IAM 角色,则必须先创建一个。有关更多信息,请参阅 亚马逊 EC2 现货舰队的角色。
重要
要在创建时标记竞价型实例,您的 Amazon EC2 竞价型实例集 IAM 角色必须使用较新的 AmazonEC2SpotFleetTaggingRole 托管策略。AmazonEC2SpotFleetRole 托管策略不具有标记竞价型实例所需的权限。有关更多信息,请参阅创建时未标记的竞价型实例和标记资源。
-
对于 Minimum vCPUs,选择您的计算环境应保留的 vCPU 的最小数目,而无论作业队列需求如何。
-
对于 Desired vCPUs,请选择您的计算环境在启动时应使用的 vCPU 数量。当作业队列需求增大时,AWS Batch 会增加计算环境中所需的 vCPU 数量并添加 EC2 实例 (最高可达最大 vCPU 数)。当需求减少时,AWS Batch 会减少计算环境中所需的 vCPU 数量并删除实例 (减少至最小 vCPU 数)。
-
对于 Maximum vCPUs,选择您的计算环境可以横向扩展到的 vCPU 的最大数目,而无论作业队列需求如何。
-
对于允许的实例类型,选择可启动的 Amazon EC2 实例类型。您可以指定实例系列以在这些系列中启动任何实例类型(例如,
c5、c5n或p3),或者,您可以指定系列中的特定大小(例如c5.8xlarge)。Metal 实例类型不在实例系列中。例如,c5不包括c5.metal。如果您选择了以下选项之一,则 AWS Batch 可为您选择实例类型:
optimal,以选择符合作业队列需求的实例类型(从c4、m4、r4、c5、m5和r5实例系列中选择)。default_x86_64会选择符合作业队列的资源需求的基于 x86 的实例类型(从 m6i、c6i、r6i 和 c7i 实例系列中选择)。default_arm64会选择符合作业队列的资源需求的基于 x86 的实例类型(从 m6g、c6g、r6g 和 c7g 实例系列中选择)。
注意
注意
实例系列的可用性因 AWS 区域而异。例如,有些 AWS 区域可能不提供任何第四代实例系列,而提供了第五代和第六代实例系列。
使用
default_x86_64或default_arm64实例捆绑包时,AWS Batch 将在综合权衡成本效益和性能的基础上选择实例系列。虽然新一代实例通常具有更好的性价比,但如果对于您的工作负载而言,较早一代实例系列提供最佳的可用性、成本和性能组合,则 AWS Batch 可能会选择较早一代的实例系列。例如,如果某个 AWS 区域同时提供 c6i 和 c7i 实例,而 c6i 实例对于您的具体作业要求而言具有更好的成本效益,则 AWS Batch 可能会选择 c6i 实例。有关 AWS Batch 实例类型和 AWS 区域可用性的更多信息,请参阅实例类型计算表。AWS Batch 会定期将默认捆绑包中的实例更新为更具成本效益的新一代实例。这些更新会自动完成,无需您执行任何操作。您的工作负载会在更新期间继续运行,不会出现中断。
注意
在创建一个计算环境时,为该计算环境选择的实例类型必须共享同一架构。例如,您不能在同一个计算环境中混用 x86 和 ARM 实例。
注意
AWS Batch 将根据您的作业队列中所需的数量扩展 GPU。要使用 GPU 调度功能,计算环境包含的实例类型必须为
p6,p3,p4,p5,g3,g3s,g4、g5或g6系列。 -
对于分配策略,选择在从允许的实例类型列表中选择实例类型时要使用的分配策略。对于 EC2 按需计算环境,BEST_FIT_PROGRESSIVE 通常是更好的选择,而对于 EC2 Spot 计算环境,SPOT_CAPACITY_OPTIMIZED 和 SPOT_PRICE_CAPACITY_OPTIMIZED 则是更好的选择。有关更多信息,请参阅 AWS Batch 的实例类型分配策略。
-
展开其他配置。
-
(可选)对于置放群组,输入置放群组名称以对计算环境中的资源进行分组。
-
(可选)对于 EC2 密钥对,请在连接到实例时选择公钥和私有密钥对作为安全凭证。有关 Amazon EC2 密钥对的更多信息,请参阅 Amazon EC2 密钥对和 Linux 实例。
-
(可选)对于 EC2 配置,请选择映像类型和映像 ID 覆盖值,以向 AWS Batch 提供为计算环境中的实例选择亚马逊机器映像(AMI)所需的信息。如果未为每种映像类型指定映像 ID 覆盖,则 AWS Batch 选择最近经 Amazon ECS 优化的 AMI。如果未指定映像类型,则非 GPU、非 AWS Graviton 实例默认为 Amazon Linux 2。
重要
要使用自定义 AMI,请选择映像类型,然后在映像 ID 覆盖框中输入自定义 AMI ID。
- Amazon Linux 2
-
所有基于 AWS Graviton 的实例系列的默认值(例如
C6g、M6g、R6g和T4g),可用于所有非 GPU 实例类型。 - Amazon Linux 2(GPU)
-
所有 GPU 实例系列的默认值(例如
P4和G4),可用于所有非基于 AWS Graviton 的实例类型。 - Amazon Linux 2023
-
AWS Batch 支持 Amazon Linux 2023。
注意
Amazon 2023 不支持
A1实例。 - Amazon Linux 2023 (GPU)
-
所有 GPU 实例系列的默认值(例如
P4和G4),可用于所有非基于 AWS Graviton 的实例类型。
注意
您为计算环境选择的 AMI 必须与您打算用于该计算环境的实例类型的架构匹配。例如,如果您的计算环境使用 A1 实例类型,则您选择的计算资源 AMI 必须支持 ARM 实例。Amazon ECS 同时提供 Amazon ECS 优化型 Amazon Linux 2 AMI 的 x86 和 ARM 版本。有关更多信息,请参阅《Amazon Elastic Container Service 开发人员指南》中的经过 Amazon ECS 优化的 Amazon Linux 2 AMI。
-
-
(可选)展开启动模板
对于默认启动模板,选择一个用来配置计算资源的现有 Amazon EC2 启动模板。模板的默认版本会自动填充。有关更多信息,请参阅 将 Amazon EC2 启动模板与 AWS Batch。
注意
在启动模板中,您可以指定自己创建的自定义 AMI。
-
(可选)对于默认版本,输入
$Default、$Latest或要使用的特定版本号。注意
注意:如果您使用替换变量($Default 或 $Latest),则会在保存此配置时应用当前的默认或最新版本号。如果未来默认版本或最新版本发生更改,则必须更新相关信息——它不会自动更新。
重要
如果启动模板的版本参数为
$Default或$Latest,则会在基础设施更新期间评估指定启动模板的默认版本或最新版本。如果默认选择了不同的 AMI ID 或选择了最新版本的启动模板,则将在更新中使用该 AMI ID。有关更多信息,请参阅 基础设施更新期间的 AMI 选择。 (可选)对于覆盖启动模板,选择添加覆盖启动模板
-
(可选)对于启动模板,选择一个要用于特定实例类型和系列的现有 Amazon EC2 启动模板。
-
(可选)对于默认版本,输入要使用的特定版本号、
$Default或$Latest。注意
如果您使用
$Default或$Latest变量,则 AWS Batch 将在创建计算环境时应用当前信息。如果未来默认版本或最新版本发生更改,则必须通过 UpdateComputeEnvironment 或通过 AWS 管理控制台 - AWS Batch.更新相关信息。 -
(可选)对于目标实例类型,选择要应用该覆盖启动模板的实例类型或系列。
注意
如果您指定了覆盖启动模板,则必须指定目标实例类型。有关更多信息,请参阅 LaunchTemplateSpecificationOverride.targetInstanceTypes。
注意
如果要选择的实例类型或系列未出现在此列表中,请检查您在
Allowed instance types中所做的选择。
-
-
选择下一步。
-
-
在网络配置部分:
重要
计算资源需要访问才能与 Amazon ECS 服务端点通信。这可以通过接口 VPC 端点或具有公共 IP 地址的计算资源实现。
有关接口 VPC 端点的更多信息,请参阅 Amazon Elastic Container Service 开发人员指南中的 Amazon ECS 接口 VPC 端点(AWS PrivateLink)。
如果没有配置接口 VPC 端点,并且计算资源没有公共 IP 地址,则必须使用网络地址转换 (NAT) 来提供这种访问。有关更多信息,请参阅《Amazon VPC 用户指南》中的。有关更多信息,请参阅 创建 VPC。
-
对于虚拟私有云(VPC)ID,请选择要在其中启动实例的 VPC。
-
对于子网,选择要使用的子网。默认情况下,选定的 VPC 中的所有子网都可用。
注意
AWS Batch 在 Amazon EC2 上支持 Local Zones。有关更多信息,请参阅《Amazon EC2 用户指南》中的本地区域、《Amazon Elastic Container Service 开发人员指南》中的本地区域、Wavelength Zones 和 AWS Outposts 中的 Amazon ECS 集群。
-
(可选)对于安全组,选择要附加到实例的安全组。默认情况下,将选择您的 VPC 的默认安全组。
注意
注意:如果您使用替换变量($Default 或 $Latest),则会在保存此配置时应用当前的默认或最新版本号。如果未来默认版本或最新版本发生更改,则必须更新相关信息——它不会自动更新。
-
-
选择下一页。
-
对于查看,请查看配置步骤。如果需要进行更改,请选择 Edit(编辑)。完成后,选择创建计算环境。