Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Premesse

Dispositivi interessati

Risoluzione dei problemi di installazione dell'hardware Nexus SmartNIC

Passaggio 1. Verificare la corretta installazione dell'hardware.

Passaggio 2. Verificare la compatibilità degli slot PCI Express.

Passaggio 3. Verificare l'installazione nello slot PCI Express attivo.

Passaggio 4. Verificare che Nexus SmartNIC riceva alimentazione.

Passaggio 5. Verificare l'integrità del firmware.

Passaggio 6. Verificare il rilevamento PCI Express del sistema operativo host.

Risoluzione dei problemi di installazione del driver Nexus SmartNIC

Passaggio 1. Verificare L'Utilizzo Del Driver.

Passaggio 2. Verificare l'installazione del driver.

Verificare l'installazione del driver da RPM (apt, yum, ecc.)

Verifica installazione driver dall'origine

Passaggio 3. Tentativo Di Caricare Il Driver Software.

"modprobe: IRREVERSIBILE: Messaggio di errore "Modulo esanico non trovato"

"modprobe: "Chiave richiesta non disponibile" Messaggio di errore

Passaggio 4. Confermare la funzionalità dell'utilità Nexus SmartNIC.

Informazioni correlate

Introduzione

In questo documento viene descritto come risolvere i problemi relativi all'installazione di driver hardware e software per le schede di interfaccia di rete a bassa latenza Nexus SmartNIC (in precedenza Exablaze ExaNIC).

Prerequisiti

Requisiti

Cisco consiglia di comprendere la procedura di installazione dell'hardware per le schede di interfaccia di rete a bassa latenza Nexus serie SmartNIC. Cisco consiglia inoltre di avere una conoscenza di base dell'interfaccia della riga di comando di Linux.

Componenti usati

Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.

Premesse

Dispositivi interessati

Le procedure descritte in questo documento si applicano a questo hardware:

- Nexus SmartNIC X10

- Nexus SmartNIC X10-HPT

- Nexus SmartNIC X10-GM

- Nexus SmartNIC X25

- Nexus SmartNIC X40

- Nexus SmartNIC X100

- Nexus SmartNIC V5P

- Nexus SmartNIC V9P

Risoluzione dei problemi di installazione dell'hardware Nexus SmartNIC

In questa sezione del documento viene descritto come risolvere i problemi relativi all'installazione dell'hardware della scheda di interfaccia di rete a bassa latenza Nexus SmartNIC. Seguire questa sezione del documento quando il sistema operativo host (in genere una distribuzione Linux o Windows Server) non riconosce una SmartNIC Nexus come periferica PCI Express valida.

Passaggio 1. Verificare la corretta installazione dell'hardware.

Le schede di interfaccia di rete Nexus SmartNIC devono essere installate correttamente in uno slot PCI Express (PCIe) sulla scheda madre o riser/secondaria dell'host. Per ulteriori informazioni su come installare una scheda PCIe, consultare il manuale dell'host fornito dal produttore.

Per ulteriori informazioni sull'installazione della scheda PCIe sui server Cisco UCS, consultare la seguente documentazione di supporto:

- Guida all'installazione e all'assistenza del server Cisco UCS C220 M5

- Guida all'installazione e all'assistenza del server Cisco UCS C240 M5

Passaggio 2. Verificare la compatibilità degli slot PCI Express.

Tutte le schede di interfaccia di rete Nexus SmartNIC devono essere installate in uno slot compatibile con PCIe 3.0. Inoltre, è necessario utilizzare almeno uno slot PCIe x8 con 49 pin per collegare tutte le schede di interfaccia di rete Nexus SmartNIC. Per ulteriori informazioni sulla conformità degli slot PCIe a queste specifiche, consultare il manuale dell'host fornito dal produttore.

Per ulteriori informazioni sulle specifiche degli slot PCIe sui server Cisco UCS, fare riferimento a questa tabella e alla documentazione di supporto:

Cisco UCS Server modello

Compatibilità slot PCIe

Documentazione di supporto

Cisco UCS C220 M5

