使用 Amazon EKS 编排创建 SageMaker HyperPod 集群 - 亚马逊 SageMaker AI

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

使用 Amazon EKS 编排创建 SageMaker HyperPod 集群

以下教程演示如何创建新 SageMaker HyperPod 集群并通过 A SageMaker I 控制台用户界面使用 Amazon EKS 编排对其进行设置。

本主题内容:

创建集群

要导航到SageMaker HyperPod 集群页面并选择 Amazon EKS 编排,请按照以下步骤操作。

  1. 打开 Amazon A SageMaker I 控制台,网址为https://console.aws.amazon.com/sagemaker/

  2. 在左侧导航窗格中选择 “集HyperPod 群”,然后选择 “集群管理”。

  3. SageMaker HyperPod 集群页面上,选择创建 HyperPod 集群

  4. 创建 HyperPod 集群下拉列表中,选择由 Amazon EKS 编排

  5. EKS 集群创建页面上将显示两个选项,请选择最适合您的需求的选项。

    1. 快速设置 – 要立即开始使用默认设置,请选择快速设置。使用此选项, SageMaker AI 将在创建集群的过程中为 Lustre 创建新资源,例如 VPC、子网、安全组、Amazon S3 存储桶、IAM 角色和 FSx for Lustre。

    2. 自定义设置 – 要与现有 AWS 资源集成或有特定的联网、安全或存储要求,请选择自定义设置。利用此选项,您可以选择使用现有资源或创建新资源,还可以自定义最适合您需求的配置。

在 “快速设置” 部分,按照以下步骤使用 Amazon EKS 编排创建您的 HyperPod 集群。

常规设置

指定新集群的名称。创建集群后,无法更改该名称。

实例组

要添加实例组,请选择添加组。每个实例组都可以进行不同的配置,您可以创建一个异构集群,该集群由具有不同实例类型的多个实例组组成。要部署集群,您必须添加至少一个实例组。执行以下步骤来创建实例组。

  1. 对于实例组类型,选择标准受限实例组(RIG)。通常,您将选择标准,此选项提供了通用计算环境,且无额外安全限制。受限实例组(RIG)是用于基础模型自定义的专用环境(例如 Amazon Nova)。有关为 Amazon Nova 模型自定义设置 RIG 的更多信息,请参阅亚马逊上的 Amazon Nova 定制 SageMaker HyperPod

  2. 对于名称,指定实例组的名称。

  3. 对于实例容量,选择按需容量或训练计划来预留计算资源。

  4. 对于实例类型,为实例组选择实例。

    重要

    请确保为账户选择具有足够配额以及充足的未分配 IP 地址的实例类型。要查看或请求更多配额,请参阅 SageMaker HyperPod 配额

  5. 对于实例数量,指定一个不超过集群使用实例配额的整数。在本教程中,为所有三个组输入 1

  6. 对于目标可用区,选择将在其中预调配实例的可用区。可用区应与加速计算容量所在的位置相对应。

  7. 对于每个实例的附加存储卷(GB)– 可选,指定 1 到 16384 之间的整数,以千兆字节(GB)为单位设置附加 Elastic Block Store(EBS)卷的大小。EBS 卷附加到实例组的每个实例。附加 EBS 卷的默认挂载路径为 /opt/sagemaker。成功创建集群后,您可以 SSH 登录集群实例(节点),并通过运行 df -h 命令验证 EBS 卷是否已正确加载。如 Amazon Elastic Block Store 用户指南中的 Amazon EBS 卷部分所述,附加 EBS 卷可提供稳定、非实例和独立持久化的存储。

  8. 对于实例深度运行状况检查,选择您的选项。深度运行状况检查可在创建期间以及软件更新后监控实例的运行状况,启用后,它会通过重启或替换的方式自动恢复故障实例。

  9. 如果您的实例类型支持使用多实例 GPU (MIG) 进行 GPU 分区,则可以为实例组启用 GPU 分区配置。GPU 分区允许您将分 GPUs 成更小的隔离分区,以提高资源利用率。有关更多信息,请参阅 在亚马逊中使用 GPU 分区 SageMaker HyperPod

    1. 切换使用 GPU 分区为该实例组启用 GPU 分区。

    2. 从适用于您的实例类型的可用选项中选择 GPU 分区配置文件。每个配置文件都定义 GPU 切片配置和内存分配。

  10. 选择添加实例组

