Einleitung
Dieses Dokument beschreibt die Installation von Gerätetreibern auf dem Cisco Unified Computing System (UCS) für gängige Betriebssysteme.
Voraussetzungen
Anforderungen
Cisco empfiehlt, dass Sie über Kenntnisse in folgenden Bereichen verfügen:
- Cisco UCS Manager
- Cisco Integrated Management Controller (CIMC)
- VMware, Windows Server oder Linux-Betriebssysteme
Verwendete Komponenten
Die Informationen in diesem Dokument basieren auf folgenden Hardwareplattformen:
"Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die potenziellen Auswirkungen aller Befehle verstehen."
Hintergrundinformationen
Treiberdefinition
Ein Gerätetreiber ist eine Software, die die Schnittstelle zwischen dem Betriebssystem und der Hardware bildet. Der Gerätetreiber übersetzt allgemeine Betriebssystembefehle in spezielle Befehle für ein bestimmtes Gerät, wodurch das Betriebssystem mit Hardwaregeräten kommunizieren kann.
Geräte, die einen Treiber benötigen
Nachfolgend finden Sie eine Liste der Hardwaregeräte, für die Gerätetreiber erforderlich sind:
- Ethernet Network Interface Card (ENIC)
- Fibre Channel-Netzwerkschnittstellenkarte (FNIC)
- RAID-Controller (Redundant Array of Independent Disks)
- Motherboard-Chipsatz
- Grafikkarte
- Trusted Platform Module (TPM)
Treiber und Firmware
Gerätetreiber unterscheiden sich von Firmware. Gerätetreibersoftware wird auf dem Betriebssystem installiert, während es sich bei der Firmware um Code der unteren Ebene handelt, der auf Hardwaregeräten installiert wird. Die Firmware wird im nichtflüchtigen Speicher wie ROM, Erasable Programmable ROM (EPROM) oder Flash-Speicher gespeichert.
Treiberabhängigkeit von Firmware
Gerätetreiber sind stark von der Geräte-Firmware abhängig. Gerätetreiber müssen mit der Firmware-Ebene eines Hardwaregeräts kompatibel sein, damit sie richtig miteinander kommunizieren können. Die Treiber- und Firmware-Funktionen müssen übereinstimmen, damit eine ordnungsgemäße Funktion möglich ist.
Wann Treiber installiert und aktualisiert werden müssen
Gerätetreiber sind mit vorinstallierten Betriebssystemen (z. B. Cisco OEM VMware ESXi-Images) erhältlich oder können nach der Betriebssystemeinrichtung manuell installiert werden.
Gerätetreiber müssen in der Regel nach den folgenden Verfahren aktualisiert werden:
- UCS-Firmware-Upgrades
- Wichtige Betriebssystem-Upgrades/-Patches
Treiberversionen erforderlich
In der Interoperabilitätsmatrix für UCS-Hardware und -Software sind die Treiberversionen aufgeführt, die für eine bestimmte Kombination aus Betriebssystem, Gerät und Firmware erforderlich sind.
Warnung: Die in der Matrix aufgeführten Treiberversionen wurden vom Cisco Engineering Quality Assurance-Team getestet und verifiziert. Es ist daher äußerst wichtig, den richtigen Treiber zu installieren. Andernfalls kann es zu unerwarteten Verhaltensweisen kommen, die zu Netzwerkausfällen führen können.
Dieses Beispiel zeigt, dass für einen B200 M4 mit einer Virtual Interface Card (VIC) 1240, auf der ESXi 6.0 U3 ausgeführt wird, in UCS Version 3.2.2 ein FNIC-Treiber der Version 1.6.0.36 erforderlich ist.
Treiberpaket herunterladen
Gehen Sie wie folgt vor, um das Treiberpaket herunterzuladen:
- Navigieren Sie in einem Webbrowser zu https://www.cisco.com
- Klicken Sie unter Support auf Software herunterladen.
- Klicken Sie auf Unified Computing und Server.
- Wählen Sie Ihren Server aus. Cisco UCS-Treiber sind sowohl für Cisco UCS Blade-Server der B-Serie als auch für Cisco UCS Rackmount-Server der C-Serie verfügbar.
- Klicken Sie auf Unified Computing System (UCS) Drivers (UCS-Treiber).
- Wählen Sie das Paket aus, das Sie herunterladen möchten, und klicken Sie auf Jetzt herunterladen.
Tipp: Wenn Sie ein Treiberpaket zum Herunterladen auswählen, ist es wichtig, die Version des Treiberpakets auszuwählen, die der Server-Firmware-Version am ähnlichsten ist. Wenn Sie beispielsweise ein UCS-B Release 3.2(2b) ausführen, ist das VMware-Treiberpaket ucs-bxxx-drivers-vmware.3.2.2.iso erforderlich.
Tipp: Die meisten VMware ESXi-Treiber werden direkt von VMware heruntergeladen, wobei nach der Treiberversion gesucht wird. Dies ist oft schneller, als wenn Sie das gesamte Treiberpaket herunterladen würden.
Identifizieren der Serverhardware
Bevor Sie den richtigen Treiber auswählen, müssen Sie feststellen, welche Hardwaregeräte auf dem Server installiert sind. In diesem Abschnitt wird beschrieben, wie Sie die Geräte im UCS Manager und im CIMC finden.
UCS B-Serie
Dieses Beispiel zeigt, wie Sie den Serverbestand in UCS Manager finden. Auf Server 1/1 sind zwei Adaptermodelle installiert: die VIC 1240.
UCS C-Serie
Dieses Beispiel zeigt, wie Sie die Server-Hardwaregeräte im CIMC finden. Auf dem Server ist ein Cisco12G ModularSAS HBA RAID-Controller installiert.
Identifizieren der UCS-Firmware-Version
Bevor die richtige Treiberversion ausgewählt wird, muss die UCS-Version identifiziert werden. In diesem Abschnitt wird beschrieben, wie Sie die aktuelle auf den Servern installierte UCS-Version identifizieren.
UCS B-Serie
In diesem Beispiel wird auf der UCS B-Serie UCS 4.1(3h) ausgeführt.
UCS C-Serie
In diesem Beispiel wird auf der UCS C-Serie UCS 4.1(2f) ausgeführt.
Betriebssystem-Spezifikationen
In diesem Abschnitt wird beschrieben, wie Sie die Treiberversionen überprüfen und Treiber auf gängigen Betriebssystemen installieren.
VMware ESXi
Verwenden Sie die folgenden Befehle, um die aktuellen Treiberversionen und den VMware-Build zu überprüfen:
Tipp: Diese Befehle werden über die ESXi-CLI ausgeführt. Secure Shell (SSH) muss aktiviert werden, bevor eine SSH-Sitzung initiiert wird.
Command |
Beschreibung |
vmware -vl |
Zeigt die VMware-Build- und Patch-Ebene an. |
esxcli-Softwareprofil erhalten |
Zeigt die Variante der ISO-Installationsmethode an |
esxcfg-scsidevs -a |
Listet die Host-HBAs und den zugehörigen Treibernamen auf |
esxcfg-nics -l |
Listet die Host-vmnics und Netzwerkschnittstellenkarten (NIC) auf |
ethtool -i vmnicX |
Zeigt den von der angegebenen vmnic verwendeten Ethernet-Treiber an. |
esxcli network nic get -n vmnicX |
Zeigt den von der angegebenen vmnic auf ESXi 6.5 verwendeten Ethernet-Treiber an. |
vmkload_mod -s fnic |
Zeigt die HBA-Treiberversion für die Cisco VIC an. |
vmkload_mod -s enic |
Zeigt die Ethernet-Treiberversion für die Cisco VIC an. |
vmkload_mod -s nenic |
Zeigt die Ethernet-Treiberversion für die Cisco VIC für ESXi 6.5 und höher an. |
vmkload_mod -s megaraid_sas |
Zeigt die LSI MegaRAID-Treiberversion an. |
vmkload_mod -s lsi_mr3 |
Zeigt die Version des LSI lsi_mr3-Treibers an (nativer Treiber auf ESXi 6.7) |
vmkload_mod -s Treibername |
Zeigt die Treiberversion für einen angegebenen Treiber an. |
Diese Beispiele zeigen, dass vmnic2 eine Cisco VIC und die Treiberversion 1.4.2.15a verwendet.
Diese Beispiele zeigen, dass der Qlogic Host Bus Adapter (HBA) den Treiber qla2xxx Version 901.1k.1-14vmw verwendet.
Installieren Sie den Treiber
Gehen Sie wie folgt vor, um den Treiber zu installieren:
- Extrahieren Sie den Inhalt der Treiber-ZIP-Datei, und identifizieren Sie die Datei *.vib.
- Verwenden Sie den Datenspeicher-Browser, um die Datei *.vib in einen ESXi-Host-Datenspeicher hochzuladen.
- Wechseln Sie zum Host in den Wartungsmodus.
- Den Treiber installieren.
ESXi 5.x/6.x
Verwenden Sie diesen Befehl, um den Treiber für ESXi Version 5.x/6.x zu installieren:
esxcli software vib install –v /path/async-driver.vib
Hinweis: Wenn die Treiber eine Signaturüberprüfung erfordern, führen Sie diesen Befehl mit dem Schalter —no-sig-check aus. Stellen Sie sicher, dass Sie den vollständigen Pfad zur Datei verwenden.
ESXi 4.x
Verwenden Sie diesen Befehl, um den Treiber für ESXi Version 4.x zu installieren:
esxupdate --bundle=offline-bundle.zip update
Abschließen der Installation
Nachdem Sie den Treiber mit einem der zuvor genannten Befehle installiert haben, beenden Sie den Wartungsmodus, und starten Sie den Host neu. Weitere Informationen zur Installation von Treibern finden Sie im Abschnitt "Zugehörige Informationen" am Ende dieses Dokuments.
Nützliche VMware CLI-Befehle
Hier sind einige weitere nützliche VMware-Befehle, die Sie verwenden können, wenn Sie einen Treiber installieren:
Status des Wartungsmodus überprüfen
vim-cmd hostsvc/hostsummary | grep -i maintenace
Nach eingeschalteten VMs suchen
vim-cmd vmsvc/getallvms
VMs ausschalten
vim-cmd vmsvc/power.off <vm id>
Wartungsmodus eingeben
vim-cmd hostsvc/maintenace_mode_enter
Wartungsmodus beenden
vim-cmd hostsvc/maintenace_mode_exit
Microsoft Windows Server
In diesem Abschnitt wird beschrieben, wie Sie einen Treiber auf einem Microsoft Windows-Server installieren.
Aktuelle Treiberversion überprüfen
Um die Gerätetreiber in Microsoft Windows zu überprüfen, verwenden Sie den Geräte-Manager in der Systemsteuerung.
Aktuelle Treiberversion CLI überprüfen
Für Windows Server Core wird das Plug-and-Play (PnP)-Dienstprogramm (PNPUtil.exe) verwendet, um die Treiberversionen zu überprüfen.
Fehlende Treiber
Hardwaregeräte mit fehlenden Treibern werden im Geräte-Manager mit einem gelben Fragezeichen angezeigt. Diese Geräte müssen mit dem richtigen Treiber aktualisiert werden, um unerwartetes Verhalten zu verhindern.
Installieren Sie den Treiber
Um einen Treiber in Microsoft Windows zu installieren oder zu aktualisieren, klicken Sie mit der rechten Maustaste auf das Gerät, und wählen Sie Treiber installieren/aktualisieren, um den Installationsassistenten zu starten.
Installieren des Treibers über die Kommandozeile
Das PNPUtil-Tool kann auch verwendet werden, um Treiber über die CLI zu installieren. Das ISO-Treiberpaket kann über die UCS KVM Console Virtual Media gemountet werden.
Nützliche CLI-Befehle in Windows
Command |
Beschreibung |
pnputil.exe -e |
Auflistung aller installierten Drittanbietertreiber |
pnputil.exe -a <INF-Name> |
Treiber installieren |
pnputil.exe -d <INF-Name> |
Treiber löschen |
pnputil.exe -f -d <INF-Name> |
Löschen des Treibers erzwingen |
|
|
Red Hat und SUSE Linux
In diesem Abschnitt wird beschrieben, wie Sie einen Treiber auf Red Hat Enterprise Linux (RHEL) und SUSE Linux Enterprise Server (SLES) installieren und validieren.
Hintergrundinformationen zu SUSE
Ab SLES 12 SP1 sind die Cisco eNIC- und usNIC-Treiber in einem einzigen RPM gebündelt (im Gegensatz zu Paketen in separaten RPMs, wie sie es für andere Linux-Distributionen sind). Die Bündelung beider Treiber in einem einzigen RPM ist erforderlich, da die Kernel-Modul-Abhängigkeiten in SLES 12 SP1 und höher verwaltet werden. Wenn Sie die Cisco usNIC-Funktionalität nicht nutzen (wenn Sie beispielsweise keine usNIC-Geräte in UCSM/CIMC bereitgestellt haben), wird der usNIC-Treiber ignoriert.
Die eNIC- und usNIC-Treiber haben jeweils eigene Versionsnummern. Wenn Sie das RPM cisco-enic-usnic auf SLES 12 SP 1 oder höher installieren, verwenden Sie nach dem Laden dieser Treiber in den laufenden Kernel (z. B. durch Neustart) cat /sys/module/enic/version und cat /sys/module/usnic_verbs/version, um die entsprechenden Versionsnummern anzuzeigen. Das cisco-enic-usnic RPM hat auch eine eigene Versionsnummer. Da es sich um das Paket der eNIC- und usNIC-Treiber handelt, sieht die RPM-Versionsnummer ähnlich aus, gibt jedoch nicht die spezifische Version der beiden Treiber wieder.
Weitere Informationen zu den genauen Treiberversionen erhalten Sie, wenn Sie eine Abfrage durchführen und den Abschnitt mit der RPM-Beschreibung lesen. Die Abfrage ähnelt dem Beispiel unten:
# rpm -qip cisco-enic-usnic-kmp-default-
.x86_64.rpm
Name : cisco-enic-usnic-kmp-default Relocations: (not relocatable)
...
Summary : Cisco VIC Ethernet NIC drivers
Description :
This RPM contains both the Cisco VIC Linux Ethernet driver (enic.ko, version
) and
the Cisco Userspace NIC (usNIC) Linux Ethernet driver (usnic_verbs.ko, version
).
Some Linux distros require both kernel modules to be in the same RPM in order to properly test for
symbol compatibility (because usnic_verbs.ko depends on enic.ko) when installing into post-GA
upgrade kernels.
Aktuelle Treiberversionen und Betriebssystemversion überprüfen
Nachfolgend finden Sie eine Liste der Befehle, die zum Überprüfen der aktuellen Treiberversion und Betriebssystemversion verwendet werden:
Command |
Beschreibung |
modinfo driver_name |
Zeigt die Treiberversion für den angegebenen Treiber an, der beim nächsten Neustart geladen wird (standardmäßig) |
modinfo /path/to/driver_name.ko |
Zeigt die Treiberversion für die angegebene Kernel-Treiberobjektdatei an. |
cat /sys/module/enic/version |
Zeigt die Ethernet-Treiberversion an, die derzeit im laufenden Linux-Kernel für den Cisco VIC-Adapter geladen ist. |
cat/sys/module/fnic/version |
Zeigt die Treiberversion des FC-NIC an, die derzeit im laufenden Linux-Kernel für den Cisco VIC-Adapter geladen ist. |
cat /sys/module/megaraid_sas/version |
Zeigt die Version des LSI MegaRAID-Treibers an, der derzeit im laufenden Linux-Kernel geladen ist. |
lsmod -l |
Listet die aktuell geladenen Treiber im Kernel auf |
cat /etc/redhat-release |
Zeigt die RHEL-Version (für RHEL 6.x und frühere Versionen) |
cat /etc/SuSE-release |
Zeigt die SUSE-Version (für SLES 11 SP3 und frühere Versionen) |
cat/etc/os-release |
Zeigt die RHEL-Version (für RHEL 7.x und höher und SLES 11 SP4 und höher) |
uname -a |
Zeigt Informationen zum Kernel an |
Hinweis: Beachten Sie, dass der Befehl modinfo [ Treibername ] die Modulinformationen über den Treiber anzeigt, der beim nächsten Neustart geladen wird. Dies ist nicht unbedingt die gleiche Treiberversion, die derzeit im laufenden Kernel geladen ist. Überprüfen Sie cat/sys/module/DRIVER_NAME/version, um die Treiberversion zu validieren, die im derzeit laufenden Kernel geladen ist, und/oder verwenden Sie den Befehl modinfo [ /path/to/driver.ko ], um die Modulinformationen für eine bestimmte Treiber-Kernel-Objektdatei zu validieren.
Tipp: Beispiele für andere gängige Treibernamen finden Sie in der Tabelle mit den Treibernamen im Anhang.
Dieses Beispiel zeigt, dass die ENIC-Treiberversion 3.2.210.18-738.12 im Paket cisco-enic-usnic RPM 3.2.272.23 auf SLES 15 GA installiert ist.
# cat /etc/os-release
NAME="SLES"
VERSION="15"
VERSION_ID="15"
PRETTY_NAME="SUSE Linux Enterprise Server 15"
ID="sles"
ID_LIKE="suse"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:suse:sles:15"
# rpm -qa | grep enic
cisco-enic-usnic-kmp-default-3.2.272.23_k4.12.14_23-738.12.x86_64
# modinfo enic | grep ^version
version: 3.2.210.18-738.12
# cat /sys/module/enic/version
3.2.210.18-738.12
Installieren Sie den Treiber
Treiber in RHEL und SLES werden mit dem Redhat Package Manager (RPM) installiert. Verwenden Sie diesen Befehl, um den Treiber zu installieren:
# rpm -ihv RPM_filename.x86_64.rpm
Tipp: Achten Sie bei der Installation von Treibern unter Linux darauf, dass Sie die mit dem Treiber verknüpften README-Dateien überprüfen, sofern diese verfügbar sind. Sie können sich den Inhalt des RPM anschauen, um zu sehen, wo die zugehörige README-Datei installiert wurde ( rpm -qp kmod-enic). Einige RPM-Treiberpakete sind von anderen Modulen abhängig und erfordern die Installation zusätzlicher RPM-Pakete. Die README-Dateien enthalten vollständige Anweisungen zur Installation der Treiberdatei.
Anhang
Referenztabelle für Treibernamen
Diese Tabelle enthält die Treibernamen oder Präfixe für allgemeine Treiber.
Command |
Beschreibung |
enic |
Cisco VIC Ethernet-NIC |
fnic |
Cisco VIC FC-NIC |
qle oder qla |
QLogic-Adapter |
LPK |
Emulex HBA (Lichtimpuls) |
be2net |
Emulex Ethernet-NIC |
igb oder ixgbe |
Intel NICs |
BNX |
Broadcom-Adapter |
Megaraid |
LSI MegaRAID |
Megaser |
Integriertes Software-RAID |
nic |
Cisco VIC Ethernet NIC für ESXi 6.5 |
Zugehörige Informationen