Contenu

Introduction

Conditions préalables

Conditions requises

Components Used

Informations générales

Matériel applicable

Dépannage de l'installation matérielle de Nexus SmartNIC

Étape 1. Vérifiez l'installation matérielle appropriée.

Étape 2. Vérifiez la compatibilité des logements PCI Express.

Étape 3. Vérifiez l'installation dans le logement PCI Express actif.

Étape 4. Vérifiez que la carte Nexus SmartNIC est alimentée.

Étape 5. Vérifiez l'intégrité du micrologiciel.

Étape 6. Vérifiez la détection PCI Express du système d'exploitation hôte.

Dépannage de l'installation du pilote logiciel Nexus SmartNIC

Étape 1. Vérifiez l'utilisation des pilotes.

Étape 2. Vérifiez l'installation du pilote.

Vérifier l'installation du pilote à partir du RPM (apt, yum, etc.)

Vérifier l'installation du pilote à partir de la source

Étape 3. Tentative De Chargement Du Pilote Logiciel.

« modprobe : FATAL : Message d'erreur du module exanique introuvable

« modprobe : Clé requise non disponible » Message d'erreur

Étape 4. Confirmez la fonctionnalité de l'utilitaire Nexus SmartNIC.

Informations connexes

Introduction

Ce document décrit les étapes utilisées pour dépanner l'installation du matériel et des pilotes logiciels pour les cartes d'interface réseau à faible latence Nexus SmartNIC (anciennement Exablaze ExaNIC).

Conditions préalables

Conditions requises

Cisco vous recommande de comprendre la procédure d'installation matérielle de la gamme Nexus SmartNIC de cartes d'interface réseau à faible latence. Cisco vous recommande également de posséder une compréhension de base de l'interface de ligne de commande Linux.

Components Used

Les informations contenues dans ce document ont été créées à partir des périphériques dans un environnement de laboratoire spécifique. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.

Informations générales

Matériel applicable

Les procédures décrites dans ce document s'appliquent à ce matériel :

- Carte réseau intelligente Nexus X10

- Nexus SmartNIC X10-HPT

- Nexus SmartNIC X10-GM

- Carte réseau intelligente Nexus X25

- Carte réseau intelligente Nexus X40

- Carte réseau intelligente Nexus X100

- Nexus SmartNIC V5P

- Nexus SmartNIC V9P

Dépannage de l'installation matérielle de Nexus SmartNIC

Cette section du document couvre les étapes utilisées pour dépanner les problèmes d'installation matérielle des cartes d'interface réseau à faible latence SmartNIC Nexus. Suivez cette section du document lorsque le système d'exploitation hôte (généralement une distribution Linux ou Windows Server) ne reconnaît pas une carte Nexus SmartNIC comme périphérique PCI Express valide.

Étape 1. Vérifiez l'installation matérielle appropriée.

Les cartes d'interface réseau Nexus SmartNIC doivent être correctement installées dans un emplacement PCI Express (PCIe) de la carte mère ou de la carte de montage/fille de l'hôte. Pour plus d'informations sur l'installation d'une carte PCIe, reportez-vous au manuel fourni par le fabricant pour votre hôte.

Pour plus d'informations sur l'installation de cartes PCIe sur les serveurs Cisco UCS, reportez-vous à la documentation de support suivante :

- Guide d'installation et de maintenance du serveur Cisco UCS C220 M5

- Guide d'installation et de maintenance du serveur Cisco UCS C240 M5

Étape 2. Vérifiez la compatibilité des logements PCI Express.

Toutes les cartes d'interface réseau Nexus SmartNIC doivent être installées dans un emplacement compatible PCIe 3.0. En outre, un minimum d'un logement PCIe x8 avec 49 broches doit être utilisé pour connecter toutes les cartes d'interface réseau Nexus SmartNIC. Pour plus d'informations sur le respect de ces spécifications par les logements PCIe, consultez le manuel fourni par le fabricant pour votre hôte.

Pour plus d'informations sur la spécification des logements PCIe sur les serveurs Cisco UCS, reportez-vous au tableau ci-dessous et à la documentation de support :

Modèle de serveur Cisco UCS

Compatibilité des logements PCIe

Documentation à l'appui

Cisco UCS C220 M5

Tous les logements PCIe sont compatibles

Guide d'installation et de maintenance du serveur Cisco UCS C220 M5

Cisco UCS C240 M5

Tous les logements PCIe sont compatibles

Guide d'installation et de maintenance du serveur Cisco UCS C240 M5

