Reti avanzate con l'interfaccia VF Intel 82599 sulle istanze - Amazon Elastic Compute Cloud

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à.

Reti avanzate con l'interfaccia VF Intel 82599 sulle istanze

Per le istanze basate su Xen, la Funzione virtuale (VF) dell'interfaccia Intel 82599 offre funzionalità di rete avanzate. L'interfaccia utilizza il driver Intel ixgbevf.

Le schede seguenti mostrano come verificare il driver della scheda di rete installato per il sistema operativo dell'istanza.

Linux
Driver dell'interfaccia di rete Linux

Utilizza il comando seguente per verificare se il modulo viene utilizzato su un'interfaccia specifica, sostituendo il nome dell'interfaccia che desideri controllare. Se usi una singola interfaccia (impostazione predefinita), essa sarà eth0. Se il sistema operativo supporta nomi di rete prevedibili, questo potrebbe essere un nome simile a ens5.

Nell'esempio seguente, il modulo ixgbevf non viene caricato, perché il driver nell'elenco è vif.

[ec2-user ~]$ ethtool -i eth0 driver: vif version: firmware-version: bus-info: vif-0 supports-statistics: yes supports-test: no supports-eeprom-access: no supports-register-dump: no supports-priv-flags: no

In questo esempio, viene caricato il modulo ixgbevf. Questa istanza dispone della funzionalità per reti avanzate adeguatamente configurata.

[ec2-user ~]$ ethtool -i eth0 driver: ixgbevf version: 4.0.3 firmware-version: N/A bus-info: 0000:00:03.0 supports-statistics: yes supports-test: yes supports-eeprom-access: no supports-register-dump: yes supports-priv-flags: no
Windows
Adattatore di rete Windows

Per verificare se il driver è installato, connettiti all'istanza e apri Device Manager (Gestione dispositivi). Dovresti vedere Intel(R) 82599 Virtual Function elencato nella sezione Adattatori di rete.

Prepara l'istanza per le reti avanzate

Per preparare la configurazione delle funzionalità delle reti avanzate tramite l'interfaccia VF Intel 82599, configura l'istanza nel seguente modo:

  • Verifica che il tipo di istanza sia uno dei seguenti: C3, C4, D2, I2, M4 (esclusim4.16xlarge) e R3.

  • Verificare che l'istanza disponga di connettività Internet.

  • Se sull'istanza sono presenti dati importanti che devono essere conservati, è consigliabile eseguire una copia di backup di tali dati ora mediante la creazione di un'AMI dall'istanza. L'aggiornamento dei kernel e dei relativi moduli, nonché l'abilitazione dell'attributo sriovNetSupport, potrebbero rendere non compatibili le istanze o irraggiungibili i sistemi operativi. Se disponi di un backup recente, i tuoi dati saranno mantenuti.

  • Istanze Linux: avvia l'istanza da un'AMI HVM tramite il kernel Linux versione 2.6.32 o successive. Nella versione più recente di Amazon Linux HVM AMIs sono installati i moduli necessari per una rete avanzata e sono impostati gli attributi richiesti. Pertanto, se viene avviata un'istanza supportata da Amazon EBS e che include il supporto delle reti avanzate tramite un'AMI HVM di Amazon Linux corrente, le reti avanzate sono già abilitate per l'istanza.

    avvertimento

    Le reti avanzate sono supportate solo per le istanze HVM. L'abilitazione delle reti avanzate con un'istanza PV potrebbe rendere irraggiungibile l'istanza. L'impostazione di questo attributo senza un modulo appropriato o una versione di modulo corretta può rendere irraggiungibile l'istanza.

  • Istanze Windows: avvia l'istanza da un'AMI HVM a 64 bit. Non puoi abilitare le reti avanzate su Windows Server 2008. La rete avanzata è già abilitata per Windows Server 2012 R2 e Windows Server 2016 e versioni successive. AMIs Windows Server 2012 R2 include il driver Intel 1.0.15.3. Consigliamo di aggiornare questo driver alla versione più recente utilizzando la utility Pnputil.exe.

  • Puoi utilizzarlo AWS CloudShellda oppure installarlo e configurarlo AWS Tools for Windows PowerShellsu qualsiasi computer a tua scelta, preferibilmente sul desktop o sul laptop locale. AWS Management ConsoleAWS CLI Per ulteriori informazioni, consulta Accedi ad Amazon EC2 o la Guida per l'utente di AWS CloudShell. La rete avanzata non può essere gestita dalla EC2 console Amazon.