快速设置默认值

本部分列出了创建集群的所有默认设置,包括将在集群创建过程中创建的所有新AWS资源。检查默认设置。

在 “自定义设置” 部分,按照以下步骤使用 Amazon EKS 编排创建您的第一个 HyperPod 集群。

常规设置

指定新集群的名称。创建集群后,无法更改该名称。

对于实例恢复,选择自动 – 推荐

Networking

配置集群内和集群 in-and-out的网络设置。为了使用 Amazon EKS 编排 SageMaker HyperPod 集群,VPC 会自动设置为使用您选择的 EKS 集群配置的 VPC。

  1. 对于 VPC,如果您已经拥有可以让 SageMaker AI 访问您的 VPC 的 VPC,请选择您自己的 VPC。要创建新的 VPC,请按照 Amazon Virtual Private Cloud 用户指南中的创建 VPC 进行操作。您可以将其保留为 “” 以使用默认 SageMaker AI VPC。

  2. 对于 VPC IPv4 网段,请输入您的 VPC 的起始 IP。

  3. 对于可用区,请选择 HyperPod 将在其中为您的集群创建子网的可用区 (AZ)。选择 AZs 与您的加速计算容量位置相匹配的选项。

  4. 对于安全组,选择附加到 Amazon EKS 集群的安全组,或其入站流量由与 Amazon EKS 集群关联的安全组允许的安全组。要创建新的安全组,请转至 Amazon VPC 控制台。

编排

按照以下步骤操作,创建或选择要用作编排工具的 Amazon EKS 集群。

  1. 对于 EKS 集群,选择创建新的 Amazon EKS 集群或使用现有 Amazon EKS 集群。

    如果需要创建新的 EKS 集群,则可从 EKS 集群部分创建它,而无需打开 Amazon EKS 控制台。

    注意

    您选择的 VPC 子网必须是私 HyperPod 有的。

    提交新的 EKS 集群创建请求后,请等待 EKS 集群变为 Active 状态。

  2. 对于 Kubernetes 版本,请从下拉菜单中选择版本。有关 Kubernetes 版本的更多信息,请参阅《Amazon EKS 用户指南》中的了解 EKS 上的 Kubernetes 版本生命周期

  3. 对于运算符,选择使用默认 Helm 图表和插件不要安装运算符。该选项默认设置为使用默认 Helm 图表和插件,可用于在 EKS 集群上安装运算符。有关默认 Helm 图表和插件的更多信息,请参见helm_chart GitHub存储库。有关更多信息,请参阅 使用 Helm 在 Amazon EKS 集群上安装软件包

  4. 对于已启用的运算符,请查看已启用的运算符列表。要编辑运算符,请取消选中顶部框,然后选择要为 EKS 集群启用的运算符。

    注意

    要 HyperPod 与 EKS 一起使用,您必须在 EKS 集群上安装启用操作员的 Helm 图表和附加组件。这些组件将 EKS 配置为控制平面, HyperPod 并为工作负载管理和编排提供了必要的设置。

实例组