Compatibilità con tutti gli slot PCIe

Guida all'installazione e all'assistenza del server Cisco UCS C220 M5

Cisco UCS C240 M5

Compatibilità con tutti gli slot PCIe

Guida all'installazione e all'assistenza del server Cisco UCS C240 M5

Passaggio 3. Verificare l'installazione nello slot PCI Express attivo.

Una SmartNIC Nexus deve essere inserita correttamente in uno slot PCI Express collegato a una CPU attiva e installata (unità di elaborazione centrale). Se un host è dotato di più socket della CPU in cui solo un socket ha una CPU installata (anche definita "configurazione a CPU singola"), non tutti gli slot PCIe possono essere attivi e funzionanti. Per ulteriori informazioni sugli slot PCIe attivati in una configurazione a CPU singola, consultare il manuale dell'host fornito dal produttore.

Per ulteriori informazioni sugli slot PCIe attivi sui server Cisco UCS in una configurazione a CPU singola, fare riferimento a questa tabella e alla documentazione di supporto:

Cisco UCS Server modello

Slot PCIe attivi

Documentazione di supporto

Cisco UCS C220 M5

Riser PCIe 1, slot 1

Guida all'installazione e all'assistenza del server Cisco UCS C220 M5

Cisco UCS C240 M5

Riser PCIe 1, slot 1

Riser PCIe 1, slot 2

Riser PCIe 1B, slot 1

Riser PCIe 1B, slot 2

Riser PCIe 1B, slot 3

Guida all'installazione e all'assistenza del server Cisco UCS C240 M5

Passaggio 4. Verificare che Nexus SmartNIC riceva alimentazione.

Ogni scheda di interfaccia di rete SmartNIC Nexus dispone di diversi LED (Light Emitting Diodes) posizionati sulla staffa PCIe. Questi LED sono in genere visibili dall'esterno dell'host. A ciascuna porta SFP+ e QSFP della scheda di interfaccia di rete è associato un LED di dimensioni maggiori. Questi LED sono complessivamente chiamati LED di porte.