Verifica dell'abilitazione delle reti avanzate

Verificate che l'attributo sriovNetSupport sia impostato.

Attributo di istanza (sriovNetSupport)

Per controllare se per un'istanza è stato impostato l'attributo sriovNetSupport per le reti avanzate, utilizza uno dei seguenti comandi. Se l'attributo è impostato, il valore è simple.

  • describe-instance-attribute (AWS CLI)

    aws ec2 describe-instance-attribute --instance-id instance_id --attribute sriovNetSupport
  • Get-EC2InstanceAttribute (AWS Tools for Windows PowerShell)

    Get-EC2InstanceAttribute -InstanceId instance-id -Attribute sriovNetSupport
Attributo dell'immagine (sriovNetSupport)

Per controllare se per un'AMI è già stato impostato l'attributo sriovNetSupport per le reti avanzate, utilizza uno dei seguenti comandi. Se l'attributo è impostato, il valore è simple.

  • describe-images (AWS CLI)

    aws ec2 describe-images --image-id ami_id --query "Images[].SriovNetSupport"
  • Get-EC2Image (AWS Tools for Windows PowerShell)

    (Get-EC2Image -ImageId ami-id).SriovNetSupport

Abilitazione delle reti avanzate su un'istanza

La procedura utilizzata dipende dal sistema operativo dell'istanza.

avvertimento

Non sono disponibili procedure per disabilitare l'attributo delle reti avanzate dopo averlo abilitato.

Nell'ultima versione di Amazon Linux HVM è AMIs installato il ixgbevf modulo necessario per le reti avanzate e il set di sriovNetSupport attributi richiesto. Pertanto, se avvii un tipo di istanza tramite un'AMI HVM di Amazon Linux corrente, le reti avanzate sono già abilitate per l'istanza. Per ulteriori informazioni, consulta Verifica dell'abilitazione delle reti avanzate.

Se l'istanza è stata avviata utilizzando una AMI Amazon Linux più vecchia che non dispone delle reti avanzate già abilitate, utilizzare la seguente procedura per abilitare le reti avanzate.

Per abilitare le reti avanzate
  1. Connettiti alla tua istanza.

  2. Dall'istanza, esegui il seguente comando per aggiornare l'istanza in base al nuovo kernel e ai nuovi moduli kernel, compreso ixgbevf:

    [ec2-user ~]$ sudo yum update
  3. Dal computer locale, riavvia l'istanza utilizzando la EC2 console Amazon o uno dei seguenti comandi: reboot-instances(AWS CLI) o Restart-EC2Instance (AWS Tools for Windows PowerShell).

  4. Ricollegati all'istanza e verifica che il modulo ixgbevf sia installato con la versione minima consigliata utilizzando il comando modinfo ixgbevf disponibile in Verifica dell'abilitazione delle reti avanzate.

  5. [Istanza supportata da EBS] Dal tuo computer locale, interrompi l'istanza utilizzando la EC2 console Amazon o uno dei seguenti comandi: stop-instances()AWS CLI o Stop-EC2Instance (AWS Tools for Windows PowerShell).

    [Istanza supportata da instance store] Non è possibile arrestare l'istanza per modificare l'attributo. Passa invece alla procedura successiva.

  6. Dal computer locale, abilita l'attributo relativo alle reti avanzate utilizzando uno dei seguenti comandi:

    AWS CLI

    Utilizzo dell'modify-instance-attributecomando come segue.

    aws ec2 modify-instance-attribute --instance-id instance_id --sriov-net-support simple
    PowerShell

    Utilizzare Edit-EC2InstanceAttributecome segue.

    Edit-EC2InstanceAttribute -InstanceId instance_id -SriovNetSupport "simple"
  7. (Facoltativo) Crea un'AMI dall'istanza, come descritto in Crea un account supportato EBS da Amazon AMI. L'AMI eredita l'attributo relativo alle reti avanzate dall'istanza. Pertanto, è possibile utilizzare questa AMI per avviare un'altra istanza con le reti avanzate abilitate per impostazione di default.

  8. Dal tuo computer locale, avvia l'istanza utilizzando la EC2 console Amazon o uno dei seguenti comandi: start-instances(AWS CLI) o Start-EC2Instance (AWS Tools for Windows PowerShell).

  9. Connettiti all'istanza e verifica che il modulo ixgbevf sia installato e caricato sull'interfaccia di rete in uso tramite il comando ethtool -i ethn disponibile in Verifica dell'abilitazione delle reti avanzate.

