Erste Schritte mit der Amazon-EKS-Unterstützung in SageMaker HyperPod - Amazon SageMaker AI

Erste Schritte mit der Amazon-EKS-Unterstützung in SageMaker HyperPod

Bitte beachten Sie zusätzlich zu den allgemeinen Voraussetzungen für die Verwendung von SageMaker HyperPod für SageMaker HyperPod die folgenden Anforderungen und Überlegungen für die Orchestrierung von SageMaker-HyperPod-Clustern mit Amazon EKS.

Wichtig

Sie können die Ressourcenkonfiguration für die Erstellung von SageMaker-HyperPod-Clustern mithilfe von AWS-Managementkonsole und CloudFormation einrichten. Weitere Informationen erhalten Sie unter Erstellen eines SageMaker-HyperPod-Clusters mit Amazon-EKS-Orchestrierung und Erstellen von SageMaker-HyperPod-Clustern unter Verwendung von CloudFormation-Vorlagen.

Voraussetzungen

Anmerkung

Bevor Sie einen HyperPod-Cluster erstellen, benötigen Sie einen laufenden Amazon-EKS-Cluster, der mit VPC konfiguriert und mit Helm installiert wurde.

Beachten Sie bei der Bereitstellung Ihres Amazon-EKS-Clusters Folgendes:

  1. Support für Kubernetes-Version

    • SageMaker HyperPod unterstützt die Kubernetes-Versionen 1.28, 1.29, 1.30, 1.31 und 1.32.

  2. Cluster-Authentifizierungsmodus von Amazon EKS

    • Die Authentifizierungsmodi eines Amazon-EKS-Clusters, die von SageMaker HyperPod unterstützt werden, sind API und API_AND_CONFIG_MAP.

  3. Netzwerkfunktionen

    • SageMaker HyperPod erfordert das Amazon VPC Container Network Interface (CNI)-Plug-in in der Version 1.18.3 oder höher.

      Anmerkung

      Das AWS VPC CNI-Plugin für Kubernetes ist das einzige CNI, das von SageMaker HyperPod unterstützt wird.

    • Der Typ des Subnetzes in Ihrer VPC muss für HyperPod-Cluster privat sein.

  4. IAM-Rollen

  5. Cluster-Add-ons von Amazon EKS

    • Sie können weiterhin die verschiedenen von Amazon EKS bereitgestellten Add-ons verwenden, darunter Kube-proxy, CoreDNS, das Amazon VPC Container Network Interface (CNI)-Plugin, Amazon EKS Pod Identity, den GuardDuty-Agenten, den Amazon FSx Container Storage Interface (CSI)-Treiber, den Mountpoint für den CSI-Treiber von Amazon S3, die AWS-Distribution für OpenTelemetry und den CloudWatch-Beobachtbarkeits-Agenten.

Überlegungen zur Konfiguration von SageMaker-HyperPod-Clustern mit Amazon EKS

  • Sie müssen je nach Art Ihrer Knoten unterschiedliche IAM-Rollen verwenden. Verwenden Sie für HyperPod-Knoten eine Rolle, die auf IAM-Rolle für SageMaker HyperPod basiert. Informationen zu Amazon-EKS-Knoten finden Sie unter IAM-Rolle für Amazon-EKS-Knoten.

  • Sie können zusätzliche Amazon-EBS-Volumes auf SageMaker-HyperPod-Knoten auf zwei Arten bereitstellen und mounten: Verwenden Sie InstanceStorageConfigs für die Volume-Bereitstellung auf Cluster-Ebene (verfügbar beim Erstellen oder Aktualisieren von Instance-Gruppen) oder verwenden Sie den Treiber von Amazon Elastic Block Store (Amazon EBS) Container Storage Interface (CSI) für dynamisches Volume-Management auf Pod-Ebene. Legen Sie mit InstanceStorageConfigs den lokalen Pfad auf /opt/sagemaker fest, um die Volumes ordnungsgemäß in Ihren Amazon-EKS-Pods zu mounten. Informationen zur Bereitstellung des Controllers von Amazon EBS CSI auf HyperPod-Knoten finden Sie unter Verwenden des Amazon-EBS-CSI-Treibers auf SageMaker HyperPod EKS-Clustern.

  • Wenn Sie Instance-Typ-Labels zur Definition von Planungsbeschränkungen verwenden, stellen Sie sicher, dass Sie die ML-Instance-Typen von SageMaker AI mit dem Präfix ml. verwenden. Verwenden Sie beispielsweise für P5-Instances ml.p5.48xlarge anstelle von p5.48xlarge.