Sulle schede di interfaccia di rete con solo porte SFP+, è presente un LED rosso più piccolo associato al connettore PPS (ad eccezione della SmartNIC Nexus X10-GM, in cui il LED rosso più piccolo è associato allo stato dell'orologio del Grand Master). Questo LED è noto come LED PPS.

Nota: Le schede di interfaccia di rete SmartNIC Nexus dotate di porte QSFP non dispongono di un LED PPS.

In sintesi, fare riferimento alla tabella qui:

Modello Nexus SmartNIC

LED porte

LED PPS

X10

Sì

Sì

X10-HPT

Sì

Sì

X10-GM

Sì

Sì (GPS)

X25

Sì

Sì

X40

Sì

No

X100

Sì

No

V5P

Sì

No

V9P

Sì

No

Quando una scheda di interfaccia di rete Nexus SmartNIC viene accesa per la prima volta insieme all'host, tutti i LED sulla scheda di interfaccia di rete devono lampeggiare momentaneamente. Se non si accende alcun LED in qualsiasi momento dopo l'accensione dell'host, significa che la scheda di interfaccia di rete SmartNIC Nexus non riceve correttamente l'alimentazione dal bus PCIe. Risolvere ulteriormente il problema con questa procedura:

1. Verificare se lo slot PCIe in uso funziona con altre periferiche di cui è nota la funzionalità. In teoria, uno dovrebbe provare con un'altra scheda di interfaccia di rete.

2. Verificare se la scheda di interfaccia di rete Nexus SmartNIC funziona senza problemi in un altro slot PCIe che è noto per essere funzionante.

3. Verificare che la scheda di interfaccia di rete Nexus SmartNIC funzioni senza problemi in uno slot PCIe che funziona su un altro host noto come funzionante.

Se la scheda di interfaccia di rete Nexus SmartNIC non è in grado di ricevere alimentazione indipendentemente dallo slot PCIe e dall'host utilizzati, contattare Cisco TAC per ulteriori informazioni sulla risoluzione dei problemi.

Passaggio 5. Verificare l'integrità del firmware.

Come accennato in precedenza al punto 4, ogni scheda di interfaccia di rete Nexus SmartNIC è potenzialmente dotata di due tipi di LED:

- LED porte

- LED PPS

Quando nessun modulo SFP+/QSFP è inserito nelle porte della scheda di interfaccia di rete, questi LED devono rimanere spenti dopo il momentaneo flash descritto al punto 4 quando la scheda di interfaccia di rete si accende inizialmente.

Esistono tre scenari comuni in cui ciò non avviene a causa di firmware danneggiato o mancante:

- Se i LED delle porte e dei PPS rimangono accesi dopo il lampeggiamento temporaneo quando non sono inseriti moduli SFP+/QSFP e il sistema operativo host non riconosce la scheda di interfaccia di rete come periferica PCIe valida (ad esempio tramite il comando lspci), potrebbe essere necessario ripristinare il firmware della scheda di interfaccia di rete Nexus SmartNIC. Seguire il processo di ripristino del firmware Nexus SmartNIC e caricare una nuova versione del firmware nella SmartNIC Nexus. Se il problema persiste, contattare Cisco TAC per ulteriori informazioni sulla risoluzione dei problemi.

- Se una scheda di interfaccia di rete Nexus SmartNIC è dotata di un LED PPS e tale LED PPS è acceso continuamente, il firmware caricato sulla scheda è danneggiato e la scheda è entrata in modalità di ripristino firmware. Per utilizzare normalmente la scheda di interfaccia di rete, è necessario seguire il processo di aggiornamento del firmware Nexus SmartNIC. Se il problema persiste, contattare Cisco TAC per ulteriori informazioni sulla risoluzione dei problemi.

- Se una scheda di interfaccia di rete Nexus SmartNIC non è dotata di LED PPS e i LED della porta si alternano continuamente tra spento e giallo, il firmware caricato sulla scheda è danneggiato e la scheda è entrata in modalità di ripristino del firmware. Per utilizzare normalmente la scheda di interfaccia di rete, è necessario seguire il processo di aggiornamento del firmware Nexus SmartNIC. Se il problema persiste, contattare Cisco TAC per ulteriori informazioni sulla risoluzione dei problemi.

Passaggio 6. Verificare il rilevamento PCI Express del sistema operativo host.

È possibile confermare che il sistema operativo host è in grado di rilevare correttamente una scheda di interfaccia di rete Nexus SmartNIC tramite il bus PCIe con il comando lspci. L'ID fornitore PCI (VID) a 16 bit di Exablaze è 0x1ce4, che può essere utilizzato per verificare le informazioni sui dispositivi Nexus SmartNIC PCIe. Questa condizione viene dimostrata nell'esempio seguente:

[root@host ~]# lspci -d 1ce4:

01:00.0 Ethernet controller: Exablaze ExaNIC X10

Per visualizzare informazioni più dettagliate sulla scheda PCIe, aggiungere il flag -v verbose al comando lspci. Questa condizione viene dimostrata nell'esempio seguente:

[root@host ~]# lspci -d 1ce4: -v

01:00.0 Ethernet controller: Exablaze ExaNIC X10

Subsystem: Exablaze ExaNIC X10

Flags: bus master, fast devsel, latency 0, IRQ 30

Memory at 92000000 (32-bit, non-prefetchable) [size=8M]

Memory at 92800000 (64-bit, non-prefetchable) [size=4M]

Capabilities: [80] Power Management version 3

Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit+

Capabilities: [c0] Express Endpoint, MSI 00

Capabilities: [100] Advanced Error Reporting

Capabilities: [1b8] Latency Tolerance Reporting

Capabilities: [300] #19

Capabilities: [340] Vendor Specific Information: ID=0001 Rev=0 Len=02c <?>

Kernel modules: exanic

Per visualizzare informazioni ancora più dettagliate, aggiungere il flag -v verbose al comando lspci. Questa condizione viene dimostrata nell'esempio seguente:

[root@host ~]# lspci -d 1ce4: -vv

01:00.0 Ethernet controller: Exablaze ExaNIC X10

Subsystem: Exablaze ExaNIC X10

Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+

Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-

Latency: 0

Interrupt: pin A routed to IRQ 30

Region 0: Memory at 92000000 (32-bit, non-prefetchable) [size=8M]

Region 2: Memory at 92800000 (64-bit, non-prefetchable) [size=4M]

Capabilities: [80] Power Management version 3

Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)

Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-

Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit+

