Unterstützung für die Verbesserung dieser Seite beitragen
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.
Um zu diesem Benutzerhandbuch beizutragen, wählen Sie den GitHub Link Diese Seite bearbeiten unter, der sich im rechten Bereich jeder Seite befindet.
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.
Beschleunigte Datenverarbeitung für AI/ML Workloads auf Amazon EKS verwalten
Tipp
Registrieren Sie sich
In diesem Abschnitt wird beschrieben, wie Sie EC2-beschleunigte Recheninstanzen für AI/ML Schulungs- und Inferenz-Workloads mit Amazon EKS erwerben und bereitstellen. Ganz gleich, ob Sie umfangreiche Modelle trainieren, Echtzeit-Inferenzen ausführen oder generative KI-Anwendungen bereitstellen, die Verwendung der richtigen NVIDIA-GPU oder AWS Trainium-Kapazität ist die Grundlage für die Leistung Ihrer Workloads.
Wählen Sie aus EC2-Instance-Typen
Einzelheiten zu den verfügbaren Amazon EC2-Instances für beschleunigte Datenverarbeitung finden Sie in den Spezifikationen für Amazon EC2-Instances für beschleunigte Datenverarbeitung. Dazu gehören NVIDIA-GPU-Instances von P-family and sowie die von G-family A AWS entwickelten Beschleuniger Trainium und Inferentia.
Machen Sie sich mit den EC2-Kaufoptionen vertraut
Sobald Sie wissen, welche beschleunigten Instances Sie für Ihre Workloads benötigen, müssen Sie sich im nächsten Schritt mit den Kaufoptionen vertraut machen, die für den Erwerb dieser beschleunigten Instance-Typen verfügbar sind. AWS bietet vier Kaufoptionen für Rechenkapazität: On-Demand Instances, Spot-Instances, Capacity Blocks for ML und On-Demand Capacity Reservations (ODCRs). Jede Option erfüllt unterschiedliche Workload-Muster, Kostenprofile und Verfügbarkeitsanforderungen. In der Dokumentation zu den Amazon EC2-Instance-Kaufoptionen wird erklärt, wie jede Option funktioniert, welches Preismodell sie hat und wann sie verwendet werden sollte.
-
On-Demand Instances: Zahlen Sie sekundengenau, unverbindlich und sofort verfügbar, wenn Kapazitäten vorhanden sind. Ideal für Entwicklung, Prototyping, unvorhersehbare Inferenzskalierung und alle Workloads, bei denen sofortige Berechnungen ohne Unterbrechungsrisiko erforderlich sind.
-
Spot-Instances: Einsparungen On-Demand von bis zu 90% im Vergleich zur Nutzung der EC2-Reservekapazität, mit einer zweiminütigen Unterbrechungsfrist. Ideal für fehlertolerante Workloads, die Checkpoints auf dauerhaften Speicher übertragen: Hyperparameter-Tuning, verteiltes Training mit regelmäßigen Checkpoints, Batch- und Offline-Inferenz sowie Datenvorverarbeitungs-Pipelines.
-
Kapazitätsblöcke für ML: Reserve P-family - und Trainium-Instances für ein festes Zeitfenster (24 Stunden, bis zu 6 Monate), bis zu 8 Wochen im Voraus gebucht. Verwenden Sie Kapazitätsblöcke für geplante groß angelegte Trainingsläufe, zeitgebundene Feinabstimmungsexperimente und Forschungsprojekte mit bekannten Zeitplänen, die einen vorhersehbaren Zugriff auf einen GPU-Cluster benötigen.
-
On-Demand Kapazitätsreservierungen (ODCRs): Reservieren Sie beschleunigte Kapazität in einer bestimmten Availability Zone ohne langfristige Bindung. Die Abrechnung erfolgt zu On-Demand Standardtarifen, unabhängig davon, ob die Kapazität genutzt wird oder nicht. Ideal für Produktionsinferenzen, SLA-bound Services und geschäftskritische Anwendungen, bei denen Verzögerungen bei der Terminplanung oder Kapazitätsausfälle inakzeptabel sind. Im Gegensatz zu Capacity Blocks unterstützen ODCRs sowohl ND-Instances. P-family G-family
Passen Sie die Kaufoptionen an die Workload-Anforderungen an
Nachdem Sie nun die beschleunigten Instance-Typen und Kaufoptionen verstanden haben, besteht der nächste Schritt darin, die richtige Kaufoption an Ihre Workload-spezifischen Anforderungen anzupassen. Workloads mit größerer Flexibilität in Bezug auf Instanztypen, Regionen und Zeiträume kommen für mehr Kaufoptionen und niedrigere Preise in Frage.
Basieren Sie Ihre Entscheidung auf Faktoren wie:
-
Strategische Bedeutung und SLA-Verpflichtungen
-
Vorhersagbarkeit der Nachfrage und Flexibilität bei der Planung
-
Bereitschaft, sich im Voraus auf reservierte Kapazitäten festzulegen
-
Flexibilität in Bezug auf Instanztypen, Regionen und Zeitpläne
-
Toleranz gegenüber Unterbrechungen im Vergleich zu Kosteneinsparungen
In der Praxis verfolgen Teams einen hybriden Ansatz, bei dem mehrere Kaufoptionen kombiniert werden, um Kosten, Verfügbarkeit und Zuverlässigkeit im gesamten Workload-Portfolio in Einklang zu bringen. Der Artikel How to Get GPU Capacity on AWS
Überprüfen Sie Ihre EC2-Servicekontingente
Bevor Sie eine Option zum Kauf von Kapazitäten in Ihrem EKS-Cluster implementieren, stellen Sie sicher, dass Ihr AWS Konto über ein ausreichendes vCPU-Kontingent für die GPU-Instance-Familien verfügt, die Sie verwenden möchten. Ohne angemessene Kontingente können Karpenter NodePools, EKS Auto Mode Provisioning und EKS-Knotengruppen keine beschleunigten Rechenknoten starten, unabhängig davon, welche Kaufoption Sie wählen.
AWS erzwingt separate vCPU-Kontingente pro Instance-Familie und Kaufmodell. Sehen Sie sich die Kontingente für Amazon EC2-Instance-Typen an, um mehr über die Standardkontingente für Instances mit beschleunigter Datenverarbeitung zu erfahren.
Diese Kontingente basieren auf der Anzahl der vCPUs, nicht auf der Anzahl der Instanzen. Zum Beispiel sind für den Start von 10 p6-b300.48xlarge-Instances 1.920 vCPUs (10 × 192) erforderlich. Die Standard-GPU-Kontingente werden für neue Konten häufig auf 0 gesetzt. Daher erhöht sich die Anzahl der Anfragen, bevor versucht wird, Instances bereitzustellen.
Wenn Sie beim Erstellen von Capacity Block-Reservierungen, beim Starten von On-Demand Instances oder beim Senden von Spot-Anfragen auf Kontingentbeschränkungen stoßen, wenden Sie sich an den AWS Support oder Ihr AWS Account-Team, um Ihre Anforderungen zu besprechen und Optionen zur Sicherung der beschleunigten Rechenkapazität zu erkunden, die Ihren Anforderungen am besten entspricht.
Verwenden Sie EC2-Kaufoptionen mit Amazon EKS
Nachdem Sie eine Kaufoption für EC2 Accelerated Compute ausgewählt haben, konfigurieren Sie Ihren Amazon EKS-Cluster so, dass er die Kapazität nutzt. Amazon EKS bietet drei Bereitstellungsmethoden, die jeweils ein anderes Gleichgewicht zwischen Kontrolle und Automatisierung bieten:
-
Amazon EKS Auto Mode: AWS verwaltete Datenverarbeitung, die Knoten automatisch bereitstellt, skaliert und patcht. Verwendet das integrierte Karpenter für die Bereitstellung und das Bottlerocket-Betriebssystem mit integrierten NVIDIA-Treibern und Geräte-Plug-ins. Ideal, wenn Sie eine verwaltete Infrastruktur mit minimalem Betriebsaufwand benötigen. Unterstützt sowohl die statische als auch die dynamische Kapazitätsbereitstellung.
-
Karpenter (selbstverwaltet): Open-Source-Upstream-Projekt, das Sie in Ihrem Amazon EKS-Cluster installieren und betreiben. Bietet dasselbe Bereitstellungsmodell wie EKS Auto Mode und Sie haben die volle Kontrolle über Betriebssystem, AMIs, Kernel-Tuning und Node-Lebenszyklus. Ideal für Plattformteams mit Anforderungen, die EKS Auto Mode nicht sofort erfüllt.
-
Knotengruppen (verwaltet und selbstverwaltet): Die Kapazität wird von EC2 Auto Scaling Groups (ASG) unterstützt und im Voraus anhand einer EC2-Startvorlage definiert. Ideal für Plattformteams mit vorhandenen, von EKS verwalteten oder selbst verwalteten Knotengruppen sowie für Trainingsworkloads mit vorhersehbarer Größe und einem bekannten, statisch beschleunigten Rechenbedarf.
Auf den folgenden Seiten wird jede Bereitstellungsoption ausführlich behandelt.
Gemischte Strategie: Kombinieren Sie Kaufoptionen
Es ist üblich, mehrere Optionen zum Kauf von Kapazitäten in einem einzigen Amazon EKS-Cluster zu kombinieren. Bei diesem Ansatz werden Kosten, Verfügbarkeit und Zuverlässigkeit gleichzeitig optimiert, indem verschiedene Workloads an die am besten geeignete Kapazitätsquelle weitergeleitet werden. Kunden implementieren diese Hybridstrategie mit einem der drei EKS-Rechenmanagement-Ansätze (EKS Auto Mode, Karpenter oder Node Groups) oder kombinieren sie innerhalb desselben Clusters.
EKS Auto Mode und Karpenter stellen immer zuerst reservierte Kapazität (ODCRs und Capacity Blocks) bereit, gefolgt von Spot oder. On-Demand Sie können diese Priorität der Instance-Bereitstellung miteinander verbinden, indem Sie Ihre kritischen Workloads auf reservierter Kapazität und Ihre flexiblen Workloads auf Spot oder Instances planen. On-Demand Sie steuern das Workload-Routing mithilfe von Kubernetes-native Planungsprimitiven: Sie nodeSelector zielen auf einen bestimmten Kapazitätstyp ab, Schwachstellen und Toleranzen isolieren NVIDIA-GPU- oder AWS Trainium-Knoten und topologySpreadConstraints verteilen die Workloads auf Availability Zones, um eine hohe Verfügbarkeit zu gewährleisten.
Ein gut durchdachter Amazon EKS-Cluster unterteilt Gruppen für beschleunigte Berechnungen NodePools oder Knoten in zwei Kategorien, Reserved und Burst, die jeweils auf die Workload-Muster abgestimmt sind, die für die Kapazitätsstrategie am besten geeignet sind. Ein Beispiel wird unten beschrieben.
-
Reservierte Kapazität: Eine
gpu-reservedNodePool oder Knotengruppe führt Produktionsinferenzen und geplante groß angelegte Schulungen zur reservierten Kapazität (ODCRs und Kapazitätsblöcke) für SLA-bound Dienste und geplante rechenintensive Jobs durch. Diese NodePool oder Knotengruppe bedient Inferenz- und Produktionsworkloads: Inferenzendpunkte in Echtzeit, Bereitstellung von Produktionsmodellen und geschäftskritische Anwendungen, die eine durchgehend aktive GPU-Verfügbarkeit mit vorhersehbarer Leistung erfordern. Sie unterstützt auch geplante rechenintensive Aufgaben: geplantes verteiltes Training, groß angelegte Feinabstimmungsexperimente, zeitgebundene Forschungsprojekte und alle Workloads, bei denen Sie die Startzeit und Dauer im Voraus kennen. -
Burst-Kapazität: Eine
gpu-burstNodePool oder Knotengruppe kümmert sich um Experimente, Ad-hoc-Workloads und die Stapelverarbeitung. Es verwendet Spot-Instances als primären Kapazitätstyp mit On-Demand Fallback. Diese Kombination maximiert die Kosteneinsparungen für fehlertolerante Workloads und gewährleistet die Kapazität, wenn Spot nicht verfügbar ist. Diese NodePool oder die Knotengruppe dient der Batch-Offline-Inferenz, Datenvorverarbeitungs-Pipelines, Modellevaluierungsjobs, Entwicklung und Prototyping, unvorhersehbarer Inferenzskalierung, kurzlebiger Debugging-Sitzungen und allen Workloads, die Checkpointing implementieren und Spot-Unterbrechungen verarbeiten können oder die keine Reservierung rechtfertigen, aber nicht auf reservierte Zeitfenster warten können. Bei Workloads in dieser NodePool oder in einer Knotengruppe werden Checkpointing und ein ordnungsgemäßes Herunterfahren implementiert, um den Verlust von Knoten innerhalb des 2-minütigen Spot-Interruption-Fensters zu bewältigen.
Geben Sie mithilfe von NodeSelector: den gewünschten Kapazitätstyp für Workloads an. karpenter.sh/capacity-type: [spot, on-demand, reserved] Weight-based Provisioning skaliert den Cluster effizient über alle Kapazitätspools hinweg. Mit dieser Architektur können Sie verschiedene AI/ML Workloads — von experimentellen Notebooks bis hin zu Produktionsinferenzen — in einem einzigen Amazon EKS-Cluster ausführen und gleichzeitig die Kosten optimieren.