要添加实例组,请选择添加组。每个实例组都可以进行不同的配置,您可以创建一个异构集群,该集群由具有不同实例类型的多个实例组组成。要部署集群,您必须添加至少一个实例组。执行以下步骤来创建实例组。

  1. 对于实例组类型,选择标准受限实例组(RIG)。通常,您将选择标准,此选项提供了通用计算环境,且无额外安全限制。受限实例组(RIG)是用于基础模型自定义的专用环境(例如 Amazon Nova)。有关为 Amazon Nova 模型自定义设置 RIG 的更多信息,请参阅亚马逊上的 Amazon Nova 定制 SageMaker HyperPod

  2. 对于名称,指定实例组的名称。

  3. 对于实例容量,选择按需容量或训练计划来预留计算资源。

  4. 对于实例类型,为实例组选择实例。

    重要

    请确保为账户选择具有足够配额以及充足的未分配 IP 地址的实例类型。要查看或请求更多配额,请参阅 SageMaker HyperPod 配额

  5. 对于实例数量,指定一个不超过集群使用实例配额的整数。在本教程中,为所有三个组输入 1

  6. 对于目标可用区,选择将在其中预调配实例的可用区。可用区应与加速计算容量所在的位置相对应。

  7. 对于每个实例的附加存储卷(GB)– 可选,指定 1 到 16384 之间的整数,以千兆字节(GB)为单位设置附加 Elastic Block Store(EBS)卷的大小。EBS 卷附加到实例组的每个实例。附加 EBS 卷的默认挂载路径为 /opt/sagemaker。成功创建集群后,您可以 SSH 登录集群实例(节点),并通过运行 df -h 命令验证 EBS 卷是否已正确加载。如 Amazon Elastic Block Store 用户指南中的 Amazon EBS 卷部分所述,附加 EBS 卷可提供稳定、非实例和独立持久化的存储。

  8. 对于实例深度运行状况检查,选择您的选项。深度运行状况检查可在创建期间以及软件更新后监控实例的运行状况,启用后,它会通过重启或替换的方式自动恢复故障实例。要了解更多信息,请参阅 深度运行状况检查

  9. 对于使用 GPU 分区-可选,如果您的实例类型支持使用多实例 GPU (MIG) 进行 GPU 分区,则可以启用此选项来为实例组配置 GPU 分区配置文件。GPU 分区允许您将分 GPUs 成更小的隔离分区,以提高资源利用率。有关更多信息,请参阅 在亚马逊中使用 GPU 分区 SageMaker HyperPod

    1. 切换使用 GPU 分区为该实例组启用 GPU 分区。

    2. 从适用于您的实例类型的可用选项中选择 GPU 分区配置文件。每个配置文件都定义 GPU 切片配置和内存分配。

  10. 选择添加实例组

生命周期脚本

您可以选择使用默认生命周期脚本或自定义生命周期脚本,这些脚本将存储在 Amazon S3 存储桶中。您可以在 Aw esome 分布式培训 GitHub 存储库中查看默认生命周期脚本。要了解有关生命周期脚本的更多信息,请参阅使用生命周期脚本自定义 SageMaker HyperPod集群

  1. 对于生命周期脚本,选择使用默认生命周期脚本或自定义生命周期脚本。

  2. 对于生命周期脚本的 S3 存储桶,选择创建新的存储桶或使用现有存储桶来存储生命周期脚本。

Permissions

选择或创建允许 HyperPod 代表您运行和访问必要AWS资源的 IAM 角色。有关更多信息,请参阅 的 IAM 角色适用于 SageMaker HyperPod

仓储服务

配置要在 FSx 集群上配置 Lustre 文件系统。 HyperPod

  1. 对于文件系统,请为 Lustre 文件系统选择现有的, FSx 为 Lustre 文件系统创建一个新的 FSx 文件系统,或者不要 FSx 为 Lustre 文件系统置备。

  2. 对于每单位存储的吞吐量,选择预调配存储中每 TiB 可用的吞吐量。

  3. 存储容量中,输入以 TB 为单位的容量值。

  4. 对于数据压缩类型,选择LZ4启用数据压缩。

  5. 对于 Lustre 版本,查看为新文件系统推荐的值。

标签 – 可选

对于标签-可选,向新集群添加密钥和值对,并将集群作为AWS资源进行管理。要了解更多信息,请参阅标记您的 AWS 资源

部署资源

使用快速设置自定义设置完成集群配置后,选择以下选项以启动资源预调配和集群创建。

  • 提交- SageMaker AI 将开始配置默认配置资源并创建集群。

  • 下载 CloudFormation 模板参数-您将下载配置参数 JSON 文件并运行AWS CLI命令部署 CloudFormation 堆栈以配置配置资源并创建集群。如果需要,您可以编辑已下载的参数 JSON 文件。如果选择此选项,请在使用CloudFormation模板创建 SageMaker HyperPod 集群中查看更多说明。