Étape 3. Vérifiez l'installation dans le logement PCI Express actif.

Une carte Nexus SmartNIC doit être correctement insérée dans un logement PCI Express connecté à un processeur actif et installé (unité centrale de traitement). Si un hôte est équipé de plusieurs connecteurs de processeur où un seul socket a un processeur installé (également appelé configuration à un seul processeur), tous les connecteurs PCIe ne peuvent pas être actifs et fonctionnels. Pour plus d'informations sur les logements PCIe activés dans une configuration à un seul processeur, consultez le manuel de votre hôte fourni par le fabricant.

Pour plus d'informations sur les logements PCIe actifs sur les serveurs Cisco UCS dans une configuration à processeur unique, reportez-vous au tableau ci-dessous et à la documentation de support :

Modèle de serveur Cisco UCS

Emplacements PCIe actifs

Documentation à l'appui

Cisco UCS C220 M5

Carte d'extension PCIe 1, logement 1

Guide d'installation et de maintenance du serveur Cisco UCS C220 M5

Cisco UCS C240 M5

Carte d'extension PCIe 1, logement 1

Carte d'extension PCIe 1, logement 2

Carte d'extension PCIe 1B, logement 1

Carte d'extension PCIe 1B, logement 2

Carte d'extension PCIe 1B, logement 3

Guide d'installation et de maintenance du serveur Cisco UCS C240 M5

Étape 4. Vérifiez que la carte Nexus SmartNIC est alimentée.

Chaque carte d'interface réseau Nexus SmartNIC comporte un certain nombre de DEL (Light Emitting Diodes) situées sur le support PCIe. Ces voyants sont généralement visibles depuis l'extérieur de l'hôte. Chaque port SFP+ et QSFP de la carte d'interface réseau est associé à un voyant plus grand. Ces DEL sont collectivement appelées LED de port.

Sur les cartes d'interface réseau dotées uniquement de ports SFP+, un voyant rouge supplémentaire plus petit est présent, associé au connecteur PPS (à l'exception du Nexus SmartNIC X10-GM, où le petit voyant rouge est associé à l'état d'horloge Grand Master). Ce voyant est appelé le voyant PPS.

Note: Les cartes d'interface réseau Nexus SmartNIC équipées de ports QSFP ne sont pas dotées d'un voyant PPS.

En résumé, reportez-vous au tableau ci-dessous :

Modèle SmartNIC Nexus

DEL de port

DEL PPS

X10

Oui

Oui

X10-HPT

Oui

Oui

X10-GM

Oui

Oui (GPS)

X25

Oui

Oui

X40

Oui

Non

X100

Oui

Non

V5P

Oui

Non

V9P

Oui

Non

Lorsqu'une carte d'interface réseau Nexus SmartNIC est mise sous tension pour la première fois à côté de l'hôte, tous les voyants de la carte d'interface réseau doivent clignoter momentanément. Si aucun voyant n'émet de lumière à un moment quelconque après la mise sous tension de l'hôte, cela indique que la carte d'interface réseau Nexus SmartNIC ne reçoit pas correctement l'alimentation du bus PCIe. Dépannez ce problème plus en détail avec cette procédure :

1. Vérifiez si le logement PCIe utilisé fonctionne avec d'autres périphériques dont le fonctionnement est connu. Dans l'idéal, l'un d'eux testerait avec une autre carte d'interface réseau.

2. Vérifiez si la carte d'interface réseau Nexus SmartNIC fonctionne sans problème dans un autre logement PCIe dont le fonctionnement est connu.

3. Vérifiez si la carte d'interface réseau Nexus SmartNIC fonctionne sans problème dans un logement PCIe dont le fonctionnement est connu sur un autre hôte dont le fonctionnement est connu.

Si la carte d'interface réseau Nexus SmartNIC ne parvient pas à être alimentée, quel que soit le logement et l'hôte PCIe utilisés, contactez le TAC de Cisco pour un dépannage supplémentaire.

Étape 5. Vérifiez l'intégrité du micrologiciel.

Comme indiqué précédemment à l'étape 4, chaque carte d'interface réseau Nexus SmartNIC peut comporter deux types de DEL :

- DEL de port

- DEL PPS

Lorsqu'aucun module SFP+/QSFP n'est inséré dans les ports de la carte d'interface réseau, ces voyants doivent rester éteints après la mémoire Flash momentanée décrite à l'étape 4 lorsque la carte d'interface réseau est mise sous tension initialement.

