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

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

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

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

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

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

  4. 选择创建

  5. 对于计算环境的配置,选择 Amazon Elastic Kubernetes Service (Amazon EKS)

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

  7. 对于 实例角色,请选择使用附加了所需 IAM 权限的现有实例配置文件。

    注意

    要在 AWS Batch 控制台中创建计算环境,请选择具有 eks:ListClusterseks:DescribeCluster 权限的实例配置文件。

  8. 对于 EKS 集群,选择现有的 Amazon EKS 集群。

  9. 命名空间中,输入 Kubernetes 命名空间以对集群中的 AWS Batch 进程进行分组。

  10. (可选)展开标签。选择添加标签,然后输入键值对。

  11. 选择下一页

  12. (可选)对于使用 EC2 竞价型实例,请开启使用竞价型实例启用以使用 Amazon EC2 竞价型实例。

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

  14. (仅限竞价型)对于竞价型实例集角色,请为 SPOT 计算环境选择 Amazon EC2 竞价型实例集 IAM 角色。

    重要

    如果将分配策略设置为 BEST_FIT 或者未指定时,需要使用该角色。

  15. (可选)对于最小 vCPU 数,选择您的计算环境应保留的 vCPU 的最小数目,而无论作业队列需求如何。

  16. (可选)对于最大 vCPU 数,选择您的计算环境可以横向扩展到的 vCPU 的最大数目,而无论作业队列需求如何。

  17. 对于允许的实例类型,选择可启动的 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 可能会选择较早一代的实例系列。例如,如果某个 AWS 区域同时提供 c6i 和 c7i 实例,而 c6i 实例对于您的具体作业要求而言具有更好的成本效益,则 AWS Batch 可能会选择 c6i 实例。有关 AWS Batch 实例类型和 AWS 区域可用性的更多信息,请参阅实例类型计算表

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

    注意

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

    注意

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

  18. (可选)展开其他配置

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

    2. 对于分配策略,选择 BEST_FIT_PROGRESSIVE

    3. (可选)对于亚马逊机器映像(AMI)配置,请选择添加亚马逊机器映像(AMI)配置

      您可以使用 Amazon EKS 优化型 Amazon Linux AMI,也可以使用自定义 AMI。

      1. 使用 Amazon EKS 优化型 Amazon Linux AMI

        1. 对于映像类型,请选择下列选项之一:

          • Amazon Linux 2:所有基于 AWS Graviton 的实例系列(例如 C6gM6gR6gT4g)的默认值,可用于所有非 GPU 实例类型。

          • Amazon Linux 2(加速版):所有 GPU 实例系列(例如 P4G4)的默认值,可用于所有非基于 AWS Graviton 的实例类型。

          • Amazon Linux 2023:AWS Batch 支持 Amazon Linux 2023(AL2023)。

          • Amazon Linux 2023(加速型):GPU 实例系列,可用于所有非基于 AWS Graviton 的实例类型。

        2. 对于 Kubernetes 版本,输入一个 Kubernetes 版本号

      2. 使用自定义 AMI:

        1. 对于映像类型,选择自定义 AMI 所基于的 AMI 类型:

        2. 对于映像 ID 覆盖,输入自定义 AMI ID。

        3. 对于 Kubernetes 版本,输入一个 Kubernetes 版本号

    4. (可选)对于启动模板,选择一个现有的启动模板

    5. (可选)对于启动模板版本,输入 $Default$Latest 或版本号码。

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

      1. (可选)对于启动模板,选择要添加该覆盖的启动模板。

      2. (可选)对于启动模板版本,选择启动模板的版本号、$Default$Latest

      3. (可选)对于目标实例类型,选择将应用此覆盖的实例类型或系列。这只能是允许的实例类型中包含的实例类型和系列。

      4. (可选)对于 userdataType,选择 EKS 节点初始化。只有在启动模板中指定了 AMI 或将其作为启动模板覆盖时,才使用此字段。对于基于 EKS_AL2023EKS_AL2023_NVIDIA 的自定义 AMI,请选择 EKS_NODEADM;对于 EKS_AL2EKS_AL_NVIDIA,请选择 EKS_BOOSTRAP_SH。默认值为 EKS_BOOSTRAP_SH

        对于在同一计算环境中同时使用基于 AL2 和基于 AL2023 的自定义 AMI 的混合环境,您需要使用 userdataType

  19. 选择下一页

  20. 对于虚拟私有云(VPC)ID,选择要启动实例的 VPC。

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

    注意

    AWS Batch 在 Amazon EKS 上支持 Local Zones。有关更多信息,请参阅《Amazon EKS 用户指南》中的 Amazon EKS 以及 AWS Local Zones

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

  23. 选择下一页

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