Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwenden des Amazon EBS-CSI-Treibers auf EKS-Clustern SageMaker HyperPod
SageMaker HyperPod unterstützt den Amazon Elastic Block Store (Amazon EBS) Container Storage Interface (CSI) -Treiber, der den Lebenszyklus von Amazon EBS-Volumes als Speicher für die von Ihnen erstellten Kubernetes-Volumes verwaltet. Mit dem Amazon EBS-CSI-Treiber können Sie Ihre Amazon EBS-Volumes für Ihre Machine-Learning-Workloads erstellen, anhängen und verwalten, die auf Clustern mit Amazon EKS-Orchestrierung ausgeführt werden. SageMaker HyperPod
In diesem Thema:
Wichtige Speicherfunktionen
Der Amazon EBS-CSI-Treiber auf SageMaker HyperPod unterstützt die folgenden Speicherfunktionen.
-
Statische Bereitstellung: Ordnet vorab erstellte Amazon EBS-Volumes persistenten Kubernetes-Volumes
zur Verwendung in Ihren Pods zu. -
Dynamische Bereitstellung: Erstellt automatisch Amazon EBS-Volumes und zugehörige persistente Volumes aus
PersistentVolumeClaims. Parameter können übergeben werden, StorageClassum die Volume-Erstellung detailliert zu steuern. -
Volumenänderung: Erweitert bestehende Volumes durch Aktualisierung der
PersistentVolumeClaimsGrößenspezifikation, ohne laufende Workloads zu unterbrechen. Dies kann für den Umgang mit wachsenden Modell-Repositorys oder die Anpassung an größere Knoten ohne Betriebsunterbrechung unerlässlich sein. -
Volume-Snapshots: Erstellt Snapshots von Volumes zu einem bestimmten Zeitpunkt für Backup, Wiederherstellung und Datenversionierung.
-
Block-Volumes: Ermöglicht unformatierten Blockgerätezugriff für Hochleistungsanwendungen, die direkten Speicherzugriff benötigen.
-
Volumenänderung: Ändert Volume-Eigenschaften wie Typ, Eingabe- oder Ausgabeoperationen pro Sekunde (IOPS) oder Durchsatz mithilfe von Volume-Attributklassen
.
Weitere Informationen zum Amazon EBS CSI-Treiber finden Sie unter Use Kubernetes Volume Storage with Amazon EBS im Amazon EKS-Benutzerhandbuch.
Weitere Informationen zur Speicherung auf Pods in Ihrem Cluster finden Sie in der Kubernetes-Dokumentation unter Speicher
Überlegungen
Das SageMaker HyperPod AMI verwaltet bereits den lokalen NVMe-Instance-Speicher auf jedem Knoten. Beim Booten fasst es alle NVMe-Laufwerke des Knotens zu einer einzigen LVM-Volume-Gruppe (vg.01) zusammen und mountet das Ergebnis unter. /opt/sagemaker Sie müssen nichts weiter installieren, um den lokalen NVMe-Speicher zu verwenden — er ist einsatzbereit, sobald der Node betriebsbereit ist.
Wichtig
Installieren Sie keinen zweiten CSI-Treiber, der auf NVMe-Instance-Speicher abzielt (manchmal auch als Local Instance Storage-CSI-Treiber bezeichnet). Ein zweiter Speichermanager führt zu Konflikten mit vg.01 I/O NVMe-Ausfällen, Mount-Fehlern und einem beschädigten Gerätezustand, der auch nach Neustarts und Ersetzungen von Knoten anhält.
Diese Einschränkung gilt nur für Treiber, die den lokalen NVMe-Instance-Speicher verwalten. Network-backed CSI-Treiber (Amazon EBS, Amazon FSx, Amazon EFS und Mountpoint für Amazon S3) sind nicht betroffen, da sie nicht auf die lokalen NVMe-Festplatten zugreifen.
Der auf dieser Seite beschriebene Amazon EBS-CSI-Treiber verwaltet nur Amazon EBS-Volumes und ist von diesem Konflikt nicht betroffen. Der Konflikt gilt nur für CSI-Treiber, die den lokalen NVMe-Instance-Speicher auf dem Knoten verwalten.
Wenn Sie bereits einen CSI-Treiber installiert haben, der auf NVMe-Instance-Speicher abzielt, und I/O NVMe-Fehler auftreten, gehen Sie wie folgt vor:
-
Deinstallieren Sie das CSI-Treiber-Add-on für lokalen Instanzspeicher.
-
Tauschen Sie die betroffenen Knoten aus (es wird empfohlen, jeweils etwa drei Knoten auszutauschen).
-
Stellen Sie sicher, dass der NVMe-Instance-Speicher wiederhergestellt ist. Der wiederhergestellte Zustand bleibt auch bei nachfolgenden Neustarts und Ersetzungen bestehen.
Wichtig
Tauschen Sie die Knoten nicht aus, bevor Sie das Add-on deinstalliert haben. Der Konflikt wird auf den neuen Knoten erneut auftreten, und die I/O Fehler werden weiterhin auftreten.
Um den NVMe-Instance-Speicher zu verwenden HyperPod, verlassen Sie sich über den Standard-Mount-Pfad () auf die integrierte LVM-Konfiguration des AMI. /opt/sagemaker Verwenden Sie für dynamisch bereitgestellten Blockspeicher auf Pod-Ebene den Amazon EBS-CSI-Treiber, wie im Rest dieser Seite beschrieben.
Anwendungsfälle
Die Amazon EBS-CSI-Treiberintegration ermöglicht mehrere wichtige Anwendungsfälle sowohl für Trainings- als auch für Inferenz-Workloads auf EKS-Clustern. SageMaker HyperPod
Workloads für Schulungen
-
Speicherung von Datensätzen: Stellen Sie Volumes für Trainingsdatensätze bereit, die auch nach einem Pod-Neustart bestehen bleiben
-
Checkpoint-Speicher: Speichern Sie Modell-Checkpoints und Zwischentrainingsergebnisse
-
Gemeinsam genutzte Artefakte: Greifen Sie über mehrere Trainingsjobs hinweg auf gemeinsame Datensätze und Modellartefakte zu
Inferenz-Workloads
-
Modellspeicher: Dynamische Bereitstellung angemessen dimensionierter Volumes auf der Grundlage der Modellanforderungen
-
Container-Caching: Erstellen Sie kurzlebigen Speicher für eine verbesserte Inferenzleistung
-
Ereignisprotokollierung: Speichern Sie Inferenzergebnisse und Protokolle im persistenten Speicher
Einrichtung des Amazon EBS-CSI-Treibers auf EKS-Clustern SageMaker HyperPod
Mit dem Amazon Elastic Block Store (Amazon EBS) Container Storage Interface (CSI) -Treiber können Sie Amazon EBS-Volumes für Ihre containerisierten Workloads, die auf Clustern mit EKS-Orchestrierung ausgeführt werden, dynamisch bereitstellen und verwalten. SageMaker HyperPod Dieser Abschnitt führt Sie durch die Installation und Konfiguration des Amazon EBS-CSI-Treibers zum Aktivieren des persistenten Speichers für Ihre Workloads im Machine Learning.
Voraussetzungen
Bevor Sie beginnen, führen Sie die folgenden Schritte aus:
Zusätzliche Berechtigungen
Um das Amazon EBS CSI-Treiber-Add-on einzurichten, folgen Sie den Anweisungen unter Use Kubernetes Volume Storage with Amazon EBS im Amazon EKS-Benutzerhandbuch. Sie sollten der IAM-Rolle, die zur Ausführung des Treiber-Add-ons verwendet wird, auch die folgenden zusätzlichen Berechtigungen hinzufügen. Beachten Sie, dass dies die IAM-Rolle ist, die in Ihrer Dienstkontokonfiguration für das Treiber-Add-On angegeben ist, nicht die HyperPod Cluster-Ausführungsrolle.
Verwenden der APIs
Als Alternative können Sie die Operationen AttachClusterNodeVolume und DetachClusterNodeVolume API verwenden, um Ihre Amazon EBS-Volumes an SageMaker HyperPod EKS-Cluster-Instances anzuhängen und von diesen zu trennen.
Zu den wichtigsten Anforderungen für die Verwendung dieser APIs gehören die folgenden.
-
Sowohl das Amazon EBS-Volume als auch der SageMaker HyperPod EKS-Cluster müssen demselben gehören. AWS-Konto
-
Der aufrufende Principal benötigt bestimmte Mindestberechtigungen, um den Vorgang zum anfügen oder Trennen erfolgreich ausführen zu können. Weitere Informationen zu den Mindestberechtigungen finden Sie in den folgenden Abschnitten.
-
Nachdem Sie ein Volume an Ihren HyperPod Knoten angehängt haben, folgen Sie den Anweisungen unter Zugreifen auf SageMaker HyperPod Clusterknoten, um auf den Cluster-Knoten zuzugreifen, und Stellen Sie ein Volume zur Verfügung, das zum Mounten des angeschlossenen Volumes verwendet werden kann.
Erforderliche Berechtigungen für Sagemaker: AttachClusterNodeVolume
Erforderliche Berechtigungen für Sagemaker: DetachClusterNodeVolume
Erforderliche Berechtigungen für AWS KMS keys
Fügen Sie die folgenden AWS KMS Berechtigungen nur hinzu, wenn Sie vom Kunden verwaltete KMS-Schlüssel verwenden, um Ihre an HyperPod Clusterknoten angeschlossenen Amazon EBS-Volumes zu verschlüsseln. Diese Berechtigungen sind nicht erforderlich, wenn Sie AWS-verwaltete KMS-Schlüssel (die Standardverschlüsselungsoption) verwenden.
Anmerkung
Diese AWS KMS Berechtigungen sind nicht erforderlich, sagemaker:DetachClusterNodeVolume wenn Sie ein CAVA-Volume (Cluster Auto Volume Attachment), das mit kundenverwalteten KMS-Schlüsseln verschlüsselt ist, trennen.