Il existe trois scénarios courants dans lesquels ce n'est pas le cas en raison d'un micrologiciel corrompu ou manquant :

- Si les voyants des ports et des PPS restent allumés après la mémoire Flash momentanée lorsqu'aucun module SFP+/QSFP n'est inséré et que le système d'exploitation hôte ne reconnaît pas la carte d'interface réseau comme un périphérique PCIe valide (par exemple via la commande lspci), le micrologiciel de la carte d'interface réseau Nexus SmartNIC peut devoir être récupéré. Suivez le processus de récupération du microprogramme Nexus SmartNIC et chargez une nouvelle version du microprogramme sur la carte Nexus SmartNIC. Si cela ne résout pas le problème, contactez le TAC de Cisco pour obtenir de plus amples informations de dépannage.

- Si une carte d'interface réseau Nexus SmartNIC est équipée d'un voyant PPS et que ce voyant PPS est allumé en permanence, le micrologiciel existant chargé sur la carte est endommagé et la carte est entrée en mode de récupération du micrologiciel. Vous devez suivre le processus de mise à jour du micrologiciel Nexus SmartNIC pour utiliser normalement la carte d'interface réseau. Si cela ne résout pas le problème, contactez le TAC de Cisco pour obtenir de plus amples informations de dépannage.

- Si une carte d'interface réseau Nexus SmartNIC n'est pas équipée d'un voyant PPS et que les voyants du port alternent en permanence entre éteint et orange, le micrologiciel existant chargé sur la carte est endommagé et la carte est entrée en mode de récupération du micrologiciel. Vous devez suivre le processus de mise à jour du micrologiciel Nexus SmartNIC pour utiliser normalement la carte d'interface réseau. Si cela ne résout pas le problème, contactez le TAC de Cisco pour obtenir de plus amples informations de dépannage.

Étape 6. Vérifiez la détection PCI Express du système d'exploitation hôte.

Vous pouvez confirmer que le système d'exploitation hôte peut détecter avec succès une carte d'interface réseau Nexus SmartNIC via le bus PCIe à l'aide de la commande lspci. L'ID de fournisseur PCI (VID) 16 bits d'Exablaze est 0x1ce4, qui peut être utilisé pour rechercher des informations sur les périphériques PCIe SmartNIC Nexus. Ceci est démontré dans l'exemple ci-dessous :

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

01:00.0 Ethernet controller: Exablaze ExaNIC X10

Vous pouvez afficher des informations plus détaillées sur la carte PCIe en ajoutant l'indicateur -v verbose à la commande lspci. Ceci est démontré dans l'exemple ci-dessous :