Überlegungen zur Konfiguration des Netzwerks für SageMaker-HyperPod-Cluster mit Amazon EKS

  • Jede HyperPod-Cluster-Instance unterstützt eine Elastic-Network-Schnittstelle (ENI). Die maximale Anzahl von Pods pro Instance-Typ finden Sie in der folgenden Tabelle.

    Instance-Typ Maximale Anzahl von Pods
    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
    ml.c6.xlarge 14
    ml.g6.2xlarge 14
    ml.g6.4xlarge 29
    ml.g6.8xlarge 29
    ml.g6.12xlarge 29
    ml.g6.16xlarge 49
    ml.g6.24xlarge 49
    ml.g6.48xlarge 49
    ml.gr6.4xlarge 29
    ml.gr6.8xlarge 29
    ml.g6e.xlarge 14
    ml.g6e.2xlarge 14
    ml.g6e.4xlarge 29
    ml.g6e.8xlarge 29
    ml.g6e.12xlarge 29
    ml.g6e.16xlarge 49
    ml.g6e.24xlarge 49
    ml.g6e.48xlarge 49
    ml.g6e.48xlarge 49
  • Standardmäßig haben nur Pods mit hostNetwork = true Zugriff auf den Amazon EC2 Instance Metadata Service (IMDS). Verwenden Sie die Amazon EKS Pod Identity oder die IAM-Rollen für Servicekonten (IRSA), um den Zugriff auf die AWS-Anmeldeinformationen für Pods zu verwalten.

  • EKS-orchestrierte HyperPod-Cluster unterstützen zwei IP-Adressierungsmodi, wodurch die Konfiguration mit IPv4 oder IPv6 für Amazon-EKS-Cluster IPv6 in IPv6-fähigen VPC- und Subnetzumgebungen möglich ist. Weitere Informationen finden Sie unter Einrichtung von SageMaker HyperPod mit einer benutzerdefinierten Amazon VPC.

Überlegungen zur Verwendung der HyperPod-Cluster-Ausfallsicherheit

  • Die automatische Ersetzung von Knoten wird für CPU-Instances nicht unterstützt.

  • Der HyperPod-Agent zur Zustandsüberwachung muss installiert sein, damit die automatische Wiederherstellung von Knoten funktioniert. Der Agent kann mit Helm installiert werden. Weitere Informationen finden Sie unter Installation von Paketen auf dem Amazon-EKS-Cluster mit Helm.

  • Der HyperPod-Agent für umfassende Zustandsprüfungen und -überwachung unterstützt GPU- und Trn-Instances.

  • SageMaker AI wendet den folgenden MakelTaint auf Knoten an, wenn sie tiefgreifenden Zustandsprüfungen unterzogen werden:

    effect: NoSchedule key: sagemaker.amazonaws.com/node-health-status value: Unschedulable
    Anmerkung

    Es ist nicht möglich, benutzerdefinierte Taints zu Knoten in Instance-Gruppen hinzuzufügen, bei denen DeepHealthChecks aktiviert ist.

Sobald Ihr Amazon-EKS-Cluster ausgeführt wird, konfigurieren Sie Ihren Cluster mit dem Helm-Paketmanager wie unter Installation von Paketen auf dem Amazon-EKS-Cluster mit Helm beschrieben, bevor Sie Ihren HyperPod-Cluster erstellen.