Per abilitare le reti avanzate (istanze supportate da instance store)

Segui la procedura precedente fino al punto in cui si arresta l'istanza. Crea una nuova AMI come descritto in Crea un'istanza supportata dall'archivio AMI, assicurandoti di abilitare l'attributo relativo alle reti avanzate durante la registrazione dell'AMI.

AWS CLI

Utilizzo dell'register-imagecomando come segue.

aws ec2 register-image --sriov-net-support simple ...
PowerShell

Utilizzare Register-EC2Imagecome segue.

Register-EC2Image -SriovNetSupport "simple" ...

Prima di iniziare, controlla se le reti avanzate sono già abilitate nell'istanza.

Il Quick Start Ubuntu HVM AMIs include i driver necessari per una rete avanzata. Se hai una versione di ixgbevf precedente alla 2.16.4, puoi installare il pacchetto kernel linux-aws per avere i driver di rete ottimizzati più recenti.

La seguente procedura descrive le fasi generali necessarie per compilare il modulo ixgbevf su un'istanza Ubuntu.

Come installare il pacchetto linux-aws kernel
  1. Connettiti alla tua istanza.

  2. Aggiorna la cache dei pacchetti e i pacchetti.

    ubuntu:~$ sudo apt-get update && sudo apt-get upgrade -y linux-aws
    Importante

    Se durante il processo di aggiornamento viene richiesto di installare grub, utilizza /dev/xvda per installare grub, quindi scegli di conservare la versione corrente di /boot/grub/menu.lst.

Prima di iniziare, controlla se le reti avanzate sono già abilitate nell'istanza. L'ultima versione di Quick Start HVM AMIs include i driver necessari per una rete avanzata, pertanto non è necessario eseguire passaggi aggiuntivi.

La procedura seguente descrive le fasi generali da eseguire se devi abilitare le reti avanzate con l'interfaccia VF Intel 82599 su una distribuzione Linux diversa da Amazon Linux o Ubuntu. Per ulteriori informazioni, ad esempio sintassi dettagliata dei comandi, posizione dei file o supporto di pacchetti e strumenti, consulta la documentazione specifica per la distribuzione Linux in uso.

