針對 GPU 執行個體使用 EKS 最佳化AMIs - Amazon EKS

協助改進此頁面

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

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

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

針對 GPU 執行個體使用 EKS 最佳化AMIs

Amazon EKS 支援 GPU 執行個體的 EKS 最佳化 Amazon Linux 和 Bottlerocket AMIs。EKS 最佳化的加速 AMIs 透過為加速 Kubernetes 堆疊提供預先建置且經過驗證的作業系統映像,簡化在 EKS 叢集中執行 AI 和 ML 工作負載。除了標準 EKS 最佳化 AMIs 中包含的核心 Kubernetes 元件之外,EKS 最佳化加速 AMIs 還包含執行 NVIDIA GPU 和 P EC2 執行個體所需的核心模組G和驅動程式,以及 EKS 叢集中的 AWS GPU InferentiaTrainium EC2 執行個體。

下表顯示每個 EKS 最佳化加速 AMI 變體支援的 GPU 執行個體類型。如需 AMI 變體的最新更新,請參閱 GitHub 上的 EKS 最佳化 AL2023 版本Bottlerocket 版本

EKS AMI 變體 EC2 執行個體類型

AL2023 x86_64 NVIDIA

p6-b300、p6-b200、p5、p5e、p5en、p4d、p4de、p3、p3dn、gr6、g6、g6e、g6f、gr6f、g5、g4dn

AL2023 ARM NVIDIA

p6e-gb200、g5g

AL2023 x86_64 Neuron

inf1、inf2、trn1、trn2

Bottlerocket x86_64 aws-k8s-nvidia

p6-b300、p6-b200、p5、p5e、p5en、p4d、p4de、p3、p3dn、gr6、g6、g6e、g6f、gr6f、g5、g4dn

Bottlerocket aarch64/arm64 aws-k8s-nvidia

g5g

Bottlerocket x86_64 aws-k8s

inf1、inf2、trn1、trn2

EKS 最佳化 NVIDIA AMIs

使用 EKS 最佳化 NVIDIA AMIs,即表示您同意 NVIDIA 的雲端最終使用者授權合約 (EULA)

若要尋找最新的 EKS 最佳化 NVIDIA AMIs,請參閱 擷取建議的 Amazon Linux AMI ID擷取建議的 Bottlerocket AMI ID

搭配 EKS 最佳化 AL2023 或 Bottlerocket NVIDIA AMIs 使用 Amazon Elastic Fabric Adaptor (EFA) 時,您必須分別安裝 EFA 裝置外掛程式。如需詳細資訊,請參閱使用 Elastic Fabric Adapter 在 Amazon EKS 上執行機器學習訓練

EKS AL2023 NVIDIA AMIs

搭配 EKS 最佳化 AL2023 NVIDIA AMI 使用 NVIDIA GPU 運算子時,您必須停用驅動程式和工具組的運算子安裝,因為這些已包含在 EKS AMIs中。 AL2023 AMIs EKS 最佳化 AL2023 NVIDIA AMIs 不包含 NVIDIA Kubernetes 裝置外掛程式或 NVIDIA DRA 驅動程式,且必須單獨安裝。如需詳細資訊,請參閱安裝 NVIDIA Kubernetes 裝置外掛程式

除了標準 EKS AMI 元件之外,EKS 最佳化 AL2023 NVIDIA AMIs 還包含下列元件。

  • NVIDIA 驅動程式

  • NVIDIA CUDA 使用者模式驅動程式

  • NVIDIA 容器工具組

  • NVIDIA 布料管理員

  • NVIDIA 持久性

  • NVIDIA IMEX 驅動程式

  • NVIDIA NVLink 子網路管理員

  • EFA 最小值 (核心模組和 rdma-core)

如需 NVIDIA CUDA 使用者模式驅動程式和應用程式容器內所用 CUDA 執行時間/程式庫的詳細資訊,請參閱 NVIDIA 文件。從 顯示的 CUDA 版本nvidia-smi是安裝在主機上的 NVIDIA CUDA 使用者模式驅動程式版本,必須與應用程式容器中使用的 CUDA 執行時間/程式庫相容。

EKS 最佳化 AL2023 NVIDIA AMIs 支援 Kubernetes 版本 1.33 及更高版本的核心 6.12,以及所有 Kubernetes 版本的 NVIDIA 驅動程式 580 版本。使用 CUDA 13+ 需要 NVIDIA 580 驅動程式。

如需包含在 AMIs 中的元件版本詳細資訊,請參閱 GitHub 上的 EKS 最佳化 AL2023 版本。如需 EKS AMI 如何設定 NVIDIA 相依性的詳細資訊,請參閱 EKS AL2023 NVIDIA AMIs 安裝指令碼核心載入指令碼。您可以使用 dnf list installed命令,在執行中的 EC2 執行個體上找到已安裝套件及其版本的清單。

使用 EKS 最佳化 AMIs 做為基礎建置自訂 AMIs 時,不建議或支援執行作業系統升級 (即 dnf upgrade) 或升級 EKS 最佳化 AMIs 中包含的任何 Kubernetes 或 GPU 套件,因為這會破壞元件相容性。如果您確實升級 EKS 最佳化 AMIs 中包含的作業系統或套件,建議您在部署到生產環境之前,先在開發或預備環境中徹底測試。

