본 제품에 대한 문서 세트는 편견 없는 언어를 사용하기 위해 노력합니다. 본 설명서 세트의 목적상, 편견 없는 언어는 나이, 장애, 성별, 인종 정체성, 민족 정체성, 성적 지향성, 사회 경제적 지위 및 교차성에 기초한 차별을 의미하지 않는 언어로 정의됩니다. 제품 소프트웨어의 사용자 인터페이스에서 하드코딩된 언어, RFP 설명서에 기초한 언어 또는 참조된 서드파티 제품에서 사용하는 언어로 인해 설명서에 예외가 있을 수 있습니다. 시스코에서 어떤 방식으로 포용적인 언어를 사용하고 있는지 자세히 알아보세요.
Cisco는 전 세계 사용자에게 다양한 언어로 지원 콘텐츠를 제공하기 위해 기계 번역 기술과 수작업 번역을 병행하여 이 문서를 번역했습니다. 아무리 품질이 높은 기계 번역이라도 전문 번역가의 번역 결과물만큼 정확하지는 않습니다. Cisco Systems, Inc.는 이 같은 번역에 대해 어떠한 책임도 지지 않으며 항상 원본 영문 문서(링크 제공됨)를 참조할 것을 권장합니다.
이 문서에서는 Nexus SmartNIC(이전의 Exabze ExaNIC) 저지연 네트워크 인터페이스 카드에 대한 하드웨어 및 소프트웨어 드라이버 설치 문제를 해결하는 데 사용되는 단계를 설명합니다.
Cisco에서는 대기 시간이 짧은 네트워크 인터페이스 카드의 Nexus SmartNIC 시리즈에 대한 하드웨어 설치 절차를 이해하는 것이 좋습니다. 또한 Linux 명령줄 인터페이스에 대한 기본적인 지식이 있는 것이 좋습니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.
이 문서에서 다루는 절차는 이 하드웨어에 적용됩니다.
이 섹션에서는 Nexus SmartNIC 저지연 네트워크 인터페이스 카드 하드웨어 설치 문제를 해결하는 데 사용되는 단계를 다룹니다. 호스트 운영 체제(일반적으로 Linux 배포판 또는 Windows Server)에서 Nexus SmartNIC를 유효한 PCI Express 주변 장치로 인식하지 못할 경우 이 섹션의 지침을 따르십시오.
Nexus SmartNIC 네트워크 인터페이스 카드는 호스트의 마더보드 또는 라이저/도터 카드의 PCIe(PCI Express) 슬롯에 올바르게 설치해야 합니다. PCIe 카드 설치 방법에 대한 자세한 내용은 제조업체에서 제공한 호스트 설명서를 참조하십시오.
Cisco UCS 서버의 PCIe 카드 설치에 대한 자세한 내용은 다음 지원 문서를 참조하십시오.
모든 Nexus SmartNIC 네트워크 인터페이스 카드는 PCIe 3.0 호환 슬롯에 설치해야 합니다. 또한 모든 Nexus SmartNIC 네트워크 인터페이스 카드를 연결하려면 최소 49개의 핀이 있는 PCIe x8 슬롯을 사용해야 합니다. PCIe 슬롯이 이러한 사양을 충족하는지 여부에 대한 자세한 내용은 제조업체에서 제공한 호스트 설명서를 참조하십시오.
Cisco UCS 서버의 PCIe 슬롯 사양에 대한 자세한 내용은 다음 표 및 지원 문서를 참조하십시오.
| Cisco UCS 서버 모델 | PCIe 슬롯 호환성 | 지원 문서 |
|---|---|---|
| Cisco UCS C220 M5 | 모든 PCIe 슬롯 호환 가능 | Cisco UCS C220 M5 Server 설치 및 서비스 가이드 |
| Cisco UCS C240 M5 | 모든 PCIe 슬롯 호환 가능 | Cisco UCS C240 M5 Server 설치 및 서비스 가이드 |
Nexus SmartNIC는 설치된 활성 CPU(Central Processing Unit)에 연결된 PCI Express 슬롯에 올바르게 삽입해야 합니다. 호스트에 단일 소켓에만 CPU가 설치된 여러 CPU 소켓이 있는 경우("단일 CPU 컨피그레이션"이라고도 함), 모든 PCIe 슬롯이 활성 상태이며 작동하지는 않을 수 있습니다. 단일 CPU 컨피그레이션에서 활성화되는 PCIe 슬롯에 대한 자세한 내용은 제조업체가 제공한 호스트 설명서를 참조하십시오.
단일 CPU 컨피그레이션의 Cisco UCS 서버에 있는 활성 PCIe 슬롯에 대한 자세한 내용은 다음 표 및 지원 설명서를 참조하십시오.
| Cisco UCS 서버 모델 | 활성 PCIe 슬롯 | 지원 문서 |
|---|---|---|
| Cisco UCS C220 M5 | PCIe 라이저 1, 슬롯 1 | Cisco UCS C220 M5 Server 설치 및 서비스 가이드 |
| Cisco UCS C240 M5 | PCIe 라이저 1, 슬롯 1 PCIe 라이저 1, 슬롯 2 PCIe 라이저 1B, 슬롯 1 PCIe 라이저 1B, 슬롯 2 PCIe 라이저 1B, 슬롯 3 |
Cisco UCS C240 M5 Server 설치 및 서비스 가이드 |
각 Nexus SmartNIC 네트워크 인터페이스 카드에는 PCIe 브래킷에 있는 여러 LED(Light Emitting Diode)가 있습니다. 이러한 LED는 일반적으로 호스트 외부에서 볼 수 있습니다. 네트워크 인터페이스 카드의 각 SFP+ 및 QSFP 포트에는 하나의 더 큰 LED가 연결되어 있습니다. 이러한 LED를 통칭하여 포트 LED라고 합니다.
SFP+ 포트만 있는 네트워크 인터페이스 카드에는 PPS 커넥터와 연결된 작은 빨간색 LED가 추가로 있습니다(작은 빨간색 LED가 그랜드 마스터 클록 상태와 연결된 Nexus SmartNIC X10-GM은 제외). 이 LED를 PPS LED라고 합니다.
참고: QSFP 포트가 장착된 Nexus SmartNIC 네트워크 인터페이스 카드에는 PPS LED가 없습니다.
요약하면, 다음 표를 참조하십시오.
| Nexus SmartNIC 모델 | 포트 LED | PPS LED |
|---|---|---|
| X10 | 예 | 예 |
| X10-HPT | 예 | 예 |
| X10-GM | 예 | 예(GPS) |
| X25 | 예 | 예 |
| X40 | 예 | 아니요 |
| 100 | 예 | 아니요 |
| V5P | 예 | 아니요 |
| V9P | 예 | 아니요 |
Nexus SmartNIC 네트워크 인터페이스 카드가 호스트와 함께 처음 켜지면 네트워크 인터페이스 카드의 모든 LED가 잠시 깜박여야 합니다. 호스트의 전원이 켜진 후 언제든지 LED가 켜지지 않으면 Nexus SmartNIC 네트워크 인터페이스 카드가 PCIe 버스에서 올바르게 전원을 공급받지 못함을 나타냅니다. 다음 절차에 따라 이 문제를 더 자세히 해결합니다.
사용된 PCIe 슬롯 및 호스트와 상관없이 Nexus SmartNIC 네트워크 인터페이스 카드에 전원이 공급되지 않을 경우, 추가 트러블슈팅에 대해 Cisco TAC에 문의하십시오.
4단계에서 앞서 언급한 것처럼, 각 Nexus SmartNIC 네트워크 인터페이스 카드에는 잠재적으로 두 가지 유형의 LED가 있습니다.
SFP+/QSFP 모듈이 네트워크 인터페이스 카드의 포트에 삽입되지 않은 경우, 네트워크 인터페이스 카드가 처음 켜질 때 4단계에서 설명한 순간 플래시 후에도 이러한 LED가 꺼진 상태를 유지해야 합니다.
펌웨어가 손상되거나 누락되어 다음과 같은 세 가지 일반적인 시나리오가 있습니다.
SFP+/QSFP 모듈이 삽입되지 않고 호스트 운영 체제에서 네트워크 인터페이스 카드를 유효한 PCIe 주변 장치로 인식하지 않을 때 순간 플래시 후 포트 및 PPS LED가 모두 켜진 상태로 있으면(예: lspci 명령 사용) Nexus SmartNIC 네트워크 인터페이스 카드의 펌웨어를 복구해야 할 수 있습니다. Nexus SmartNIC 펌웨어 복구 프로세스를 따라 Nexus SmartNIC에 새 버전의 펌웨어를 로드합니다. 이렇게 해도 문제가 해결되지 않으면 Cisco TAC에 추가 트러블슈팅에 문의하십시오.
Nexus SmartNIC 네트워크 인터페이스 카드에 PPS LED가 장착되어 있고 PPS LED가 계속 켜져 있는 경우 카드에 로드된 기존 펌웨어가 손상되어 카드가 펌웨어 복구 모드로 전환됩니다. 네트워크 인터페이스 카드를 정상적으로 사용하려면 Nexus SmartNIC 펌웨어 업데이트 프로세스를 따라야 합니다. 이렇게 해도 문제가 해결되지 않으면 Cisco TAC에 추가 트러블슈팅에 문의하십시오.
Nexus SmartNIC 네트워크 인터페이스 카드에 PPS LED가 설치되어 있지 않고 포트 LED가 계속해서 꺼짐과 황색으로 바뀌는 경우 카드에 로드된 기존 펌웨어가 손상되고 카드가 펌웨어 복구 모드로 들어갑니다. 네트워크 인터페이스 카드를 정상적으로 사용하려면 Nexus SmartNIC 펌웨어 업데이트 프로세스를 따라야 합니다. 이렇게 해도 문제가 해결되지 않으면 Cisco TAC에 추가 트러블슈팅에 문의하십시오.
호스트 운영 체제가 lspci 명령을 사용하여 PCIe 버스를 통해 Nexus SmartNIC 네트워크 인터페이스 카드를 성공적으로 탐지할 수 있는지 확인할 수 있습니다. Exablaze의 16비트 PCI VID(Vendor ID)는 0x1ce4이며, Nexus SmartNIC PCIe 디바이스에서 정보를 검색하는 데 사용할 수 있습니다. 다음 예에서 이를 확인할 수 있습니다.
[root@host ~]# lspci -d 1ce4:
01:00.0 Ethernet controller: Exablaze ExaNIC X10
lspci 명령에 -v verbose 플래그를 추가하면 PCIe 카드에 대한 자세한 정보를 볼 수 있습니다. 다음 예에서 이를 확인할 수 있습니다.
[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
lspci 명령에 -vv verbose 플래그를 추가하면 더 자세한 정보를 볼 수 있습니다. 다음 예에서 이를 확인할 수 있습니다.
[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
lspci 명령이 Nexus SmartNIC 네트워크 인터페이스 카드에 대한 정보를 표시하는 경우, 이는 호스트 운영 체제가 PCIe 버스를 통해 Nexus SmartNIC 네트워크 인터페이스 카드를 성공적으로 감지했음을 나타냅니다. 다음으로, Nexus SmartNIC 소프트웨어 드라이버를 설치하고 카드 사용을 시작할 수 있습니다.
이 섹션에서는 Nexus SmartNIC 저지연 네트워크 인터페이스 카드 소프트웨어 드라이버 설치 문제를 해결하는 데 사용되는 단계를 다룹니다. 호스트 운영 체제(일반적으로 Linux 배포판 또는 Windows Server)에서 Nexus SmartNIC를 유효한 PCI Express 주변 장치로 인식하지만 호스트 운영 체제에서 Nexus SmartNIC의 포트를 유효한 네트워크 인터페이스로 인식하지 않는 경우 이 섹션의 내용을 따르십시오. 이 예제는 다음 출력에 나와 있습니다.
[root@host ~]# ls /dev/exanic* ls: cannot access /dev/exanic*: No such file or directory
이 섹션에서는 Nexus SmartNIC 소프트웨어 설치 가이드에 설명된 대로 Nexus SmartNIC 소프트웨어 드라이버를 설치하는 동안 오류가 발생했음을 전제로 합니다.
이 절차의 모든 명령은 루트 Linux 계정에서 실행됩니다. 루트 Linux 계정을 사용하여 이 절차를 따르지 않을 경우 sudo 명령을 사용하여 계정의 보안 권한을 수퍼유저의 보안 권한으로 높여야 할 수 있습니다.
호스트 운영 체제의 커널이 Nexus SmartNIC 네트워크 인터페이스 카드용 소프트웨어 드라이버를 로드한 경우, -v verbose 플래그가 있는 lspci 명령은 사용 중인 드라이버를 표시합니다. Exablise의 PCI 벤더 ID(0x1ce4)를 사용하여 디바이스를 쿼리하여 Nexus SmartNIC PCIe 디바이스에 대한 정보를 표시할 수 있습니다. 이 예제는 다음 출력에 나와 있습니다.
[root@host ~]# lspci -d 1ce4: -v | egrep Kernel.driver
Kernel driver in use: exanic
호스트 운영 체제의 커널이 소프트웨어 드라이버를 로드하지 않은 경우 이 "커널 드라이버 사용 중" 행은 lspci -d 1ce4의 출력에서 생략됩니다. -v 명령입니다.
Nexus SmartNIC 소프트웨어 설치 가이드에 설명된 대로, Nexus SmartNIC 소프트웨어 드라이버는 패키지 관리자(예: apt, yum 또는 rpm을 통해 직접)를 통해 설치할 수 있습니다. 이 방법으로 ExaNIC 소프트웨어 드라이버를 설치한 경우 모든 파일이 아래에 표시된 것처럼 올바르게 설치되었는지 확인할 수 있습니다.
호스트의 CPU 아키텍처에 따라 libexanic.a 라이브러리 파일은 /usr/lib/또는/usr/lib64/일 수 있습니다. 다음은 x86(32비트) CPU 아키텍처의 예입니다.
[root@host ~]# ls /usr/lib/ | grep exanic libexanic.a
다음은 x86_64(64비트) CPU 아키텍처의 예입니다.
[root@host ~]# ls /usr/lib64/ | grep exanic libexanic.a
Nexus SmartNIC 라이브러리 헤더 파일이 /usr/include/exanic/directory에 있는지 확인합니다. 이 예는 다음과 같습니다.
[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
Nexus SmartNIC 이진 유틸리티가 /usr/bin/디렉토리에 있는지 확인합니다. 이 예는 다음과 같습니다.
[root@host ~]# ls /usr/bin/ -1 | grep exanic- exanic-capture exanic-clock-check exanic-clock-sync exanic-config exanic-fwupdate
마지막으로, exanic.ko.xz 모듈 파일이 /lib/modules/`uname -r`/extra/directory에 있는지 확인합니다. inline`uname -r` 명령은 현재 커널 릴리스를 디렉토리에 자동으로 삽입합니다. 이 명령은 작은따옴표가 아닌 중대 악센트(`)로 둘러싸여 있습니다. 다음 예에 나와 있습니다.
[root@host ~]# ls /lib/modules/\`uname -r\`/extra/ | grep exanic exanic.ko.xz
Nexus SmartNIC 소프트웨어 설치 설명서에 설명된 대로, 소스 코드에서 Nexus SmartNIC 소프트웨어 드라이버를 구축하고 설치할 수 있습니다. 이 방법으로 Nexus SmartNIC 소프트웨어 드라이버를 설치한 경우, 여기 예제에 나와 있는 것처럼 모든 파일이 올바르게 설치되었는지 확인할 수 있습니다.
libexanic.a 라이브러리 파일이 /usr/local/lib/directory에 있는지 확인합니다. 이 예는 다음과 같습니다.
[root@host ~]# ls /usr/local/lib/ | grep exanic libexanic.a
Nexus SmartNIC 라이브러리 헤더 파일이 /usr/local/include/exanic/directory에 있는지 확인합니다. 이 예는 다음과 같습니다.
[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
Nexus SmartNIC 이진 유틸리티가 /usr/local/bin/디렉토리에 있는지 확인합니다. 이 예는 다음과 같습니다.
[root@host ~]# ls /usr/local/bin -1 | grep exanic- exanic-capture exanic-clock-check exanic-clock-sync exanic-config exanic-fwupdate
마지막으로 exanic.ko 모듈 파일이 /lib/modules/`uname -r`/extra/directory에 있는지 확인합니다. inline`uname -r` 명령은 현재 커널 릴리스를 디렉토리에 자동으로 삽입합니다. 이 명령은 작은따옴표가 아닌 중대 악센트(`)로 둘러싸여 있습니다. 다음 예에 나와 있습니다.
[root@host ~]# ls /lib/modules/`uname -r`/extra | grep exanic exanic.ko
Nexus SmartNIC 소프트웨어 드라이버는 modprobe exanic 명령으로 수동으로 로드할 수 있습니다.
Nexus SmartNIC 드라이버가 로드되면 Linux 커널이 이를 디바이스로 인식합니다. ls /dev/exanic* 명령을 사용하여 이를 확인할 수 있습니다. 그러면 인식된 모든 Nexus SmartNIC 디바이스가 표시됩니다. 이 예는 다음과 같습니다.
[root@host ~]# ls /dev/exanic* /dev/exanic0
Nexus SmartNIC 드라이버가 성공적으로 로드되지 않으면 modprobe exanic 명령에서 오류를 반환하거나 반환하지 않을 수 있습니다. 아래 하위 섹션에서는 이 명령에서 반환된 오류를 해결하는 방법에 대해 설명합니다.
이 오류 메시지는 아래 하위 섹션에 설명된 두 가지 문제로 인해 발생할 수 있습니다.
호스트 운영 체제에서 현재 실행 중인 커널에 대해 빌드된 모듈을 찾을 수 없습니다. 따라서 호스트 운영 체제가 modprobe exanic 명령을 사용하여 시스템에 모듈을 로드할 수 없습니다. 이 문제는 depmod -a 명령으로 해결할 수 있으며, 이 명령은 커널 모듈 종속성에 대한 맵을 만듭니다. 커널 모듈은 그 후 modprobe exanic 명령으로 로딩될 수 있다.
DKMS(Dynamic Kernel Module Support)를 사용하면 새 운영 체제 커널이 설치될 때마다 커널 모듈을 자동으로 재구축할 수 있습니다. DKMS가 Nexus SmartNIC 커널 모듈을 구축하지 않은 경우, Nexus SmartNIC 커널 모듈이 다른 운영 체제 커널 버전에 대해 이전에 컴파일되었을 수 있습니다.
DKMS가 예상대로 작동하려면 호스트 운영 체제의 패키지 관리자를 사용하여 커널 레벨 및 커널 헤더 패키지를 설치해야 합니다. 이 패키지가 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
특정 패키지가 설치되어 있는지 확인하는 방법은 호스트 운영 체제의 패키지 관리자 설명서를 참조하십시오.
dkms status 명령을 사용하여 DKMS에서 Nexus SmartNIC 커널 모듈을 성공적으로 추가, 구축 및 설치했는지 확인할 수 있습니다. 작업 중, 예상 상태에서 이 명령의 출력 예는 다음과 같습니다.
[root@host ~]# dkms status exanic, 2.4.1-1.el8, 3.10.0-957.27.2.el7.x86_64, x86_64: installed
이 출력에 Nexus SmartNIC 커널 모듈이 "설치됨" 상태가 아닌 것으로 표시되면 DKMS를 사용하여 Nexus SmartNIC 커널 모듈을 빌드하거나 설치해야 합니다.
Nexus SmartNIC 커널 모듈이 추가되었지만 빌드되지 않은 경우 dkms build -m exanic -v {version} 명령을 사용하여 Nexus SmartNIC 커널 모듈을 빌드합니다. 이 명령의 예는 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.
Nexus SmartNIC 커널 모듈이 빌드되었지만 설치되지 않은 경우 dkms install -m exanic -v {version} 명령을 사용하여 Nexus SmartNIC 커널 모듈을 설치합니다. 이 명령의 예는 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.
Nexus SmartNIC 커널 모듈이 DKMS와 함께 구축 및 설치된 후 Nexus SmartNIC 커널 모듈을 modprobe exanic 명령으로 로드할 수 있습니다.
이 오류 메시지는 Secure Boot Protocol이 활성화된 UEFI(Unified Extensible Firmware Interface) 펌웨어가 설치된 호스트에서 확인할 수 있습니다. 보안 부팅은 허용되는 디지털 서명으로 서명되지 않은 커널 드라이버가 로드되는 것을 방지합니다. 따라서 Nexus SmartNIC 커널 드라이버에 modprobe exanic 명령을 로드하려고 시도할 때, Secure Boot Protocol은 커널 드라이버가 로드되는 것을 방지합니다.
이 문제를 해결하려면 호스트의 UEFI 내에서 보안 부팅 프로토콜을 비활성화해야 합니다. 호스트의 UEFI 내에서 Secure Boot 프로토콜을 비활성화하는 방법에 대한 자세한 내용은 제조업체가 제공한 호스트 설명서를 참조하십시오.
인수가 없는 exanic-config 명령을 사용하여 Nexus SmartNIC 커널 드라이버가 운영 체제에 로드된 후 호스트에 설치된 Nexus SmartNIC 네트워크 인터페이스 카드에 대한 기본 정보를 표시할 수 있습니다. 이 출력의 예는 다음과 같습니다.
[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
exanic-config 명령/유틸리티에서 설치된 Nexus SmartNIC 네트워크 인터페이스 카드에 대한 관련 정보를 반환한 경우 Nexus SmartNIC 하드웨어 및 소프트웨어 드라이버 설치가 성공했습니다.
피드백