教程:使用 Amazon EC2 资源创建托管计算环境 - AWS Batch

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

教程:使用 Amazon EC2 资源创建托管计算环境

完成以下步骤,以使用 Amazon Elastic Compute Cloud(Amazon EC2)资源创建托管式计算环境。

  1. 打开 AWS Batch 控制台,网址为https://console.aws.amazon.com/batch/

  2. 在导航栏中,选择 AWS 区域 要使用的。

  3. 在导航窗格中,选择环境

  4. 选择创建环境,然后选择计算环境

  5. 配置环境。

    1. 计算环境的配置中,选择 Amazon Elastic Compute Cloud (Amazon EC2)

    2. 对于编排类型,请选择托管

    3. 对于名称,为计算环境指定唯一名称。名称最长可以包含 128 个字符。可以包含大小写字母、数字、连字符(-)和下划线(_)。

    4. 对于服务角色,请选择服务相关角色,该角色允许 AWS Batch 服务代表您调用所需 AWS 的 API 操作。例如,选择 AWSServiceRoleForBatch。有关更多信息,请参阅 将服务相关角色用于 AWS Batch

    5. 对于 Instance role (实例角色),请选择创建新的实例配置文件或使用附加了所需 IAM 权限的现有实例配置文件。此实例配置文件允许为您的计算环境创建的 Amazon ECS 容器实例代表您调用所需 AWS 的 API 操作。有关更多信息,请参阅 Amazon ECS 实例角色。如果您选择创建新实例配置文件,则将为您创建所需的角色 (ecsInstanceRole)。

    6. (可选)展开标签

      1. (可选)对于 EC2 标签,选择添加标签以向在计算环境中启动的资源添加标签。然后,输入一个和可选的。选择 Add tag(添加标签)

      2. (可选)在标签中,选择添加标签。然后,输入一个和可选的。选择 Add tag(添加标签)

        有关更多信息,请参阅 标记 AWS Batch 资源

    7. 选择下一步

  6. 实例配置部分:

    1. (可选)对于使用竞价型实例启用,请开启 Spot。有关更多信息,请参阅竞价型实例

    2. (仅限竞价型)对于按需价格最大百分比,请选择在启动实例之前与该实例类型的按需价格进行比较时竞价型实例价格可达到的最大百分比。例如,如果最高价为 20%,则竞价型价格必须低于该 EC2 实例的当前按需价格的 20%。您始终支付最低 (市场) 价格,并且绝不会高于您的最大百分比。如果将此字段留空,则默认值为按需价格的 100%。

    3. (仅限 Spot)对于竞价型实例集角色,选择一个现有的 Amazon EC2 竞价型实例集 IAM 角色以应用于您的 Spot 计算环境。如果您没有现有的 Amazon EC2 竞价型实例集 IAM 角色,则必须先创建一个。有关更多信息,请参阅 Amazon EC2 竞价型实例集角色

      重要

      要在创建时标记您的竞价型实例,您的 Amazon EC2 竞价型队列 IAM 角色必须使用更新的亚马逊EC2SpotFleetTaggingRole托管策略。A mazon EC2 SpotFleetRole 托管策略没有标记竞价型实例所需的权限。有关更多信息,请参阅创建时未标记的竞价型实例标记资源

    4. 对于最小 v CPUs,无论作业队列需求如何CPUs ,请选择计算环境维护的最小 v 数。

    5. 对于 Desired v CPUsCPUs ,选择计算环境启动时使用的 v 数。随着任务队列需求的增加, AWS Batch 可以增加计算环境中所需的 vCPU 数量并添加 EC2 实例,最高可达 v。CPUs 随着需求的减少, AWS Batch 可以减少计算环境CPUs 中所需的 v 数并移除实例,降至最小 v CPUs。

    6. 对于 Maximum v CPUsCPUs ,选择计算环境可以扩展到的最大 v 数,无论作业队列需求如何。

    7. (可选)对于缩减延迟(分钟),请选择任务完成后实例在计算环境中 AWS Batch 保持运行的最短时间(以分钟为单位)。

    8. 对于允许的实例类型,选择可启动的 Amazon EC2 实例类型。您可以指定实例系列以在这些系列中启动任何实例类型(例如,c5c5np3),或者,您可以指定系列中的特定大小(例如 c5.8xlarge)。Metal 实例类型不在实例系列中。例如,c5 不包括 c5.metal

      AWS Batch 如果您选择以下选项之一,则可以为您选择实例类型:

      • optimal,以选择符合作业队列需求的实例类型(从 c4m4r4c5m5r5 实例系列中选择)。

      • default_x86_64 会选择符合作业队列的资源需求的基于 x86 的实例类型(从 m6i、c6i、r6i 和 c7i 实例系列中选择)。

      • default_arm64 会选择符合作业队列的资源需求的基于 x86 的实例类型(从 m6g、c6g、r6g 和 c7g 实例系列中选择)。

      注意

      从 2025 年 11 月 1 日起,optimal 的行为将更改为匹配 default_x86_64。在更改期间,您的实例系列可能会更新到新一代实例。本次升级无需您执行任何操作。有关更改的更多信息,请参阅

      注意
      • 实例系列的可用性因 AWS 区域而异。例如,有些 AWS 区域可能没有任何第四代实例系列,但有第五代和第六代实例系列。

      • 使用 default_x86_64default_arm64 实例捆绑包时, AWS Batch 将在综合权衡成本效益和性能的基础上选择实例系列。虽然新一代实例通常具有更好的性价比,但如果较早一代的实例系列为您的工作负载提供了可用性、成本和性能的最佳组合,则 AWS Batch 可以选择该系列。例如,在 c6i 和 c7i 实例均可用的 AWS 区域 情况下,如果 c6i 实例可以更好地满足您的特定任务要求,则 AWS Batch 可以选择 c6i 实例。有关 AWS Batch 实例类型和 AWS 区域 可用性的更多信息,请参阅实例类型计算表

      • AWS Batch 定期将默认捆绑包中的实例更新为更新、更具成本效益的选项。这些更新会自动完成,无需您执行任何操作。您的工作负载会在更新期间继续运行,不会出现中断。

      注意

      在创建一个计算环境时,为该计算环境选择的实例类型必须共享同一架构。例如,您不能在同一个计算环境中混用 x86 和 ARM 实例。

      注意

      AWS Batch 将 GPUs 根据任务队列中所需的数量进行扩展。要使用 GPU 调度功能,计算环境包含的实例类型必须为 p6, p3, p4, p5, g3, g3s, g4g5g6 系列。

    9. 对于分配策略,选择在从允许的实例类型列表中选择实例类型时要使用的分配策略。对于 EC2 按需计算环境,BEST_FIT_PROGRESSIVE 通常是更好的选择,而对于 EC2 Spot 计算环境,SPOT_CAPACITY_OPTIMIZEDSPOT_PRICE_CAPACITY_OPTIMIZED 则是更好的选择。有关更多信息,请参阅 AWS Batch 的实例类型分配策略

    10. 展开其他配置

      1. (可选)对于置放群组,输入置放群组名称以对计算环境中的资源进行分组。

      2. (可选)对于 EC2 密钥对,请在连接到实例时选择公钥和私有密钥对作为安全凭证。有关 Amazon EC2 密钥对的更多信息,请参阅 Amazon EC2 密钥对和 Linux 实例

      3. (可选)对于 EC2 配置,请选择映像类型和映像 ID 覆盖值以提供信息, AWS Batch 以便为计算环境中的实例选择 Amazon 系统映像 (AMIs)。如果未为每种图像类型指定镜像 ID 替换,则 AWS Batch 选择最近经过亚马逊ECS优化的 AMI。如果未指定图像类型,则对于非 GPU、非 G AWS raviton 实例,默认为 Amazon Linux 2

        重要

        要使用自定义 AMI,请选择映像类型,然后在映像 ID 覆盖框中输入自定义 AMI ID。

        Amazon Linux 2

        所有 AWS 基于 Graviton 的实例系列(例如、C6gM6g、和T4g)均为默认值R6g,并且可用于所有非 GPU 实例类型。

        Amazon Linux 2(GPU)

        所有 GPU 实例系列的默认值(例如P4G4),并且可用于所有非 AWS 基于 Graviton 的实例类型。

        Amazon Linux 2023

        AWS Batch 支持 Amazon Linux 2023。

        注意

        Amazon 2023 不支持 A1 实例。

        亚马逊 Linux 2023 (GPU)

        所有 GPU 实例系列的默认值(例如P4G4),并且可用于所有非 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

    11. (可选)展开启动模板

      1. 对于默认启动模板,选择一个用来配置计算资源的现有 Amazon EC2 启动模板。模板的默认版本会自动填充。有关更多信息,请参阅 使用 Amazon EC2 启动模板和 AWS Batch

        注意

        在启动模板中,您可以指定自己创建的自定义 AMI。

      2. (可选)对于默认版本,输入 $Default$Latest 或要使用的特定版本号。

        注意

        注意:如果您使用替换变量($Default 或 $Latest),则会在保存此配置时应用当前的默认或最新版本号。如果未来默认版本或最新版本发生更改,则必须更新相关信息——它不会自动更新。

        重要

        如果启动模板的版本参数为 $Default$Latest,则会在基础设施更新期间评估指定启动模板的默认版本或最新版本。如果默认选择了不同的 AMI ID 或选择了最新版本的启动模板,则将在更新中使用该 AMI ID。有关更多信息,请参阅 基础设施更新期间的 AMI 选择

      3. (可选)对于覆盖启动模板,选择添加覆盖启动模板

        1. (可选)对于启动模板,选择一个要用于特定实例类型和系列的现有 Amazon EC2 启动模板。

        2. (可选)对于默认版本,输入要使用的特定版本号、$Default$Latest

          注意

          如果您使用 $Default$Latest 变量,则 AWS Batch 将在创建计算环境时应用当前信息。如果 future 的默认版本或最新版本发生变化,则必须通过UpdateComputeEnvironment或通过 AWS 管理控制台 -更新信息 AWS Batch。

        3. (可选)对于目标实例类型,选择要应用该覆盖启动模板的实例类型或系列。

          注意

          如果您指定了覆盖启动模板,则必须指定目标实例类型。有关更多信息,请参阅LaunchTemplateSpecificationOverride。 targetInstanceTypes

          注意

          如果要选择的实例类型或系列未出现在此列表中,请检查您在 Allowed instance types 中所做的选择。

    12. 选择下一步

  7. 网络配置部分:

    重要

    计算资源需要访问才能与 Amazon ECS 服务端点通信。这可以通过接口 VPC 端点或具有公共 IP 地址的计算资源实现。

    有关接口 VPC 端点的更多信息,请参阅 Amazon Elastic Container Service 开发人员指南中的 Amazon ECS 接口 VPC 端点(AWS PrivateLink)

    如果没有配置接口 VPC 端点,并且计算资源没有公共 IP 地址,则必须使用网络地址转换 (NAT) 来提供这种访问。有关更多信息,请参阅《Amazon VPC 用户指南》中的。有关更多信息,请参阅 创建 VPC

    1. 对于虚拟私有云(VPC)ID,请选择要在其中启动实例的 VPC。

    2. 对于子网,选择要使用的子网。默认情况下,选定的 VPC 中的所有子网都可用。

      注意

      AWS Batch 在 Amazon EC2 上支持 Local Zones。有关更多信息,请参阅《Amazon EC2 用户指南》中的本地区域、《Amazon Elastic Container Service 开发人员指南》中的本地区域、Wavelength Zones 和 AWS Outposts中的 Amazon ECS 集群

    3. (可选)对于安全组,选择要附加到实例的安全组。默认情况下,将选择您的 VPC 的默认安全组。

      注意

      注意:如果您使用替换变量($Default 或 $Latest),则会在保存此配置时应用当前的默认或最新版本号。如果未来默认版本或最新版本发生更改,则必须更新相关信息——它不会自动更新。

  8. 选择下一页

  9. 对于查看,请查看配置步骤。如果需要进行更改,请选择 Edit(编辑)。完成后,选择创建计算环境