Address: 00000000fee003b8  Data: 0000

Capabilities: [c0] Express (v2) Endpoint, MSI 00

DevCap:    MaxPayload 128 bytes, PhantFunc 0, Latency L0s <64ns, L1 <1us

ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- SlotPowerLimit 75.000W

DevCtl:    Report errors: Correctable- Non-Fatal- Fatal- Unsupported-

RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+

MaxPayload 128 bytes, MaxReadReq 512 bytes

DevSta:    CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-

LnkCap:    Port #0, Speed 8GT/s, Width x8, ASPM not supported, Exit Latency L0s unlimited, L1 unlimited

ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+

LnkCtl:    ASPM Disabled; RCB 64 bytes Disabled- CommClk+

ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-

LnkSta:    Speed 8GT/s, Width x8, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-

DevCap2: Completion Timeout: Range B, TimeoutDis+, LTR+, OBFF Not Supported

DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled

LnkCtl2: Target Link Speed: 8GT/s, EnterCompliance- SpeedDis-

Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-

Compliance De-emphasis: -6dB

LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete+, EqualizationPhase1+

EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-

Capabilities: [100 v2] Advanced Error Reporting

UESta:    DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-

UEMsk:    DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-

UESvrt:    DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-

CESta:    RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr-

CEMsk:    RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+

AERCap:    First Error Pointer: 00, GenCap- CGenEn- ChkCap- ChkEn-

Capabilities: [1b8 v1] Latency Tolerance Reporting

Max snoop latency: 0ns

Max no snoop latency: 0ns

Capabilities: [300 v1] #19

Capabilities: [340 v1] Vendor Specific Information: ID=0001 Rev=0 Len=02c <?>

Kernel modules: exanic

Se il comando lspci visualizza informazioni sulla scheda di interfaccia di rete Nexus SmartNIC, significa che il sistema operativo host ha rilevato correttamente la scheda di interfaccia di rete Nexus SmartNIC tramite il bus PCIe. Andando avanti, è possibile installare i driver software Nexus SmartNIC e iniziare a utilizzare la scheda.

Risoluzione dei problemi di installazione del driver Nexus SmartNIC

In questa sezione del documento viene descritto come risolvere i problemi relativi all'installazione dei driver per schede di interfaccia di rete a bassa latenza Nexus SmartNIC. Seguire questa sezione del documento quando il sistema operativo host (in genere una distribuzione Linux o Windows Server) riconosce una SmartNIC Nexus come periferica PCI Express valida, ma il sistema operativo host non riconosce le porte della SmartNIC Nexus come interfaccia di rete valida. Di seguito è riportato un esempio:

[root@host ~]# ls /dev/exanic*

ls: cannot access /dev/exanic*: No such file or directory

In questa sezione del documento si presume che si sia verificato un errore durante il tentativo di installare i driver del software Nexus SmartNIC come descritto nella guida di installazione del software Nexus SmartNIC.

Tutti i comandi di questa procedura vengono eseguiti dall'account Linux radice. Se non si utilizza l'account Linux principale per seguire questa procedura, potrebbe essere necessario utilizzare il comando sudo per elevare i privilegi di sicurezza dell'account a quelli di un utente avanzato.

Passaggio 1. Verificare L'Utilizzo Del Driver.

Se il kernel del sistema operativo host ha caricato un driver software per una scheda di interfaccia di rete Nexus SmartNIC, il comando lspci con il flag -v verbose visualizzerà il driver in uso. È possibile eseguire query per i dispositivi utilizzando l'ID fornitore PCI (0x1ce4) di Exablaze per visualizzare informazioni specifiche per i dispositivi Nexus SmartNIC PCIe. Di seguito è riportato un esempio:

