View a markdown version of this page

EFA-Geräte auf Amazon EKS verwalten - Amazon EKS

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 auf, 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.

EFA-Geräte auf Amazon EKS verwalten

Elastic Fabric Adapter (EFA) ist ein Netzwerkgerät für Amazon EC2 EC2-Instances, das eine leistungsstarke Kommunikation zwischen Knoten für maschinelles Lernen und High Performance Computing (HPC) -Workloads ermöglicht. Amazon EKS unterstützt das EFA-Geräte-Plugin zur Verwaltung von EFA-Geräten in EKS-Clustern.

EKS-Knoten mit EFA-Schnittstellen erstellen

Wenn Sie EKS-Knoten mit EFA-Schnittstellen erstellen, werden die EFA-Schnittstellen beim Instance-Bootstrap angehängt. Wenn Sie die EFA-Konfiguration pro Gerät anpassen oder Platzierungsgruppen für die EFA-fähigen EC2-Instances verwenden müssen, wird empfohlen, von EKS verwaltete Knotengruppen oder selbstverwaltete EKS-Knotengruppen zu verwenden. Sie können die Konfiguration für jede Netzwerkschnittstelle mit Startvorlagen übergeben.

Wenn Sie EKS Auto Mode oder Karpenter mit dynamischer Bereitstellung verwenden, werden für Instanzen, die für Pods erstellt wurden, die Anfragen vpc.amazonaws.com/efa stellen, alle Schnittstellen mit dem Schnittstellentyp konfiguriert. EFA Die statische Kapazitätsbereitstellung in EKS Auto Mode und Karpenter unterstützt derzeit keine gerätespezifische EFA-Konfiguration. EKS Auto Mode und Karpenter unterstützen derzeit keine Platzierungsgruppen.

Bei Verwendung dieser efaEnabled Einstellung eksctlfür die Bereitstellung von EKS-Knoten werden alle Schnittstellen mit dem Schnittstellentyp konfiguriertEFA, eine EFA-spezifische Sicherheitsgruppe wird erstellt und das EFA-Geräte-Plug-In wird auf dem Cluster installiert. Wenn Sie bei der Verwendung die EFA-Konfiguration pro Gerät anpassen müssen, wird empfohleneksctl, die Unterstützung von `eksctl für Startvorlagen zu verwenden.

Verwendung von EKS-Optimized mit EFA AMIs

Der EKS-optimierte AL2023 Beschleuniger AMIs (NVIDIA und Neuron) und alle Bottlerocket AMIs enthalten die Komponenten auf Host-Ebene, die für die Verwendung von EFA erforderlich sind. EKS AL2023 und Bottlerocket enthalten AMIs nicht das EFA-Geräte-Plugin, und das Geräte-Plug-In muss separat auf Ihrem Cluster installiert werden, bevor Workloads bereitgestellt werden, die EFA verwenden.

Installieren Sie das EFA Kubernetes-Geräte-Plugin

Das EFA-Geräte-Plugin bewirbt EFA-Geräte als erweiterte Ressourcen. vpc.amazonaws.com/efa Sie fordern EFA-Geräte in Container-Ressourcenanfragen und Grenzwerten an. Eine vollständige Anleitung zur Einrichtung von EFA mit Trainings-Workloads finden Sie unter. Ausführung von Machine-Learning-Trainings in Amazon EKS mit Elastic Fabric Adapter

Das EFA-Geräte-Plugin weist automatisch EFA-Geräte zu, die sich topologisch in der Nähe von Neuron-Beschleunigern und NVIDIA-GPUs auf der physischen EC2-Instanz befinden.

Voraussetzungen

  • Ein Amazon EKS-Cluster.

  • Knoten mit EFA-fähigen Amazon EC2 EC2-Instance-Typen. Eine Liste der unterstützten Instance-Typen finden Sie unter Unterstützte Instance-Typen im Amazon EC2 EC2-Benutzerhandbuch.

  • Knoten mit installierten Komponenten auf Host-Ebene für EFA. Diese sind enthalten, wenn Sie EKS AL2023 Accelerated AMIs oder EKS Bottlerocket verwenden. AMIs

  • Weitere Informationen finden Sie in den Anweisungen zur Einrichtung von Helm.

  • kubectlkonfiguriert für die Kommunikation mit Ihrem Cluster, weitere Informationen finden Sie unterInstallieren oder Aktualisieren von kubectl.

Verfahren

  1. Fügen Sie das EKS Helm-Chart-Repository hinzu.

    helm repo add eks https://aws.github.io/eks-charts
  2. Aktualisieren Sie Ihr lokales Helm-Repository.

    helm repo update
  3. Installieren Sie das EFA-Geräte-Plugin.

    helm install efa eks/aws-efa-k8s-device-plugin -n kube-system
  4. Stellen Sie sicher, dass das EFA-Geräte-Plugin DaemonSet läuft.

    kubectl get daemonset -n kube-system aws-efa-k8s-device-plugin-daemonset
    NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE aws-efa-k8s-device-plugin-daemonset 2 2 2 2 2 <none> 60s
  5. Stellen Sie sicher, dass Ihren Knoten EFA-Ressourcen zugewiesen werden können.

    kubectl get nodes "-o=custom-columns=NAME:.metadata.name,EFA:.status.allocatable.vpc\.amazonaws\.com/efa"
    NAME EFA ip-192-168-11-225.us-west-2.compute.internal 4 ip-192-168-24-96.us-west-2.compute.internal 4

Fordern Sie EFA-Geräte in einem Pod an

Um EFA-Geräte mithilfe des Geräte-Plug-ins anzufordern, geben Sie die vpc.amazonaws.com/efa Ressource in Ihren Container-Ressourcenanfragen oder -limits an.

apiVersion: v1 kind: Pod metadata: name: efa-workload spec: containers: - name: app ... resources: limits: vpc.amazonaws.com/efa: 4 hugepages-2Mi: ... requests: vpc.amazonaws.com/efa: 4 hugepages-2Mi: ...