

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.

# Starten eines AWS Deep Learning AMIs Instanz mit EFA
<a name="tutorial-efa-launching"></a>

Das neueste Base-DLAMI ist bereit für die Verwendung mit EFA und enthält die erforderlichen Treiber, Kernelmodule, libfabric, openmpi und das [ NCCL OFI-Plugin für GPU-Instances. ](https://github.com/aws/aws-ofi-nccl/tree/aws)

Die unterstützten CUDA-Versionen eines Base-DLAMI finden Sie in den Versionshinweisen. [Versionshinweise für Base-DLAMIs](appendix-ami-release-notes.md#appendix-ami-release-notes-base)

Hinweis:
+ Wenn Sie eine NCCL-Anwendung mit `mpirun` EFA ausführen, müssen Sie den vollständigen Pfad zur von EFA unterstützten Installation wie folgt angeben: 

  ```
  /opt/amazon/openmpi/bin/mpirun <command>  
  ```
+ Damit Ihre Anwendung EFA verwenden kann, fügen Sie `FI_PROVIDER="efa"` dem `mpirun`-Befehl hinzu, wie unter [Verwenden von EFA auf dem DLAMI](tutorial-efa-using.md) gezeigt.

**Topics**
+ [Bereiten Sie eine EFA Enabled Security Group vor](#tutorial-efa-security-group)
+ [Starten Ihrer Instance](#tutorial-efa-launch)
+ [Überprüfen Sie den EFA-Anhang](#tutorial-efa-verify-attachment)

## Bereiten Sie eine EFA Enabled Security Group vor
<a name="tutorial-efa-security-group"></a>

EFA benötigt eine Sicherheitsgruppe, die den gesamten eingehenden und ausgehenden Verkehr zur und von der Sicherheitsgruppe selbst zulässt. Weitere Informationen finden Sie in der [ EFA-Dokumentation. ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa-start.html#efa-start-security)

1. Öffnen Sie die Amazon-EC2-Konsole unter [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/). 

1. Wählen Sie im Navigationsbereich **Security Groups** (Sicherheitsgruppen) und anschließend **Create Security Group** (Sicherheitsgruppe erstellen) aus. 

1. Führen Sie im Fenster **Create Security Group** Folgendes aus: 
   + Geben Sie für **Security group name** (Name der Sicherheitsgruppe) einen beschreibenden Namen für die Sicherheitsgruppe ein, wie etwa `EFA-enabled security group`. 
   + (Optional:) Geben Sie unter **Description** (Beschreibung) eine kurze Beschreibung der Sicherheitsgruppe ein. 
   + Wählen Sie für ** VPC die VPC aus**, in der Sie Ihre Instances starten möchten. EFA-enabled 
   + Wählen Sie **Create (Erstellen)** aus. 

1. Wählen Sie die von Ihnen erstellte Sicherheitsgruppe aus und kopieren Sie dann auf der Registerkarte **Description** (Beschreibung) die **Group ID** (Gruppen-ID). 

1. Gehen Sie auf den ** Registerkarten ** Eingehend ** und ** Ausgehend wie folgt vor: 
   + Wählen Sie **Edit** aus. 
   + Wählen Sie für **Type (Typ)** die Option **All traffic (Gesamter Datenverkehr)** aus. 
   + Wählen Sie für **Source (Quelle)** die Option **Custom (Benutzerdefiniert)** aus. 
   + Fügen Sie die Sicherheitsgruppen-ID, die Sie kopiert haben, in das Feld ein. 
   + Wählen Sie **Speichern**. 

1. Aktivieren Sie eingehenden Datenverkehr, indem Sie entsprechend der Informationen unter [Autorisieren von eingehendem Datenverkehr für Linux-Instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/authorizing-access-to-an-instance.html) vorgehen. Wenn Sie diesen Schritt überspringen, können Sie nicht mit Ihrer DLAMI-Instanz kommunizieren.

## Starten Ihrer Instance
<a name="tutorial-efa-launch"></a>

EFA on the AWS Deep Learning AMIs wird derzeit von den folgenden Instanztypen und Betriebssystemen unterstützt:
+  P3dn: Amazon Linux 2, Ubuntu 20.04
+  P4d, P4de: Amazon Linux 2, Amazon Linux 2023, Ubuntu 20.04, Ubuntu 22.04
+  P5, P5e, P5en: Amazon Linux 2, Amazon Linux 2023, Ubuntu 20.04, Ubuntu 22.04

Der folgende Abschnitt zeigt, wie Sie eine EFA-fähige DLAMI-Instance starten. Weitere Informationen zum Starten einer EFA-fähigen Instance finden Sie unter [ Starten von EFA-Enabled Instances in einer Cluster Placement Group. ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa-start.html#efa-start-instances)

1. Öffnen Sie die Amazon-EC2-Konsole unter [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/). 

1. Wählen Sie **Launch Instance** aus. 

1. **Wählen Sie auf der ** Seite „Choose an AMI“ ein unterstütztes DLAMI aus, das Sie auf der Seite mit den [ DLAMI Release Notes finden ](https://docs.aws.amazon.com/dlami/latest/devguide/appendix-ami-release-notes) 

1. **Wählen Sie auf der ** Seite „Choose an Instance Type“ einen der folgenden unterstützten Instance-Typen aus und klicken Sie dann auf ** Next: Configure Instance Details. ** Eine Liste der unterstützten Instanzen finden Sie unter diesem Link: [ Erste Schritte mit EFA und MPI ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa-start.html) 

1. Führen Sie auf der Seite **Configure Instance Details (Instance-Details konfigurieren)** die folgenden Schritte aus: 
   + Geben Sie für ** Anzahl der Instances ** die Anzahl der EFA-enabled Instances ein, die Sie starten möchten. 
   + Wählen Sie für **Network (Netzwerk)** und **Subnet (Subnetz)** die VPC und das Subnetz an, in das Sie die Instances starten möchten. 
   + [Optional] Wählen Sie für ** Placement-Gruppe ** die Option Instance zur Placement-Gruppe ** hinzufügen aus**. Um eine optimale Leistung zu erzielen, starten Sie die Instances innerhalb einer Platzierungsgruppe. 
   + [Optional] Wählen Sie als ** Platzierungsgruppenname die Option Zu einer neuen Platzierungsgruppe ** hinzufügen aus ****, geben Sie einen beschreibenden Namen für die Platzierungsgruppe ein und wählen Sie dann für ** Platzierungsgruppenstrategie ** die Option ** Cluster ** aus. 
   + Stellen Sie sicher, dass Sie den ** „Elastic Fabric Adapter“ ** auf dieser Seite aktivieren. Wenn diese Option deaktiviert ist, ändern Sie das Subnetz in ein Subnetz, das den ausgewählten Instance-Typ unterstützt. 
   + Wählen Sie im Abschnitt **Network Interfaces (Netzwerkschnittstellen** für das Gerät **eth0** die Option **New network interface (Neue Netzwerkschnittstelle)** aus. Sie können zudem optional eine primäre IPv4-Adresse und eine oder mehrere sekundäre IPv4-Adressen eingeben. Wenn Sie die Instance in einem Subnetz starten, das einen verknüpften IPv6-CIDR-Block hat, können Sie optional eine primäre IPv6-Adresse und eine oder mehrere sekundäre IPv6-Adressen angeben. 
   + Wählen Sie **Next: Add Storage** aus. 

1. Auf der Seite **Add Storage (Speicher hinzufügen)** können Sie neben den durch das AMI festgelegten Volumes (wie z. B. dem Root-Gerät-Volume) auch Datenträger angeben, die an die Instance angefügt werden sollen. Wählen Sie anschließend **Next: Add Tags (Weiter: Tags (Markierungen) hinzufügen)** aus. 

1. Geben Sie auf der Seite **Add Tags (Tags (Markierungen) hinzufügen)** Tags (Markierungen) für die Instances an, z. B. einen benutzerfreundlichen Namen, und wählen Sie anschließend **Next: Configure Security Group (Weiter: Sicherheitsgruppe konfigurieren)**. 

1. Wählen Sie auf der ** Seite „Sicherheitsgruppe ** konfigurieren“ für Eine Sicherheitsgruppe ** ** zuweisen die Option Vorhandene Sicherheitsgruppe ** auswählen aus**, und wählen Sie dann die Sicherheitsgruppe aus, die Sie zuvor erstellt haben**. ** 

1. Klicken Sie auf **Review and Launch**. 

1. Überprüfen Sie auf der Seite **Review Instance Launch (Instance-Start überprüfen)** Ihre Einstellungen und wählen Sie anschließend **Launch (Starten)** aus, um ein Schlüsselpaar auszuwählen und Ihre Instance zu starten. 

## Überprüfen Sie den EFA-Anhang
<a name="tutorial-efa-verify-attachment"></a>

### Über die Konsole
<a name="tutorial-efa-verify-attachment-console"></a>

Überprüfen Sie nach dem Start der Instanz die Instanzdetails in der AWS Konsole. Wählen Sie dazu die Instance in der EC2-Konsole aus und sehen Sie sich die Registerkarte "Description (Beschreibung)" im unteren Bereich auf der Seite an. Suchen Sie den Parameter 'Network Interfaces: eth0' und wählen Sie eth0, wodurch ein Pop-up geöffnet wird. Stellen Sie sicher, dass „Elastic Fabric Adapter“ aktiviert ist. 

Wenn EFA nicht aktiviert ist, können Sie dies wie folgt beheben:
+ Beenden der EC2-Instance und Starten einer neuen Instance mit den gleichen Schritten. Stellen Sie sicher, dass die EFA angehängt ist. 
+ Hängen Sie EFA an eine bestehende Instanz an.

  1. Wechseln Sie in der EC2-Konsole zu "Network Interfaces (Netzwerkschnittstellen)".

  1. Wählen Sie Create a Network Interface.

  1. Wählen Sie dasselbe Subnetz aus, in dem sich Ihre Instance befindet.

  1. Stellen Sie sicher, dass der „Elastic Fabric Adapter“ aktiviert ist, und wählen Sie Erstellen.

  1. Wechseln Sie zurück zur Registerkarte "EC2 Instances (EC-Instances)" und wählen Sie Ihre Instance aus.

  1. Gehen Sie zu Aktionen: Instanzstatus und beenden Sie die Instanz, bevor Sie EFA anhängen.

  1. Wählen Sie unter "Actions (Aktionen)" die Option "Networking: Attach Network Interface (Netzwerk: Netzwerkschnittstelle anfügen)" aus.

  1. Wählen Sie die Schnittstelle aus, die Sie gerade erstellt haben, und wählen Sie „Anhängen“.

  1. Starten Sie Ihre Instance neu.

### Über die Instance
<a name="tutorial-efa-verify-attachment-instance"></a>

Das folgende Testskript ist bereits auf dem DLAMI vorhanden. Führen Sie es aus, um sicherzustellen, dass die Kernel-Module ordnungsgemäß geladen sind.

```
$ fi_info -p efa
```

Ihre Ausgabe sollte in etwa wie folgt aussehen.

```
provider: efa
    fabric: EFA-fe80::e5:56ff:fe34:56a8
    domain: efa_0-rdm
    version: 2.0
    type: FI_EP_RDM
    protocol: FI_PROTO_EFA
provider: efa
    fabric: EFA-fe80::e5:56ff:fe34:56a8
    domain: efa_0-dgrm
    version: 2.0
    type: FI_EP_DGRAM
    protocol: FI_PROTO_EFA
provider: efa;ofi_rxd
    fabric: EFA-fe80::e5:56ff:fe34:56a8
    domain: efa_0-dgrm
    version: 1.0
    type: FI_EP_RDM
    protocol: FI_PROTO_RXD
```

### Überprüfen der Sicherheitsgruppenkonfiguration
<a name="tutorial-efa-verify-attachment-security"></a>

Das folgende Testskript ist bereits auf dem DLAMI vorhanden. Führen Sie es aus, um sicherzustellen, dass die von Ihnen erstellte Sicherheitsgruppe ordnungsgemäß konfiguriert ist.

```
$ cd /opt/amazon/efa/test/ 
$ ./efa_test.sh
```

Ihre Ausgabe sollte in etwa wie folgt aussehen.

```
Starting server...
Starting client...
bytes   #sent   #ack     total       time     MB/sec    usec/xfer   Mxfers/sec
64      10      =10      1.2k        0.02s      0.06    1123.55       0.00
256     10      =10      5k          0.00s     17.66      14.50       0.07
1k      10      =10      20k         0.00s     67.81      15.10       0.07
4k      10      =10      80k         0.00s    237.45      17.25       0.06
64k     10      =10      1.2m        0.00s    921.10      71.15       0.01
1m      10      =10      20m         0.01s   2122.41     494.05       0.00
```

Wenn es nicht mehr reagiert oder nicht abgeschlossen wird, stellen Sie sicher, dass Ihre Sicherheitsgruppe über die richtigen inbound/outbound Regeln verfügt. 