為 GPU 執行個體建置自訂 AMIs 時,建議您為要執行的每個執行個體類型產生和系列分別建置自訂 AMIs。EKS 最佳化加速 AMIs 會根據基礎執行個體類型產生和系列,在執行時間選擇性地安裝驅動程式和套件。如需詳細資訊,請參閱安裝執行時間的 EKS AMI 指令碼。

EKS Bottlerocket NVIDIA AMIs

搭配 EKS 最佳化 Bottlerocket NVIDIA AMIs 使用 NVIDIA GPU 運算子時,您必須停用驅動程式、工具組和裝置外掛程式的運算子安裝,因為這些已包含在 EKS AMIs 中。

除了標準 EKS AMI 元件之外,EKS 最佳化 Bottlerocket NVIDIA AMIs 還包含下列元件。EFA (核心模組和 rdma-core) 的最低相依性安裝在所有 Bottlerocket 變體中。

  • NVIDIA Kubernetes 裝置外掛程式

  • NVIDIA 驅動程式

  • NVIDIA CUDA 使用者模式驅動程式

  • NVIDIA 容器工具組

  • NVIDIA 布料管理員

  • NVIDIA 持久性

  • NVIDIA IMEX 驅動程式

  • NVIDIA NVLink 子網路管理員

  • NVIDIA MIG 管理員

如需 NVIDIA CUDA 使用者模式驅動程式和應用程式容器內所用 CUDA 執行時間/程式庫的詳細資訊,請參閱 NVIDIA 文件。從 顯示的 CUDA 版本nvidia-smi是安裝在主機上的 NVIDIA CUDA 使用者模式驅動程式版本,必須與應用程式容器中使用的 CUDA 執行時間/程式庫相容。

如需已安裝套件及其版本的詳細資訊,請參閱 Bottlerocket 文件中的 Bottlerocket 版本資訊。EKS 最佳化 Bottlerocket NVIDIA AMIs 支援 Kubernetes 版本 1.33 及更高版本的核心 6.12,以及 Kubernetes 版本 1.34 及更高版本的 NVIDIA 驅動程式 580 版本。使用 CUDA 13+ 需要 NVIDIA 580 驅動程式。

EKS 最佳化 Neuron AMIs

如需如何使用 Neuron 搭配 Amazon EKS 執行訓練和推論工作負載的詳細資訊,請參閱下列參考:

若要尋找最新的 EKS 最佳化 Neuron AMIs,請參閱 擷取建議的 Amazon Linux AMI ID擷取建議的 Bottlerocket AMI ID

搭配 EKS 最佳化 AL2023 或 Bottlerocket Neuron AMIs 使用 Amazon Elastic Fabric Adaptor (EFA) 時,您必須分別安裝 EFA 裝置外掛程式。如需詳細資訊,請參閱使用 Elastic Fabric Adapter 在 Amazon EKS 上執行機器學習訓練

EKS AL2023 Neuron AMIs

EKS 最佳化的 AL2023 Neuron AMIs 不包含 Neuron Kubernetes 裝置外掛程式或 Neuron Kubernetes 排程器延伸,且必須單獨安裝。如需詳細資訊,請參閱安裝 Neuron Kubernetes 裝置外掛程式

除了標準 EKS AMI 元件之外,EKS 最佳化 AL2023 Neuron AMIs 還包含下列元件。

  • Neuron 驅動程式 (aws-neuronx-dkms)

  • Neuron 工具 (aws-neuronx-tools)

  • EFA 最小值 (核心模組和 rdma-core)

如需 EKS AMI 如何設定 Neuron 相依性的詳細資訊,請參閱 EKS AL2023 Neuron AMIs 安裝指令碼。請參閱 GitHub 上的 EKS 最佳化 AL2023 版本,以查看 AMIs 中包含的元件版本。您可以使用 dnf list installed命令,在執行中的 EC2 執行個體上找到已安裝套件及其版本的清單。

EKS Bottlerocket Neuron AMIs

標準 Bottlerocket 變體 (aws-k8s) 包含在 AWS Inferentia 或 Trainium EC2 執行個體上執行時自動偵測和載入的 Neuron 相依性。

EKS 最佳化 Bottlerocket AMIs 不包含 Neuron Kubernetes 裝置外掛程式或 Neuron Kubernetes 排程器延伸模組,且必須單獨安裝。如需詳細資訊,請參閱安裝 Neuron Kubernetes 裝置外掛程式

除了標準 EKS AMI 元件之外,EKS 最佳化 Bottlerocket Neuron AMIs 還包含下列元件。

  • Neuron 驅動程式 (aws-neuronx-dkms)

  • EFA 最小值 (核心模組和 rdma-core)

搭配 Neuron 執行個體使用 EKS 最佳化 Bottlerocket AMIs 時,必須在 Bottlerocket 使用者資料中設定下列項目。此設定允許容器根據工作負載規格中提供的 runAsUserrunAsGroup值取得掛載 Neuron 裝置的擁有權。如需 Bottlerocket 中 Neuron 支援的詳細資訊,請參閱 GitHub 上的 Quickstart on EKS 讀我檔案。

[settings] [settings.kubernetes] device-ownership-from-security-context = true

如需 EKS 最佳化 Bottlerocket AMI 中 Neuron 驅動程式版本的資訊,請參閱 Bottlerocket 核心套件變更日誌。 AMIs