Per abilitare le reti avanzate su Linux
  1. Connettiti alla tua istanza.

  2. Scaricate il codice sorgente del ixgbevf modulo sulla vostra istanza da Sourceforge all'indirizzo https://sourceforge. net/projects/e1000/files/ixgbevf%20stable/.

    Le versioni di ixgbevf precedenti alla 2.16.4, compresa la versione 2.14.2, non vengono compilate correttamente su alcune distribuzioni Linux, comprese determinate versioni di Ubuntu.

  3. Compila e installa il modulo ixgbevf sull'istanza.

    avvertimento

    Se si esegue la compilazione del modulo ixgbevf per il kernel corrente e quindi si aggiorna il kernel senza ricompilare il driver per il nuovo kernel, al successivo riavvio il sistema potrebbe ripristinare il modulo ixgbevf specifico della distribuzione. Questo potrebbe rendere irraggiungibile il sistema se la versione specifica della distribuzione è incompatibile con la rete migliorata.

  4. Esegui il comando sudo depmod per aggiornare le dipendenze del modulo.

  5. Aggiorna initramfs sull'istanza in modo che il nuovo modulo venga caricato in fase di avvio.

  6. Determina se il sistema utilizza nomi di interfaccia di rete prevedibili per impostazione di default. I sistemi che utilizzano systemd o udev versione 197 o successive possono rinominare i dispositivi Ethernet e pertanto non garantiscono che la singola interfaccia di rete venga rinominata in eth0. Questo comportamento potrebbe causare problemi durante la connessione all'istanza. Per ulteriori informazioni e per informazioni sulle altre opzioni di configurazione disponibili, consulta l'argomento relativo ai nomi di interfaccia di rete prevedibili sul sito Web freedesktop.org.

    1. È possibile controllare le versioni di systemd o udev sui sistemi basati su RPM utilizzando il seguente comando:

      [ec2-user ~]$ rpm -qa | grep -e '^systemd-[0-9]\+\|^udev-[0-9]\+' systemd-208-11.el7_0.2.x86_64

      Nell'esempio precedente relativo a Red Hat Enterprise Linux 7, la versione di systemd è 208, pertanto, i nomi di interfaccia di rete prevedibili devono essere disabilitati.

    2. Disabilitare i nomi di interfaccia di rete prevedibili aggiungendo l'opzione net.ifnames=0 alla riga GRUB_CMDLINE_LINUX in /etc/default/grub.

      [ec2-user ~]$ sudo sed -i '/^GRUB\_CMDLINE\_LINUX/s/\"$/\ net\.ifnames\=0\"/' /etc/default/grub
    3. Ricompila il file di configurazione di grub.

      [ec2-user ~]$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg
  7. [Istanza supportata da EBS] Dal tuo computer locale, interrompi l'istanza utilizzando la EC2 console Amazon o uno dei seguenti comandi: stop-instances () o AWS CLIStop-EC2Instance (AWS Tools for Windows PowerShell).

    [Istanza supportata da instance store] Non è possibile arrestare l'istanza per modificare l'attributo. Passa invece alla procedura successiva.

  8. Dal computer locale, abilita l'attributo relativo alle reti avanzate utilizzando uno dei seguenti comandi:

    AWS CLI

    Utilizzo dell'modify-instance-attributecomando come segue.

    aws ec2 modify-instance-attribute --instance-id instance_id --sriov-net-support simple
    PowerShell

    Utilizzare Edit-EC2InstanceAttributecome segue.

    Edit-EC2InstanceAttribute -InstanceId instance_id -SriovNetSupport "simple"
  9. (Facoltativo) Crea un'AMI dall'istanza, come descritto in Crea un account supportato EBS da Amazon AMI. L'AMI eredita l'attributo relativo alle reti avanzate dall'istanza. Pertanto, è possibile utilizzare questa AMI per avviare un'altra istanza con le reti avanzate abilitate per impostazione di default.

    Se il sistema operativo dell'istanza contiene un file /etc/udev/rules.d/70-persistent-net.rules, è necessario eliminarlo prima di creare l'AMI. Questo file contiene l'indirizzo MAC per la scheda Ethernet dell'istanza originale. Se un'altra istanza viene avviata con questo file, il sistema operativo non sarà in grado di trovare il dispositivo ed eth0 potrebbe non funzionare causando problemi di avvio. Questo file viene rigenerato al successivo ciclo di avvio e qualsiasi istanza avviata dall'AMI crea la propria versione del file.

  10. Dal tuo computer locale, avvia l'istanza utilizzando la EC2 console Amazon o uno dei seguenti comandi: start-instances(AWS CLI) o Start-EC2Instance (AWS Tools for Windows PowerShell).

  11. (Facoltativo) Connettiti all'istanza e verifica che il modulo sia installato.

Per abilitare le reti avanzate (istanze supportate da archivio istanze)

Segui la procedura precedente fino al punto in cui si arresta l'istanza. Crea una nuova AMI come descritto in Crea un'istanza supportata dall'archivio AMI, assicurandoti di abilitare l'attributo relativo alle reti avanzate durante la registrazione dell'AMI.

AWS CLI

Utilizzo dell'register-imagecomando come segue.

aws ec2 register-image --sriov-net-support simple ...
PowerShell

Utilizzare Register-EC2Imagecome segue.

Register-EC2Image -SriovNetSupport "simple" ...

Se hai avviato l'istanza per la quale la funzionalità di reti avanzate non è già abilitata, devi scaricare e installare il driver per la scheda di rete richiesto sull'istanza e quindi impostare l'attributo sriovNetSupport dell'istanza in modo da attivare le reti avanzate. Puoi abilitare questo attributo solo sui tipi di istanza supportati. Per ulteriori informazioni, consulta Rete migliorata per le istanze Amazon EC2.

Importante

Per visualizzare gli ultimi aggiornamenti dei driver in Windows AMIs, consulta la cronologia delle versioni di Windows AMI nel AWS Windows AMI Reference.

