使用 Helm 在亚马逊EKS集群上安装软件包 - Amazon SageMaker

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

使用 Helm 在亚马逊EKS集群上安装软件包

在创建 SageMaker HyperPod 集群并将其连接到 Amazon 集EKS群之前,您应该使用适用于 Kubernetes 的包管理器 Helm 来安装软件包。Helm 是一款用于为 Kubernetes 集群设置安装过程的开源工具。它可以实现依赖项安装的自动化和简化,并简化将 Amazon EKS 集群准备为集群的协调器(控制平面)所需的各种设置。 SageMaker HyperPod

SageMaker HyperPod 服务团队提供了一个 Helm chart 包,它捆绑了关键依赖项,例如设备/ EFA 插件、Kueue、Kubeflo w Training Operator 以及相关的权限配置。

重要

此头盔安装步骤是必需步骤。未能使用提供的 Helm 图表配置 Amazon 集EKS群可能会导致 SageMaker HyperPod 集群无法正常运行或创建过程完全失败。无法修改aws-hyperpod命名空间名称。

  1. 在本地计算机上@@ 安装 Helm

  2. 下载 SageMaker HyperPod 位于SageMaker HyperPod CLI存储库helm_chart/HyperPodHelmChart中提供的 Helm 图表。

    git clone https://github.com/aws/sagemaker-hyperpod-cli.git cd sagemaker-hyperpod-cli/helm_chart
  3. 更新 Helm 图表的依赖关系,预览将对 Kubernetes 集群所做的更改,然后安装 Helm 图表。

    helm dependencies update HyperPodHelmChart
    helm install hyperpod-dependencies HyperPodHelmChart --dry-run
    helm install hyperpod-dependencies HyperPodHelmChart

总而言之,Helm 安装会为您的 Amazon EKS 集群设置各种组件,包括任务调度和队列 (Kueue)、存储管理、MLflow集成和 Kubeflow。此外,图表还安装了以下组件,用于与集 SageMaker HyperPod 群弹性功能集成,这些功能是必需的组件。

  • He@@ alth Monitoring 代理 — 这将安装由 SageMaker HyperPod提供的运行状况监控代理。如果您想监控您的 HyperPod 集群,则必须执行此操作。运行状况监控代理以 Docker 镜像的形式提供,如下所示。在 Helm 图表中提供的值.yaml 中,图像是预设的。GPU基于代理支持的实例和 T rainium-accelerator-based 实例(trn1trn1ninf2)。它已安装到aws-hyperpod命名空间中。

    590183648699.dkr.ecr.us-west-2.amazonaws.com/hyperpod-health-monitoring-agent:1.0.230.0_1.0.19.0
  • 深度运行状况检查-这将设置 SageMaker HyperPod 深度运行状况检查服务帐号ClusterRole、和ClusterRoleBindingaws-hyperpod命名空间。

  • Kubeflow MPI 运算符MPI运算符是一个 Kubernetes 运算符,它使用消息传递接口 () 在 Kubernetes 集群上使用消息传递接口 () 简化分布式机器学习 (MLHPC) 和高性能计算 (MPI) 工作负载的运行。它会安装 Oper MPI ator v0.5。它已安装到mpi-operator命名空间中。

  • nvidia-device-plugin— 这是一个 Kubernetes 设备插件,允许您自动公开NVIDIAGPUs供亚马逊集群中的容器使用。EKS它允许 Kubernetes 分配并提供对该容器请求GPUs的访问权限。将实例类型与一起使用时为必填项GPU。

  • neuron-device-plugin— 这是一个 Kubernetes 设备插件,允许你自动公开 AWS 推理芯片供您的 Ama EKS zon 集群中的容器使用。它允许 Kubernetes 访问和使用 AWS 集群节点上的推理芯片。使用 Neuron 实例类型时是必需的。

  • aws-efa-k8s-device-plugin— 这是一个 Kubernetes 设备插件,允许使用 AWS Amazon EKS 集群上的弹性结构适配器 (EFA)。EFA是一种网络设备,可在集群中的实例之间提供低延迟和高吞吐量的通信。使用EFA支持的实例类型时为必填项。

有关使用所提供的 Helm 图表安装过程的更多信息,请参阅 SageMaker HyperPod CLI存储库中的README文件