[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

Des informations encore plus détaillées peuvent être affichées en ajoutant l'indicateur -vv verbose à la commande lspci. Ceci est démontré dans l'exemple ci-dessous :

[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

Si la commande lspci affiche des informations sur la carte d'interface réseau Nexus SmartNIC, cela indique que le système d'exploitation hôte a correctement détecté la carte d'interface réseau Nexus SmartNIC via le bus PCIe. Pour aller de l'avant, vous pouvez installer les pilotes du logiciel Nexus SmartNIC et commencer à utiliser la carte.

Dépannage de l'installation du pilote logiciel Nexus SmartNIC

Cette section du document couvre les étapes utilisées pour résoudre les problèmes d'installation des pilotes de carte d'interface réseau à faible latence Nexus SmartNIC. Suivez cette section du document lorsque le système d'exploitation hôte (généralement une distribution Linux ou Windows Server) reconnaît une carte Nexus SmartNIC comme périphérique PCI Express valide, mais que le système d'exploitation hôte ne reconnaît pas les ports de la carte Nexus SmartNIC comme interface réseau valide. Un exemple de ceci est montré dans le résultat ici :

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

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

Cette section du document suppose qu'une erreur s'est produite lors de la tentative d'installation des pilotes du logiciel Nexus SmartNIC, comme décrit dans le guide d'installation du logiciel Nexus SmartNIC.

Toutes les commandes de cette procédure sont exécutées à partir du compte Linux racine. Si vous n'utilisez pas le compte root Linux pour suivre cette procédure, vous devrez peut-être utiliser la commande sudo pour élever les privilèges de sécurité de votre compte à celui d'un super-utilisateur.

Étape 1. Vérifiez l'utilisation des pilotes.

Si le noyau du système d'exploitation hôte a chargé un pilote logiciel pour une carte d'interface réseau Nexus SmartNIC, la commande lspci avec l'indicateur verbose -v affiche le pilote utilisé. Vous pouvez rechercher des périphériques à l'aide de l'ID de fournisseur PCI d'Exablaze (0x1ce4) pour afficher des informations spécifiques aux périphériques PCIe SmartNIC Nexus. Un exemple de ceci est montré dans le résultat ici :

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

Kernel driver in use: exanic

Si le noyau du système d'exploitation hôte n'a pas chargé le pilote logiciel, cette ligne « Pilote de noyau en cours d'utilisation » sera omise dans la sortie de la commande lspci -d 1ce4 : -v.

Étape 2. Vérifiez l'installation du pilote.

Vérifier l'installation du pilote à partir du RPM (apt, yum, etc.)

Comme décrit dans le guide d'installation du logiciel Nexus SmartNIC, les pilotes du logiciel Nexus SmartNIC peuvent être installés via un gestionnaire de paquets (tel que apt, yum ou directement via rpm). Si vous avez installé les pilotes du logiciel ExaNIC avec cette méthode, vous pouvez vérifier que tous les fichiers ont été correctement installés comme indiqué ci-dessous.

Selon l'architecture du processeur de votre hôte, le fichier de bibliothèque libexanic.a peut être dans /usr/lib/ ou dans /usr/lib64/. Voici un exemple tiré d'une architecture CPU x86 (32 bits) :

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

libexanic.a

Voici un exemple d'architecture de processeur x86_64 (64 bits) :

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

libexanic.a

Assurez-vous que les fichiers d'en-tête de la bibliothèque Nexus SmartNIC sont présents dans le répertoire /usr/include/exanic/. Ceci est illustré dans l'exemple ci-dessous :

[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

Assurez-vous que les utilitaires binaires SmartNIC Nexus se trouvent dans le répertoire /usr/bin/. Ceci est illustré dans l'exemple ci-dessous :

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

exanic-capture

exanic-clock-check

exanic-clock-sync

exanic-config

exanic-fwupdate

Enfin, assurez-vous que le fichier de module exanic.ko.xz est présent dans le répertoire /lib/modules/`uname -r`/extra/. Notez que la commande inline `uname -r` insère automatiquement votre version actuelle du noyau dans le répertoire. Cette commande est entourée d'accents graves (`) et non de guillemets simples. Ceci est illustré dans l'exemple ci-dessous :

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

exanic.ko.xz

Vérifier l'installation du pilote à partir de la source

Comme décrit dans le guide d'installation du logiciel Nexus SmartNIC, les pilotes du logiciel Nexus SmartNIC peuvent être construits et installés à partir du code source. Si vous avez installé les pilotes du logiciel Nexus SmartNIC avec cette méthode, vous pouvez vérifier que tous les fichiers ont été correctement installés comme indiqué dans les exemples ci-dessous.

Assurez-vous que le fichier de bibliothèque libexanic.a est présent dans le répertoire /usr/local/lib/. Ceci est illustré dans l'exemple ci-dessous :

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

libexanic.a

Assurez-vous que les fichiers d'en-tête de la bibliothèque Nexus SmartNIC sont présents dans le répertoire /usr/local/include/exanic/. Ceci est illustré dans l'exemple ci-dessous :

[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

Assurez-vous que les utilitaires binaires SmartNIC Nexus se trouvent dans le répertoire /usr/local/bin/. Ceci est illustré dans l'exemple ci-dessous :

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

exanic-capture

exanic-clock-check

exanic-clock-sync

exanic-config

exanic-fwupdate

Enfin, assurez-vous que le fichier de module exanic.ko est présent dans le répertoire /lib/modules/`uname -r`/extra/. Notez que la commande inline `uname -r` insère automatiquement votre version actuelle du noyau dans le répertoire. Cette commande est entourée d'accents graves (`) et non de guillemets simples. Ceci est illustré dans l'exemple ci-dessous :

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

exanic.ko

Étape 3. Tentative De Chargement Du Pilote Logiciel.

Le pilote du logiciel Nexus SmartNIC peut être chargé manuellement à l'aide de la commande modprobe exanic.

Si les pilotes Nexus SmartNIC sont chargés, le noyau Linux le reconnaîtra comme un périphérique. Vous pouvez le vérifier à l'aide de la commande ls /dev/exanic*, qui affiche tous les périphériques SmartNIC Nexus reconnus. Ceci est illustré dans l'exemple ci-dessous :

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

/dev/exanic0

Si les pilotes SmartNIC Nexus ne sont pas correctement chargés, la commande modprobe exanic peut renvoyer ou non une erreur. Les sous-sections ci-dessous décrivent comment dépanner les erreurs retournées par cette commande.

« modprobe : FATAL : Message d'erreur du module exanique introuvable

Ce message d'erreur peut être causé par deux problèmes différents décrits dans les sous-sections suivantes.

Dépendances de module de noyau mal mappées

Le système d'exploitation de l'hôte ne peut pas localiser le module créé pour le noyau en cours d'exécution. Par conséquent, le système d'exploitation hôte ne peut pas charger le module dans le système à l'aide de la commande modprobe exanic. Ceci peut être résolu avec la commande demod -a, qui va créer une carte des dépendances des modules du noyau. Le module du noyau peut ensuite être chargé avec la commande modprobe exanic.

Module de noyau non construit par DKMS

DKMS (Dynamic Kernel Module Support) permet de reconstruire automatiquement les modules du noyau chaque fois qu'un nouveau noyau du système d'exploitation est installé. Si DKMS n'a pas créé le module de noyau Nexus SmartNIC, il est possible que le module de noyau Nexus SmartNIC ait été compilé précédemment pour une autre version du noyau du système d'exploitation.

Pour que DKMS fonctionne comme prévu, les paquets kernel-devel et kernel-headers doivent être installés à l'aide du gestionnaire de paquets du système d'exploitation hôte. Un exemple de la façon de confirmer si ce paquet est installé avec la commande yum list est présenté dans le résultat ici :

[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

Reportez-vous au manuel du gestionnaire de paquets de votre système d'exploitation hôte pour vérifier comment déterminer si un package spécifique est installé.

Vous pouvez confirmer si le module de noyau Nexus SmartNIC est correctement ajouté, construit et installé par DKMS avec la commande dkms status. Voici un exemple de sortie de cette commande dans un état de fonctionnement attendu :

[root@host ~]# dkms status

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

Si ce résultat montre que le module de noyau SmartNIC de Nexus est dans un état autre que « installé », il faut soit construire, soit installer le module de noyau SmartNIC de Nexus à l'aide de DKMS.

Si le module de noyau Nexus SmartNIC est ajouté mais pas construit, utilisez la commande dkms build -m exanic -v {version} pour construire le module de noyau Nexus SmartNIC. Un exemple de cette commande est présenté ici avec la version du logiciel 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.

Si le module du noyau Nexus SmartNIC est construit mais n'est pas installé, utilisez la commande dkms install -m exanic -v {version} pour installer le module du noyau Nexus SmartNIC. Un exemple de cette commande est présenté ici avec la version du logiciel 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.

Une fois le module de noyau SmartNIC Nexus construit et installé avec DKMS, le module de noyau SmartNIC Nexus peut ensuite être chargé avec la commande modprobe exanic.

« modprobe : Clé requise non disponible » Message d'erreur

Ce message d'erreur peut être observé sur les hôtes équipés du microprogramme UEFI (Unified Extensible Firmware Interface) dont le protocole Secure Boot est activé. Secure Boot empêche le chargement des pilotes du noyau qui ne sont pas signés avec une signature numérique acceptable. Par conséquent, lorsque l'on tente de charger le pilote du noyau Nexus SmartNIC avec la commande modprobe exanic, le protocole Secure Boot empêche le chargement du pilote du noyau.

Pour résoudre ce problème, le protocole de démarrage sécurisé doit être désactivé dans l'UEFI de l'hôte. Pour plus d'informations sur la façon de désactiver le protocole de démarrage sécurisé dans l'UEFI de votre hôte, consultez le manuel fourni par le fabricant pour votre hôte.

Étape 4. Confirmez la fonctionnalité de l'utilitaire Nexus SmartNIC.

La commande exanic-config sans argument peut être utilisée pour afficher des informations de base sur les cartes d'interface réseau Nexus SmartNIC installées sur l'hôte après le chargement des pilotes du noyau Nexus SmartNIC dans le système d'exploitation. Voici un exemple de cette sortie :

[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

Si la commande/utilitaire exanic-config renvoie des informations pertinentes sur les cartes d'interface réseau Nexus SmartNIC installées, l'installation du pilote matériel et logiciel Nexus SmartNIC a réussi.

Informations connexes

- Installation du périphérique Nexus SmartNIC

- Guide d'installation et de maintenance du serveur Cisco UCS C240 M5

- Guide d'installation et de maintenance du serveur Cisco UCS C220 M5

- Guide d'analyse de Nexus SmartNIC