Per abilitare le reti avanzate
  1. Connettersi all'istanza ed eseguire l'accesso come amministratore locale.

  2. [Windows Server 2016 e versioni successive] Esegui il seguente PowerShell script di EC2 avvio per configurare l'istanza dopo l'installazione del driver.

    PS C:\> C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeInstance.ps1 -Schedule
    Importante

    La password dell'amministratore verrà reimpostata quando abiliti lo script di avvio dell'istanza EC2 di inizializzazione. Puoi modificare il file di configurazione per disattivare la reimpostazione della password amministratore specificandolo nelle impostazioni delle attività di inizializzazione.

  3. Dall'istanza, scaricare il driver della scheda di rete Intel per il sistema operativo in uso:

    • Windows Server 2022

      Visita la pagina di download e scarica Wired_driver_version_x64.zip.

    • Windows Server 2019 incluso per Server versione 1809 e successive*

      Visita la pagina di download e scarica Wired_driver_version_x64.zip.

    • Windows Server 2016 incluso per Server versione 1803 e precedenti*

      Visita la pagina di download e scarica Wired_driver_version_x64.zip.

    • Windows Server 2012 R2

      Visita la pagina di download e scarica Wired_driver_version_x64.zip.

    • Windows Server 2012

      Visita la pagina di download e scarica Wired_driver_version_x64.zip.

    • Windows Server 2008 R2

      Visita la pagina di download e scarica PROWinx64Legacy.exe.

    *Le versioni Server 1803 e precedenti e 1809 e successive non sono specificatamente trattate nelle pagine Driver e Software Intel.

  4. Installa il driver della scheda di rete Intel per il sistema operativo in uso.

    • Windows Server 2008 R2

      1. Nella cartella Downloads, individua il file PROWinx64Legacy.exe e rinominalo PROWinx64Legacy.zip.

      2. Estrai i contenuti del file PROWinx64Legacy.zip.

      3. Apri la riga di comando, passa alla cartella contenente i file estratti e utilizza l'utility pnputil per aggiungere e installare il file INF nell'archivio dei driver.

        C:\> pnputil -a PROXGB\Winx64\NDIS62\vxn62x64.inf
    • Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2 e Windows Server 2012

      1. Nella cartella Downloads, estrarre i contenuti del file Wired_driver_version_x64.zip.

      2. Estrai i contenuti del file Wired_driver_version_x64.zip.

      3. Apri la riga di comando, passa alla cartella contenente i file estratti ed esegui uno dei seguenti comandi per utilizzare l'utility pnputil per aggiungere e installare il file INF nell'archivio dei driver.

        • Windows Server 2022

          pnputil -i -a PROXGB\Winx64\NDIS68\vxn68x64.inf
        • Windows Server 2019

          pnputil -i -a PROXGB\Winx64\NDIS68\vxn68x64.inf
        • Windows Server 2016

          pnputil -i -a PROXGB\Winx64\NDIS65\vxn65x64.inf
        • Windows Server 2012 R2

          pnputil -i -a PROXGB\Winx64\NDIS64\vxn64x64.inf
        • Windows Server 2012

          pnputil -i -a PROXGB\Winx64\NDIS63\vxn63x64.inf
  5. Dal computer locale, abilita l'attributo relativo alle reti avanzate utilizzando uno dei seguenti comandi:

    AWS CLI

    Utilizzo dell'modify-instance-attributecomando come segue.

    aws ec2 modify-instance-attribute --instance-id instance_id --sriov-net-support simple
    PowerShell

    Usa Edit-EC2InstanceAttributecome segue

    Edit-EC2InstanceAttribute -InstanceId instance_id -SriovNetSupport "simple"
  6. (Facoltativo) Crea un'AMI dall'istanza, come descritto in Crea un account supportato EBS da Amazon AMI. L'AMI eredita l'attributo relativo alle reti avanzate dall'istanza. Pertanto, è possibile utilizzare questa AMI per avviare un'altra istanza con le reti avanzate abilitate per impostazione di default.

  7. Dal tuo computer locale, avvia l'istanza utilizzando la EC2 console Amazon o uno dei seguenti comandi: start-instances(AWS CLI) o Start-EC2Instance (AWS Tools for Windows PowerShell).

Risolvere i problemi di connettività

Se si perde la connettività durante l'abilitazione delle reti avanzate, il modulo ixgbevf potrebbe non essere compatibile con il kernel. Prova a installare la versione del modulo ixgbevf inclusa nella distribuzione di Linux per l'istanza in uso.

Se si abilitano le reti avanzate per un'istanza PV o AMI, l'istanza può risultare irraggiungibile.

Per ulteriori informazioni, vedi Come posso attivare e configurare una rete avanzata sulle mie EC2 istanze?