View a markdown version of this page

為 AI/ML 工作負載設定 Amazon EKS 叢集 - Amazon EKS

協助改進此頁面

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

若要為本使用者指南貢獻內容,請點選每個頁面右側面板中的在 GitHub 上編輯此頁面連結。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

為 AI/ML 工作負載設定 Amazon EKS 叢集

提示

註冊即將舉行的 Amazon EKS AI/ML 研討會。

本節會引導您建立準備好執行推論工作負載的 Amazon EKS 叢集,包括使用 GPUs 的運算、監控堆疊和模型權重的 Amazon S3 儲存,以及必要的 AWS IAM 許可。

架構概觀

設定會建立下列基礎設施:

  • 具有啟用 GPU 節點的 EKS 叢集 — 由 Karpenter 管理的 NodePool,使用 Spot 容量搭配隨需備用,動態佈建 G 系列的 GPU 執行個體。

  • 監控堆疊 — Prometheus 會抓取叢集、節點和 GPU 指標,並將其遠端寫入 Amazon Managed Service for Prometheus (AMP)。Grafana 提供用於視覺化的儀表板。NVIDIA DCGM Exporter 新增 GPU 特定的指標,包括使用率、記憶體、溫度、耗電量、NVLink 頻寬和張量活動。

  • 模型權重 S3 儲存貯體 — 用於存放模型權重的 Amazon S3 儲存貯體,具有授予工作負載 Pod 讀取/寫入存取權的 EKS Pod Identity 關聯。

叢集運算選項

本指南提供兩種設定叢集的路徑。選擇其中一個,並持續執行所有步驟。

  • EKS Auto Mode — 單一命令會佈建已啟用 EKS Auto Mode 的 EKS 叢集。所有必要的元件都是out-of-the-box提供,包括 Karpenter 型自動擴展、EKS 節點監控代理程式、使用 SOCI 提取的快速容器,以及 NVIDIA 裝置外掛程式。

  • 自我管理的 Karpenter:您可以明確地安裝和設定每個元件:透過 進行 Karpentereksctl、透過其功能閘道進行自動節點修復、將 EKS 節點監控代理程式作為 EKS 附加元件,以及透過 Helm 進行 NVIDIA 裝置外掛程式。您也可以建立使用 EKS 最佳化 NVIDIA AL2023 AMIs 的自訂EC2NodeClass,並設定 SOCI。

您將設定的內容

步驟 說明

建立叢集

佈建 GPU 工作負載所需的 EKS 控制平面和叢集層級元件。

建立動態佈建的 GPU 節點

定義動態 GPU NodePool,在排程工作負載時佈建 G 系列 GPU 執行個體。

使用範例 Pod 進行測試

執行 Pod 來觸發 Karpenter nvidia-smi 佈建已啟用 GPU 的節點,以end-to-end驗證設定。

新增預留容量 (選用)

將隨需容量保留 (ODCR) 連接至 NodeClass,以使用 Spot/隨需備用進行預留優先。

安裝監控

使用遠端寫入 AMP 部署 kube-prometheus-stack (Prometheus + Grafana),以及適用於 GPU 指標的 NVIDIA DCGM Exporter。

建立模型權重儲存貯體

建立 S3 儲存貯體並設定 EKS Pod Identity,讓工作負載 Pod 可以讀取和寫入模型權重。

開始使用

如需使用 CLI AWS 的step-by-step說明,請參閱 使用 CLIs 為 AI/ML 工作負載設定 Amazon EKS 叢集