[root@host ~]# lspci -d 1ce4: -v | egrep Kernel.driver

Kernel driver in use: exanic

Se il kernel del sistema operativo host non ha caricato il driver del software, questa riga "Driver del kernel in uso" verrà omessa dall'output di lspci -d 1ce4: -v.

Passaggio 2. Verificare l'installazione del driver.

Verificare l'installazione del driver da RPM (apt, yum, ecc.)

Come descritto nella guida all'installazione del software Nexus SmartNIC, i driver del software Nexus SmartNIC possono essere installati tramite un gestore di pacchetti (ad esempio apt, yum o direttamente tramite rpm). Se sono stati installati i driver del software ExaNIC con questo metodo, è possibile verificare che tutti i file siano stati installati correttamente, come mostrato di seguito.

A seconda dell'architettura della CPU dell'host, il file di libreria libexanic.a può essere in /usr/lib/ o in /usr/lib64/. Di seguito viene riportato un esempio da un'architettura di CPU x86 (32 bit):

[root@host ~]# ls /usr/lib/ | grep exanic

libexanic.a

Di seguito viene riportato un esempio dall'architettura di una CPU x86_64 (64 bit):

[root@host ~]# ls /usr/lib64/ | grep exanic

libexanic.a

Verificare che i file di intestazione della libreria SmartNIC Nexus siano presenti nella directory /usr/include/exanic/. come mostrato nell'esempio:

[root@host ~]# ls /usr/include/exanic/ -1

config.h

const.h

exanic.h

fifo_if.h

fifo_rx.h

fifo_tx.h

filter.h

firewall.h

hw_info.h

ioctl.h

pcie_if.h

port.h

register.h

time.h

util.h

Verificare che le utilità binarie di Nexus SmartNIC si trovino nella directory /usr/bin/. come mostrato nell'esempio:

[root@host ~]# ls /usr/bin/ -1 | grep exanic-

exanic-capture

exanic-clock-check

exanic-clock-sync

exanic-config

exanic-fwupdate

Infine, assicurarsi che il file del modulo exanic.ko.xz sia presente nella directory /lib/modules/`uname -r`/extra/. Il comando inline `uname -r` inserisce automaticamente la release corrente del kernel nella directory. Questo comando è circondato da accenti gravi (`), non da virgolette singole. Nell'esempio seguente:

[root@host ~]# ls /lib/modules/\`uname -r\`/extra/ | grep exanic

exanic.ko.xz

Verifica installazione driver dall'origine

Come descritto nella guida di installazione del software Nexus SmartNIC, i driver del software Nexus SmartNIC possono essere creati e installati dal codice sorgente. Se sono stati installati i driver del software Nexus SmartNIC con questo metodo, è possibile verificare che tutti i file siano stati installati correttamente, come mostrato negli esempi riportati di seguito.

Verificare che il file di libreria libexanic.a sia presente nella directory /usr/local/lib/. Nell'esempio riportato di seguito viene illustrato.

[root@host ~]# ls /usr/local/lib/ | grep exanic

libexanic.a

Verificare che i file di intestazione della libreria SmartNIC Nexus siano presenti nella directory /usr/local/include/exanic/. Nell'esempio riportato di seguito viene illustrato.

[root@host ~]# ls /usr/local/include/exanic/ -1

config.h

const.h

exanic.h

fifo_if.h

fifo_rx.h

fifo_tx.h

filter.h

firewall.h

hw_info.h

ioctl.h

pcie_if.h

port.h

register.h

time.h

util.h

Verificare che le utilità binarie di Nexus SmartNIC si trovino nella directory /usr/local/bin/. Come mostrato nell'esempio riportato di seguito:

[root@host ~]# ls /usr/local/bin -1 | grep exanic-

exanic-capture

exanic-clock-check

exanic-clock-sync

exanic-config

exanic-fwupdate

Infine, assicurarsi che il file del modulo exanic.ko sia presente nella directory /lib/modules/`uname -r`/extra/. Il comando inline `uname -r` inserisce automaticamente la release corrente del kernel nella directory. Questo comando è circondato da accenti gravi (`), non da virgolette singole. Nell'esempio seguente:

