

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Configurazione dei client EFA
<a name="configure-efa-clients"></a>

Utilizza le seguenti procedure per configurare il client Lustre per accedere a un file system FSx for Lustre tramite Elastic Fabric Adapter (EFA).

EFA è supportato sui client Lustre che eseguono i seguenti sistemi operativi:
+ Amazon Linux 2023 (AL2023)
+ Red Hat Enterprise Linux (RHEL) 9.5 o versione successiva
+ Ubuntu 22.04 o versione successiva con versione del kernel 6.8\+

EFA è supportato sui client Lustre elencati di seguito. Per ulteriori informazioni, consulta [Installazione del client Lustre](install-lustre-client.md).

EFA è supportato sulle istanze Nitro v4 (o superiore) che supportano EFA, esclusa la famiglia di EC2 istanze trn2. Consulta i [tipi di istanze supportati](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa.html#efa-instance-types) nella *Amazon EC2 User Guide*.

**Topics**
+ [Passaggio 1: installa i driver richiesti](#install-required-drivers)
+ [Fase 2: Configurare EFA per il client Lustre](#install-efa-on-client)
+ [Fase 3: interfacce EFA](#add-efa-interfaces)

## Passaggio 1: installa i driver richiesti
<a name="install-required-drivers"></a>

**Nota**  
Se utilizzi un'[AMI Deep Learning](https://docs.aws.amazon.com/dlami/latest/devguide/what-is-dlami.html), puoi saltare questo passaggio poiché il client Lustre, il driver EFA e il driver NVIDIA GPUDirect Storage (GDS) sono preinstallati.

### Installa il client Lustre e il driver EFA
<a name="install-lustre-client-efa-driver"></a>

**Per installare rapidamente il client Lustre e il driver EFA**

1. Scaricate e decomprimete il file contenente lo script di installazione:

   ```
   curl -O https://docs.aws.amazon.com/fsx/latest/LustreGuide/samples/install-fsx-lustre-client.zip
   unzip install-fsx-lustre-client.zip
   ```

1. Vai alla `install-fsx-lustre-client` cartella ed esegui lo script di installazione:

   ```
   cd install-fsx-lustre-client
   sudo ./bin/install-fsx-lustre-client.sh --install-lustre --install-efa
   ```

   Lo script esegue automaticamente le seguenti operazioni:
   + Installa il client Lustre
   + Installa il driver EFA
   + Verifica l'installazione del client Lustre e del driver EFA

   Per un elenco di opzioni ed esempi di utilizzo che è possibile utilizzare con lo `install-fsx-lustre-client.sh` script, consultate il `README.md` file nel file zip.

### Installa il driver GDS (opzionale)
<a name="install-gds-driver"></a>

Questo passaggio è necessario solo se prevedi di utilizzare NVIDIA GPUDirect Storage (GDS) con FSx for Lustre.

Requisiti:
+ Istanza Amazon EC2 P5, P5e, P5en o P6-B200
+ Driver NVIDIA GDS versione 2.24.2 o successiva

**Per installare il driver di GPUDirect archiviazione NVIDIA sull'istanza client**

1. Clona il repository NVIDIA GDS:

   ```
   git clone https://github.com/NVIDIA/gds-nvidia-fs.git
   ```

1. Compila e installa il driver:

   ```
   cd gds-nvidia-fs/src/
   export NVFS_MAX_PEER_DEVS=128
   export NVFS_MAX_PCI_DEPTH=16
   sudo -E make
   sudo insmod nvidia-fs.ko
   ```

## Fase 2: Configurare EFA per il client Lustre
<a name="install-efa-on-client"></a>

Per accedere a un file system FSx for Lustre utilizzando un'interfaccia EFA, è necessario installare i moduli Lustre EFA e configurare le interfacce EFA.

### Configurazione rapida
<a name="quick-setup"></a>

**Per configurare rapidamente il client Lustre**

1. Connect alla tua EC2 istanza Amazon.

1. Scarica e decomprimi il file contenente lo script di configurazione:

   ```
   curl -O https://docs.aws.amazon.com/fsx/latest/LustreGuide/samples/configure-efa-fsx-lustre-client.zip
   unzip configure-efa-fsx-lustre-client.zip
   ```

1. Passa alla `configure-efa-fsx-lustre-client` cartella ed esegui lo script di installazione:

   ```
   cd configure-efa-fsx-lustre-client
   # for regular IO
   sudo ./setup.sh
   
   # for NVIDIA GPUDirect Storage (GDS) IO
   sudo ./setup.sh --optimized-for-gds
   ```

   Lo script esegue automaticamente le seguenti operazioni:
   + Importa i moduli Lustre
   + Configura le interfacce TCP ed EFA
   + Crea un servizio systemd per la configurazione automatica al riavvio

   Per un elenco di opzioni ed esempi di utilizzo utilizzabili con lo `setup.sh` script, consultate il `README.md` file nel file zip.

### Gestione manuale del servizio systemd
<a name="manage-systemd-service"></a>

Il file di servizio systemd viene creato in/etc/systemd/system/configure- efa-fsx-lustre-client .service. Di seguito sono riportati alcuni utili comandi relativi al sistema:

```
# Check status
sudo systemctl status configure-efa-fsx-lustre-client.service

# View logs
sudo journalctl -u configure-efa-fsx-lustre-client.service
# View warnings/errors from dmesg
sudo dmesg
```

Per ulteriori informazioni, consultate il `README.md` file nel file zip.

### Configurazione di montaggio automatico (opzionale)
<a name="auto-mount-configuration"></a>

Per informazioni sul montaggio automatico del file system Amazon FSx for Lustre all'avvio, consulta[Montaggio automatico del file system Amazon FSx](mount-fs-auto-mount-onreboot.md).

## Fase 3: interfacce EFA
<a name="add-efa-interfaces"></a>

Ciascun file system FSx for Lustre ha un limite massimo di 1024 connessioni EFA su tutte le istanze client.

Lo `configure-efa-fsx-lustre-client.sh` script configura automaticamente le interfacce EFA in base al tipo di istanza.


| Tipo di istanza | Numero predefinito di interfacce EFA | 
| --- | --- | 
| p6e-gb200.36xlarge | 8 | 
| p6-b200.48xlarge | 8 | 
| p5en.48xlarge | 8 | 
| p5e.48xlarge | 8 | 
| p5.48xlarge | 8 | 
| Altre istanze con più schede di rete | 2 | 
| Altre istanze con una singola scheda di rete | 1 | 

Ogni interfaccia EFA configurata su un'istanza client conta come una connessione rispetto al limite di 1024 connessioni EFA quando è connessa a un file system FSx for Lustre.

### Gestione manuale delle interfacce EFA
<a name="manage-interfaces-manually"></a>

Le istanze con più interfacce EFA in genere supportano un throughput più elevato. È possibile personalizzare il numero di interfacce per ottimizzare le prestazioni per carichi di lavoro specifici, purché si rimanga entro il limite totale di connessioni EFA.

È possibile gestire manualmente le interfacce EFA utilizzando i seguenti comandi:

1. Visualizza le interfacce EFA disponibili:

   ```
   for interface in /sys/class/infiniband/*; do
       if [ ! -e "$interface/device/driver" ]; then continue; fi
       driver=$(basename "$(realpath "$interface/device/driver")")
       if [ "$driver" != "efa" ]; then continue; fi
       echo $(basename $interface)
   done
   ```

1. Visualizza le interfacce attualmente configurate:

   ```
   sudo lnetctl net show
   ```

1. Aggiungi un'interfaccia EFA:

   ```
   sudo lnetctl net add --net efa --if {{device_name}} --peer-credits 32
   ```

   Sostituisci {{device\_name}} con un nome effettivo del dispositivo dall'elenco al passaggio 1.

1. Rimuovi un'interfaccia EFA:

   ```
   sudo lnetctl net del --net efa --if {{device_name}}
   ```

   Sostituisci {{device\_name}} con un nome effettivo del dispositivo dall'elenco al passaggio 2.