

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

# 開始使用 SageMaker HyperPod 中的 Amazon EKS 支援
<a name="sagemaker-hyperpod-eks-prerequisites"></a>

除了 SageMaker HyperPod 的一般 [使用 SageMaker HyperPod 的先決條件](sagemaker-hyperpod-prerequisites.md) 之外，請檢查下列使用 Amazon EKS 協作 SageMaker HyperPod 叢集的要求和考量。

**重要**  
您可以使用 AWS 管理主控台 和 CloudFormation設定用於建立 SageMaker HyperPod 叢集的資源組態。如需詳細資訊，請參閱[使用 Amazon EKS 協同運作建立 SageMaker HyperPod 叢集](sagemaker-hyperpod-eks-operate-console-ui-create-cluster.md)及[使用 CloudFormation 範本建立 SageMaker HyperPod 叢集](smcluster-getting-started-eks-console-create-cluster-cfn.md)。

**需求**

**注意**  
在建立 HyperPod 叢集之前，您需要一個使用 VPC 設定並使用 Helm 安裝的執行中 Amazon EKS 叢集。
+ 如果使用 SageMaker AI 主控台，您可以在 HyperPod 叢集主控台頁面內建立 Amazon EKS 叢集。如需詳細資訊，請參閱[使用 Amazon EKS 協同運作建立 SageMaker HyperPod 叢集](sagemaker-hyperpod-eks-operate-console-ui-create-cluster.md)。
+ 如果使用 AWS CLI，您應該先建立 Amazon EKS 叢集，再建立要關聯的 HyperPod 叢集。如需詳細資訊，請參閱《Amazon EKS 使用者指南》中的[建立 Amazon EKS 叢集](https://docs.aws.amazon.com/eks/latest/userguide/create-cluster.html)。

佈建您的 Amazon EKS 叢集時，請考慮下列事項：

1. **Kubernetes 版本支援**
   + SageMaker HyperPod 支援 Kubernetes 版本 1.28、1.29、1.30、1.31、1.32、1.33 和 1.34。

1. **Amazon EKS 叢集驗證模式**
   + SageMaker HyperPod 支援的 Amazon EKS 叢集驗證模式為 `API` 和 `API_AND_CONFIG_MAP`。

1. **聯網**
   + SageMaker HyperPod 需要 Amazon VPC 容器網路介面 (CNI) 外掛程式 1.18.3 版或更新版本。
**注意**  
[AWS Kubernetes 專用 VPC CNI 外掛程式](https://github.com/aws/amazon-vpc-cni-k8s)是 SageMaker HyperPod 唯一支援的 CNI。
   + 對於 HyperPod 叢集，VPC 中的[子網路類型](https://docs.aws.amazon.com/vpc/latest/userguide/configure-subnets.html#subnet-types)必須是私有。

1. **IAM 角色**
   + 確保 HyperPod 的必要 IAM 角色已依照 [AWS Identity and Access Management for SageMaker HyperPod](sagemaker-hyperpod-prerequisites-iam.md) 一節中的指引設定。

1. **Amazon EKS 叢集附加元件**
   + 您可以繼續使用 Amazon EKS 提供的各種附加元件，例如 [Kube-proxy](https://docs.aws.amazon.com/eks/latest/userguide/add-ons-kube-proxy.html)、[CoreDNS](https://docs.aws.amazon.com/eks/latest/userguide/add-ons-coredns.html)、[Amazon VPC Container Network Interface (CNI)](https://docs.aws.amazon.com/eks/latest/userguide/add-ons-vpc-cni.html) 外掛程式、Amazon EKS Pod 身分、GuardDuty 代理程式、Amazon FSx Container Storage Interface (CSI) 驅動程式、Amazon S3 CSI 驅動程式掛載點、 AWS Ditro for OpenTelemetry 和 CloudWatch 可觀測性代理程式。

**使用 Amazon EKS 設定 SageMaker HyperPod 叢集的考量事項**
+ 您必須根據節點的類型使用不同的 IAM 角色。對於 HyperPod 節點，請使用以 [SageMaker HyperPod 的 IAM 角色](sagemaker-hyperpod-prerequisites-iam.md#sagemaker-hyperpod-prerequisites-iam-role-for-hyperpod) 為基礎的角色。對於 Amazon EKS 節點，請參閱 [Amazon EKS 節點 IAM 角色](https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html)。
+ 您可以使用兩種方法，在 SageMaker HyperPod 節點上佈建和掛載其他 Amazon EBS 磁碟區：使用 [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ClusterInstanceGroupSpecification.html#sagemaker-Type-ClusterInstanceGroupSpecification-InstanceStorageConfigs](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ClusterInstanceGroupSpecification.html#sagemaker-Type-ClusterInstanceGroupSpecification-InstanceStorageConfigs) 進行叢集層級磁碟區佈建 (在建立或更新執行個體群組時可用)，或使用 Amazon Elastic Block Store (Amazon EBS) 容器儲存介面 (CSI) 驅動程式進行動態 Pod 層級磁碟區管理。使用 [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ClusterInstanceGroupSpecification.html#sagemaker-Type-ClusterInstanceGroupSpecification-InstanceStorageConfigs](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ClusterInstanceGroupSpecification.html#sagemaker-Type-ClusterInstanceGroupSpecification-InstanceStorageConfigs)，將[本機路徑](https://kubernetes.io/docs/concepts/storage/volumes/#local)設定為 `/opt/sagemaker`，以將磁碟區正確掛載到您的 Amazon EKS Pod。如需如何在 HyperPod 節點上部署 [Amazon EBS CSI](https://docs.aws.amazon.com/eks/latest/userguide/ebs-csi.html) 控制器的詳細資訊，請參閱[在 SageMaker HyperPod EKS 叢集上使用 Amazon EBS CSI 驅動程式](sagemaker-hyperpod-eks-ebs.md)。
+ 如果您使用執行個體類型標籤定義排程限制，請確定您使用字首為 `ml.` 的 SageMaker AI ML 執行個體類型。例如，對於 P5 執行個體，請使用 `ml.p5.48xlarge` 而非 `p5.48xlarge`。

**使用 Amazon EKS 設定 SageMaker HyperPod 叢集網路的考量事項**
+ 每個 HyperPod 叢集執行個體都支援一個彈性網路介面 (ENI)。如需每個執行個體類型的 Pod 數量上限，請參閱下表。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/sagemaker/latest/dg/sagemaker-hyperpod-eks-prerequisites.html)
+ 根據預設，只有具有 `hostNetwork = true` 的 Pod 可以存取 Amazon EC2 執行個體中繼資料服務 (IMDS)。使用 Amazon EKS Pod 身分或服務[帳戶 (IRSA) 的 IAM 角色](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html)來管理對 Pod AWS 登入資料的存取。
+ EKS 協作的 HyperPod 叢集支援雙 IP 定址模式，允許在啟用 IPv6 的 VPC 和子網路環境中，針對 IPv6 Amazon EKS 叢集使用 IPv4 或 IPv6 進行設定。如需詳細資訊，請參閱[使用自訂 Amazon VPC 設定 SageMaker HyperPod](sagemaker-hyperpod-prerequisites.md#sagemaker-hyperpod-prerequisites-optional-vpc)。

**使用 HyperPod 叢集彈性功能的考量事項**
+ CPU 執行個體不支援節點自動取代。
+ 需要安裝 HyperPod 運作狀態監控代理程式，節點自動復原才能運作。您可以使用 Helm 安裝代理程式。如需詳細資訊，請參閱[使用 Helm 在 Amazon EKS 叢集上安裝套件](sagemaker-hyperpod-eks-install-packages-using-helm-chart.md)。
+ HyperPod 深度運作狀態檢查和運作狀態監控代理程式支援 GPU 和 Trn 執行個體。
+ SageMaker AI 會在節點進行深層運作狀態檢查時將下列污點套用至這些節點：

  ```
  effect: NoSchedule
  key: sagemaker.amazonaws.com/node-health-status
  value: Unschedulable
  ```
**注意**  
您無法在開啟 `DeepHealthChecks` 的情況下，將自訂污點新增至執行個體群組中的節點。

 一旦您的 Amazon EKS 叢集執行中，請先依照[使用 Helm 在 Amazon EKS 叢集上安裝套件](sagemaker-hyperpod-eks-install-packages-using-helm-chart.md)中的指示使用 Helm 套件管理員設定您的叢集，再建立您的 HyperPod 叢集。