[root@host ~]# ls /lib/modules/`uname -r`/extra | grep exanic

exanic.ko

Passaggio 3. Tentativo Di Caricare Il Driver Software.

Il driver del software Nexus SmartNIC può essere caricato manualmente con il comando modprobe exanic.

Se vengono caricati i driver SmartNIC Nexus, il kernel Linux li riconoscerà come dispositivo. È possibile verificare questa condizione con il comando ls /dev/exanic*, che visualizzerà tutti i dispositivi SmartNIC Nexus riconosciuti. Questo è l'esempio seguente:

[root@host ~]# ls /dev/exanic*

/dev/exanic0

Se i driver Nexus SmartNIC non sono stati caricati correttamente, il comando modprobe exanic potrebbe restituire o meno un errore. Nelle sottosezioni seguenti viene descritto come risolvere gli errori restituiti da questo comando.

"modprobe: IRREVERSIBILE: Messaggio di errore "Modulo esanico non trovato"

Questo messaggio di errore può essere potenzialmente causato da due problemi diversi descritti nelle sottosezioni seguenti.

Dipendenze del modulo kernel mappate in modo errato

Il sistema operativo host non è in grado di individuare il modulo compilato per il kernel corrente in esecuzione. Di conseguenza, il sistema operativo host non è in grado di caricare il modulo nel sistema con il comando modprobe exanic. Per risolvere questo problema, usare il comando depmod -a per creare una mappa delle dipendenze del modulo kernel. Il modulo kernel può quindi essere caricato con il comando modprobe exanic.

Modulo kernel non generato da DKMS

DKMS (Dynamic Kernel Module Support) consente la ricostruzione automatica dei moduli kernel ogni volta che viene installato un nuovo kernel del sistema operativo. Se DKMS non ha compilato il modulo del kernel Nexus SmartNIC, è possibile che il modulo del kernel Nexus SmartNIC sia stato precedentemente compilato per una versione diversa del kernel del sistema operativo.

Affinché il DKMS funzioni come previsto, è necessario installare i pacchetti kernel-devel e kernel-headers utilizzando il package manager del sistema operativo host. Di seguito è riportato un esempio di come confermare se il pacchetto è installato con il comando yum list:

[root@host ~]$ yum list kernel-devel

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

* base: mirror.internode.on.net

* epel: ucmirror.canterbury.ac.nz

* extras: mirror.internode.on.net

* updates: centos.mirror.serversaustralia.com.au

Installed Packages

kernel-devel.x86_64                                      3.10.0-1062.el7                                            @base

kernel-devel.x86_64                                      3.10.0-1062.12.1.el7                                       @updates

[root@host ~]$ yum list kernel-headers

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

* base: mirror.internode.on.net

* epel: ucmirror.canterbury.ac.nz

* extras: mirror.internode.on.net

* updates: centos.mirror.serversaustralia.com.au

Installed Packages

kernel-headers.x86_64                                     3.10.0-1062.12.1.el7                                      @updates

Consultare il manuale del programma di gestione dei pacchetti del sistema operativo host per verificare come determinare se un pacchetto specifico è installato.

È possibile confermare se il modulo kernel Nexus SmartNIC è stato aggiunto, generato e installato correttamente da DKMS con il comando dkms status. Di seguito è riportato un esempio dell'output di questo comando in uno stato funzionante previsto:

[root@host ~]# dkms status

exanic, 2.4.1-1.el8, 3.10.0-957.27.2.el7.x86_64, x86_64: installed

Se questo output mostra che il modulo del kernel Nexus SmartNIC è in uno stato diverso da "installato", sarà necessario compilare o installare il modulo del kernel Nexus SmartNIC utilizzando DKMS.

Se il modulo kernel Nexus SmartNIC è stato aggiunto ma non generato, utilizzare il comando dkms build -m exanic -v {version} per compilare il modulo kernel Nexus SmartNIC. Di seguito è riportato un esempio di questo comando con la versione software 2.4.1-1.el7:

