本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
开始使用 Amazon EKS 支持 SageMaker HyperPod
除了一使用 SageMaker HyperPod 的先决条件般内容外 SageMaker HyperPod,请查看以下使用 Amazon 编排 SageMaker HyperPod 集群的要求和注意事项。EKS
要求
注意
在创建 HyperPod 集群之前,您需要使用Helm配置VPC并安装一个正在运行的Amazon EKS 集群。
-
如果使用 SageMaker 控制台,则可以在EKS集群控制台页面中创建 Amazon HyperPod 集群。有关更多信息,请参阅 创建集 SageMaker HyperPod 群。
-
如果使用 Amazon CLI,您应该先创建一个 Amazon EKS 集群,然后再创建要关联的 HyperPod 集群。有关更多信息,请参阅亚马逊EKS用户指南中的创建亚马逊EKS集群。
在配置 Amazon EKS 集群时,请考虑以下几点:
-
Kubernetes 版本支持
-
SageMaker HyperPod 支持 Kubernetes 版本 1.28、1.29 和 1.30。
-
-
Amazon EKS 集群身份验证模式
-
支持的 Amazon EKS 集群的身份验证模式 SageMaker HyperPod 是
API
和API_AND_CONFIG_MAP
。
-
-
联网
-
SageMaker HyperPod 需要亚马逊VPC容器网络接口 (CNI) 插件版本 1.18.3 或更高版本。
注意
Amazon VPCCNIKubernetes 的插件
是唯一CNI支持的插件。 SageMaker HyperPod -
您的子网类型VPC必须是 HyperPod集群的私有子网。
-
-
IAM角色
-
确保按照本Amazon Identity and Access Management 对于 SageMaker HyperPod节中的指导设置必要的IAM角色。 HyperPod
-
-
Amazon EKS 集群插件
-
你可以继续使用亚马逊提供的各种插件,EKS例如 Kube-Proxy、Core 、DNS亚马逊VPC容器网络接口 () CNI 插件、亚马逊 EKS pod 身份、代理、亚马逊FSx容器存储接口 (CSI) 驱动程序 GuardDuty、亚马逊 S3 的 Mountpoint 驱动程序、CSI Amazon 的 OpenTelemetry发行版和 CloudWatch可观察性代理。
-
使用 Amazon 配置 SageMaker HyperPod 集群的注意事项 EKS
-
您无法将其他EBS卷直接挂载到在 HyperPod 集群节点上运行的 Pod 上。相反,您需要使用InstanceStorageConfigs来为 HyperPod 节点配置和装载更多EBS卷。请务必注意,在创建或更新 HyperPod 集群时,您只能将其他EBS卷附加到新的实例组。使用这些额外EBS卷配置实例组后,您需要在 Amazon EKS Pod 配置文件中将本地路径
设置为,才能将卷正确挂载 /opt/sagemaker
到您的 Amazon EKS Pod 上。 -
您可以在 HyperPod 节点上部署 Amazon EBSCSI(容器存储接口)控制器。但是,便于装载和卸载EBS卷的 Amazon EBS CSI 节点 DaemonSet只能在非HyperPod 实例上运行。如果您使用实例类型标签来定义调度约束,请确保使用前缀为的 SageMaker ML 实例类型。
ml.
例如,对于 P5 实例,请使用ml.p5.48xlarge
而不是。p5.48xlarge
使用 Amazon 为 SageMaker HyperPod 集群配置网络的注意事项 EKS
-
每个 HyperPod 集群实例都支持一个弹性网络接口 (ENI)。有关每种实例类型的最大 Pod 数,请参阅下表。
实例类型 吊舱的最大数量 ml.p4d.24xlarge 49 ml.p4de.24xlarge 49 ml.p5.48xlarge 49 ml.trn1.32xlarge 49 ml.trn1n.32xlarge 49 ml.g5.xlarge 14 ml.g5.2xlarge 14 ml.g5.4xlarge 29 ml.g5.8xlarge 29 ml.g5.12xlarge 49 ml.g5.16xlarge 29 ml.g5.24xlarge 49 ml.g5.48xlarge 49 ml.c5.large 9 ml.c5.xlarge 14 ml.c5.2xlarge 14 ml.c5.4xlarge 29 ml.c5.9xlarge 29 ml.c5.12xlarge 29 ml.c5.18xlarge 49 ml.c5.24xlarge 49 ml.c5n.large 9 ml.c5n.2xlarge 14 ml.c5n.4xlarge 29 ml.c5n.9xlarge 29 ml.c5n.18xlarge 49 ml.m5.large 9 ml.m5.xlarge 14 ml.m5.2xlarge 14 ml.m5.4xlarge 29 ml.m5.8xlarge 29 ml.m5.12xlarge 29 ml.m5.16xlarge 49 ml.m5.24xlarge 49 ml.t3.medium 5 ml.t3.large 11 ml.t3.xlarge 14 ml.t3.2xlarge 14 -
默认情况下,只有
hostNetwork = true
拥有 Amazon EC2 实例元数据服务 (IMDS) 访问权限的 Pod。使用 Amazon EKS Pod 身份或服务账户 (IRSA) 的IAM角色来管理对 Amazon Pod 的凭证。 -
SageMaker HyperPod 群集目前仅支持 IPv4 IP 寻址。IPv6目前不支持 IP 寻址。
使用集 HyperPod 群弹性功能的注意事项
CPU实例不支持自动替换节点。
需要安装 HyperPod 运行状况监控代理才能使节点自动恢复正常工作。可以使用 Helm 安装代理。有关更多信息,请参阅 使用 Helm 在亚马逊EKS集群上安装软件包。
-
HyperPod 深度运行状况检查和运行状况监控代理支持GPU和 Trn 实例。
-
SageMaker 当节点接受深度健康检查时,会对它们施加以下污点:
effect: NoSchedule key: sagemaker.amazonaws.com/node-health-status value: Unschedulable
注意
开
DeepHealthChecks
启后,您无法向实例组中的节点添加自定义污点。
Amazon EKS 集群运行后,请按照中的说明使用 Helm 包管理器配置集群,使用 Helm 在亚马逊EKS集群上安装软件包然后再创建 HyperPod 集群。