[root@host ~]$ dkms build -m exanic -v 2.4.1-1.el7

Kernel preparation unnecessary for this kernel.  Skipping...

Building module:

cleaning build area...

make -j16 KERNELRELEASE=3.10.0-1062.el7.x86_64 -C modules KDIR=/lib/modules/3.10.0-1062.el7.x86_64/build...

cleaning build area...

DKMS: build completed.

Se il modulo kernel Nexus SmartNIC è stato generato ma non installato, utilizzare il comando dkms install -m exanic -v {version} per installare il modulo kernel Nexus SmartNIC. Di seguito è riportato un esempio di questo comando con la versione software 2.4.1-1.el7:

[root@host ~]$ dkms install -m exanic -v 2.4.1-1.el7

exanic.ko.xz:

Running module version sanity check.

- Original module

- No original module exists within this kernel

- Installation

- Installing to /lib/modules/3.10.0-1062.el7.x86_64/extra/

exasock.ko.xz:

Running module version sanity check.

- Original module

- No original module exists within this kernel

- Installation

- Installing to /lib/modules/3.10.0-1062.el7.x86_64/extra/

Adding any weak-modules

depmod...

DKMS: install completed.

Dopo la creazione e l'installazione del modulo kernel Nexus SmartNIC con DKMS, il modulo kernel Nexus SmartNIC può essere caricato con il comando modprobe exanic.

"modprobe: "Chiave richiesta non disponibile" Messaggio di errore

Questo messaggio di errore può essere visualizzato sugli host dotati di firmware UEFI (Unified Extensible Firmware Interface) con il protocollo Secure Boot abilitato. L'avvio protetto impedisce il caricamento di driver del kernel non firmati con una firma digitale accettabile. Di conseguenza, quando si tenta di caricare il driver del kernel Nexus SmartNIC con il comando modprobe exanic, il protocollo Secure Boot impedisce il caricamento del driver del kernel.

Per risolvere il problema, è necessario disabilitare il protocollo Secure Boot nell'UEFI dell'host. Per ulteriori informazioni su come disattivare il protocollo Secure Boot all'interno dell'UEFI dell'host, consultare il manuale dell'host fornito dal produttore.

Passaggio 4. Confermare la funzionalità dell'utilità Nexus SmartNIC.

Il comando exanic-config senza argomenti può essere utilizzato per visualizzare informazioni di base sulle schede di interfaccia di rete SmartNIC Nexus installate sull'host dopo il caricamento dei driver del kernel SmartNIC Nexus nel sistema operativo. Di seguito è riportato un esempio di questo output:

[root@host ~]$ exanic-config

Device exanic1:

Hardware type: ExaNIC X10

Temperature: 38.8 C VCCint: 0.95 V VCCaux: 1.83 V

Function: network interface

Firmware date: 20180409 (Mon Apr 9 23:27:40 2018)

PPS port: input, termination disabled

Port 0:

Interface: enp175s0

Port speed: 10000 Mbps

Port status: enabled, SFP present, signal detected, link active

MAC address: 64:3f:5f:xx:xx:xx

RX packets: 11778 ignored: 0 error: 0 dropped: 0

TX packets: 11836

Port 1:

Interface: enp175s0d1

Port speed: 10000 Mbps

Port status: enabled, SFP present, signal detected, link active

MAC address: 64:3f:5f:xx:xx:xx

RX packets: 11836 ignored: 0 error: 0 dropped: 0

TX packets: 11778

Se il comando o l'utilità exanic-config restituisce informazioni rilevanti sulle schede di interfaccia di rete SmartNIC Nexus installate, l'installazione dell'hardware e del driver software Nexus SmartNIC è riuscita.

Informazioni correlate

- Installazione dispositivo Nexus SmartNIC

- Guida all'installazione e all'assistenza del server Cisco UCS C240 M5

- Guida all'installazione e all'assistenza del server Cisco UCS C220 M5

- Guida al benchmarking per SmartNIC Nexus