はじめに
このドキュメントでは、Cisco Unified Computing System(UCS)に一般的なオペレーティング システム用のデバイス ドライバをインストールする方法について説明します。
前提条件
要件
次の項目に関する知識があることが推奨されます。
- Cisco UCS Manager
- Cisco インテグレーテッド マネージメント コントローラ(CIMC)
- Virtual Machine-ware(VMware)、Windows サーバ、Linux オペレーティング システム(OS)
使用するコンポーネント
このドキュメントの情報は、次のハードウェア プラットフォームに基づくものです。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
背景説明
ドライバの定義
デバイス ドライバとは、OS とハードウェアの間のインターフェイスであるソフトウェアのことです。デバイス ドライバは、一般的な OS コマンドを特定のデバイスに特化したコマンドに変換して、OS がハードウェア デバイスと通信できるようにします。
ドライバを必要とするデバイス
デバイス ドライバを必要とするハードウェア デバイスの一覧を示します。
- イーサネット ネットワーク インターフェイス カード(ENIC)
- Fibre Channel Network Interface Card(FNIC)
- 冗長ディスク アレイ(RAID)コントローラ
- マザーボード チップセット
- ビデオ カード
- トラステッドプラットフォームモジュール(TPM)
ドライバとファームウェアの比較
デバイス ドライバはファームウェアとは異なります。デバイス ドライバ ソフトウェアは OS にインストールされますが、ファームウェアはハードウェア デバイス上にインストールされた下位コードです。ファームウェアは、ROM、Erasable Programmable ROM(EPROM)、またはフラッシュ メモリなどの不揮発性メモリに保存されます。
ファームウェアに依存するドライバ
デバイス ドライバはデバイスのファームウェアに強く依存しています。デバイスドライバは、ハードウェアデバイスのファームウェアレベルと互換性があり、互いに適切に通信できる必要があります。正常に動作するには、ドライバとファームウェアの機能が一致している必要があります。
ドライバのインストールと更新が必要なとき
デバイス ドライバは、オペレーティング システム(Cisco OEM VMware ESXi イメージなど)とともに事前インストールされているか、または OS のセットアップ後に手動でインストールできます。
通常、デバイス ドライバは次の手順の後に更新する必要があります。
- UCS ファームウェア アップグレード
- 主要な OS アップグレード/パッチ適用
必要なドライバのバージョン
UCS ハードウェアとソフトウェアの相互運用マトリックスは、特定の OS、デバイス、ファームウェアの組み合わせに必要なドライバ バージョンを示しています。
警告:マトリックスに記載されているドライバのバージョンは、Cisco Engineering Quality Assuranceチームによってテストおよび検証されています。適切なドライバをインストールすることが重要です。そうしないと、予期しない動作が発生し、ネットワークが停止する可能性があります。
この例では、UCSリリース3.2.2上でESXi 6.0 U3を実行する仮想インターフェイスカード(VIC)1240を搭載したB200 M4にFNICドライババージョン1.6.0.36が必要であることを示しています。

ドライバ バンドルのダウンロード
ドライバ バンドルをダウンロードするには、次の手順を実行します。
- Webブラウザで、Cisco Webサイト
- [Support] の下で、[Download Software] をクリックします。
- [Unified Computing and Servers] をクリックします。
- サーバを選択します。Cisco UCS ドライバは、Cisco UCS B シリーズ ブレード サーバと Cisco UCS C シリーズ ラックマウントの両方に利用可能です。
- [Unified Computing System (UCS) Drivers] をクリックします。
- ダウンロードするバンドルを選択し、[Download Now] をクリックします。
ヒント:ダウンロードするドライババンドルを選択する際には、サーバファームウェアリリースに最も類似したドライババンドルバージョンを選択することが重要です。たとえば、UCS-Bリリース3.2(2b)を実行する場合は、VMwareドライババンドルucs-bxxx-drivers-vmware.3.2.2.isoが必要です。
ヒント:ほとんどのVMware ESXiドライバは、ドライババージョンを検索して、VM Wareから直接ダウンロードされます。多くの場合、この方法はドライバ バンドル全体をダウンロードするよりも短時間で実行されます。
サーバ ハードウェアの識別
適切なドライバを選択するには、どのハードウェア デバイスがサーバにインストールされているか、前もって識別する必要があります。 このセクションでは、UCS Manager 上および CIMC にあるデバイスを検出する方法について説明します。
UCS B シリーズ
この例では、UCS Manager 上のサーバ インベントリを検出する方法を示します。サーバ1/1には、VIC 1240という2つのアダプタモデルがインストールされています。

UCS C シリーズ
この例では、CIMC にあるサーバ ハードウェア デバイスを検出する方法を示しています。このサーバには、Cisco12G ModularSAS HBA RAIDコントローラがインストールされています。

UCS ファームウェア リリースの識別
正しいドライババージョンを選択する前に、UCSリリースを特定する必要があります。このセクションでは、サーバにインストールされている現在の UCS リリースを識別する方法を説明します。
UCS B シリーズ
この例では、UCS BシリーズがUCSリリース4.1(3h)を実行しています

UCS C シリーズ
この例では、UCS CシリーズはUCSリリース4.1(2f)を実行します。

OS の仕様
このセクションでは、ドライバ バージョンを確認する方法と、共通の OS にドライバをインストールする方法を説明します。
VMware ESXi
次のコマンドを使用して、現在のドライバ バージョンと VMware のビルドを確認します。
ヒント:これらのコマンドはESXi CLIから実行されます。SSHセッションを開始する前に、セキュアシェル(SSH)を有効にする必要があります。
コマンド |
説明 |
vmware -vl |
VMwareのビルドおよびパッチレベルを表示します。 |
esxcliソフトウェアプロファイルの取得 |
インストールISOの種類を表示します。 |
esxcfg-scsidevs -a |
ホストHBAと関連するドライバ名の一覧が表示されます。 |
esxcfg-nics -l |
ホストのvmnicとネットワークインターフェイスカード(NIC)のモデルを一覧表示します。 |
ethtool -i vmnicX |
指定したvmnicが使用するイーサネットドライバを表示します。 |
esxcliネットワークnic get -n vmnicX |
ESXi 6.5上の指定されたvmnicによって使用されるイーサネットドライバを表示します。 |
vmkload_mod -s fnic |
Cisco VICのホストバスアダプタ(HBA)ドライバのバージョンが表示されます。 |
vmkload_mod -s enic |
Cisco VICのイーサネットドライババージョンが表示されます。 |
vmkload_mod -s nenic |
ESXi 6.5以降のリリース用Cisco VICのイーサネットドライババージョンを表示します。 |
vmkload_mod -s megaraid_sas |
LSI MegaRAIDドライババージョンを表示します。 |
vmkload_mod -s lsi_mr3 |
LSI lsi_mr3ドライバのバージョン(ESXi 6.7のネイティブドライバ)を表示します。 |
vmkload_mod -s driver_name |
指定されたドライバのドライババージョンを表示します。 |
次の例は、vmnic2 が シスコ VIC とドライバ バージョン 1.4.2.15a を使用することを示しています。


次の例は、Qlogic Host Bus Adapter(HBA)がドライバ qla2xxx バージョン 901.1k.1-14vmw を使用することを示しています。


ドライバのインストール
ドライバをインストールするには、次の手順を実行します。
- ドライバ zip ファイルの内容を解凍し、*.vib ファイルを特定します。
- データストア ブラウザを使用して、*.vib ファイルを ESXi ホスト データストアにアップロードします。

- ホストをメンテナンス モードにします。
- ドライバをインストールします。
ESXi 5.x/6.x
次のコマンドを使用して、ESXiリリース5.x/6.xにドライバをインストールします。
esxcli software vib install –v /path/async-driver.vib

注:ドライバに署名検証が必要な場合、—no-sig-checkスイッチを指定してこのコマンドを実行します。ファイルへのフル パスを使用していることを確認します。
ESXi 4.x
ESXi リリース 4.x にドライバをインストールするには、次のコマンドを使用します。
esxupdate --bundle=offline-bundle.zip update
インストールの完了
前述のいずれかのコマンドを使用してドライバをインストールしたら、メンテナンス モードを終了して、ホストを再起動します。ドライバをインストールする方法については、このドキュメントの最後の「関連情報」を参照してください。
便利な VMware CLI コマンド
ドライバをインストールする際に使用できる、他の便利な VMware コマンドは次のとおりです。
メンテナンス モードのステータスを確認する
vim-cmd hostsvc/hostsummary | grep -i maintenace
電源がオンになっている VM を確認する
vim-cmd vmsvc/getallvms
VM の電源をオフにする
vim-cmd vmsvc/power.off <vm id>
メンテナンス モードを開始する
vim-cmd hostsvc/maintenace_mode_enter
メンテナンス モードを終了する
vim-cmd hostsvc/maintenace_mode_exit
Microsoft Windows Server
このセクションでは、ドライバを Microsoft Windows Server にインストールする方法について説明します。
現在のドライバ バージョンの確認
Microsoft Windows でデバイス ドライバを確認するには、コントロール パネルにあるデバイス マネージャを使用します。

現在のドライバ バージョン CLI の確認
Windowsの場合、Server Coreのプラグアンドプレイ(PnP)ユーティリティ(PNPUtil.exe)を使用して、ドライバのバージョンを確認します。

欠落しているドライバ
ドライバが欠落しているハードウェア デバイスは、黄色い疑問符が付けられてデバイス マネージャ表示されます。予期しない動作を防ぐために、これらのデバイスを正しいドライバで更新する必要があります。

ドライバのインストール
Microsoft Windowsでドライバのインストールまたは更新を行うには、デバイスを右クリックし、Install/Update Driverを選択してインストールウィザードを開始します。

CLI からのドライバのインストール
また、PNPUtil ツールを使用して、CLI からドライバをインストールすることもできます。ドライバ ISO バンドルは UCS KVM コンソールの仮想メディアを使用してマウントできます。

便利な Windows CLI コマンド
コマンド |
説明 |
pnputil.exe -e |
インストールされているサードパーティ製ドライバをすべてリストします。 |
pnputil.exe -a <INF name> |
ドライバをインストールします。 |
pnputil.exe -d <INF name> |
ドライバを削除します。 |
pnputil.exe -f -d <INF name> |
ドライバを強制的に削除します。 |
|
|
Red HatおよびSUSE Linux
このセクションでは、Red Hat Enterprise Linux(RHEL)およびSUSE Linux Enterprise Server(SLES)にドライバをインストールして検証する方法について説明します。
SUSEの背景説明
SLES 12 SP1以降、Cisco eNICおよびusNICドライバは1つのRPMにバンドルされています(他のLinuxディストリビューションと同様に、個別のRPMにパッケージされています)。 SLES 12 SP1以降でカーネルモジュールの依存関係を管理するには、両方のドライバを1つのRPMにバンドルする必要があります。Cisco usNIC機能を使用していない場合(たとえば、UCSM/CIMCでusNICデバイスをプロビジョニングしていない場合)、usNICドライバは実質的には無視されます。
eNICドライバとusNICドライバには、それぞれ異なるバージョン番号があります。SLES 12 SP 1以降にcisco-enic-usnic RPMをインストールする場合、これらのドライバが稼働中のカーネルにロードされたら(たとえば、リブートによって)、cat /sys/module/enic/versionおよびcat /sys/module/usnic_verbs/versionを使用して、それぞれのバージョン番号を表示します。cisco-enic-usnic RPMには、独自のバージョン番号もあります。eNICドライバとusNICドライバのパッケージを表しているため、RPMバージョン番号は類似していますが、いずれのドライバの特定のバージョンも反映していません。
正確なドライババージョンの詳細については、「RPMの説明」セクションを参照してください。クエリは次の例のようになります。
# 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.
現在のドライババージョンとOSリリースの確認
現在のドライバ バージョンと OS リリースを確認するために使用するコマンドの一覧を示します。
コマンド |
説明 |
modinfo driver_name |
次回の再起動時に読み込まれる(既定で)指定されたドライバのドライババージョンを表示します。 |
modinfo /path/to/driver_name.ko |
指定されたドライバカーネルオブジェクトファイルのドライババージョンを表示します。 |
cat /sys/module/enic/version |
Cisco VICアダプタの実行中のLinuxカーネルに現在ロードされているイーサネットドライババージョンが表示されます。 |
cat /sys/module/fnic/version |
Cisco VICアダプタ用の実行中のLinuxカーネルに現在ロードされているFC NICドライババージョンが表示されます。 |
cat /sys/module/megaraid_sas/version |
稼働中のLinuxカーネルに現在ロードされているLSI MegaRAIDドライババージョンを表示します。 |
lsmod -l |
カーネルに現在ロードされているドライバを一覧表示します。 |
cat /etc/redhat-release |
RHELリリース(RHEL 6.x以前)を表示します。 |
cat /etc/SuSE-release |
SUSEのリリースを表示します(SLES 11 SP3以前の場合)。 |
cat /etc/os-release |
RHELリリースを表示します(RHEL 7.x以降、およびSLES 11 SP4以降)。 |
uname -a |
カーネル関連の情報を表示します。 |
注:modinfo [driver name ] コマンドを実行すると、次回のリブート時にロードされるドライバに関するモジュール情報が表示されます。これは必ずしも、現在実行中のカーネルにロードされているドライババージョンと同じではありません。cat/sys/module/DRIVER_NAME/versionを調べて、現在稼働中のカーネルにロードされているドライババージョンを確認するか、modinfo [ /path/to/driver.ko ]コマンドを使用して、特定のドライバカーネルオブジェクトファイルのモジュール情報を確認します。
ヒント:その他の一般的なドライバ名の例については、付録にある「ドライバ名の参照表」を参照してください。
この例では、cisco-enic-usnic RPMパッケージ3.2.272.23にバンドルされたENICドライババージョン3.2.210.18-738.12がSLES 15 GAにインストールされていることを示しています。
# 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
ドライバのインストール
RHELおよびSLESのドライバは、Redhat Package Manager(RPM)を使用してインストールされます。 次のコマンドを使用して、ドライバをインストールします。
# rpm -ihv RPM_filename.x86_64.rpm

ヒント:Linuxにドライバをインストールする際には、ドライバに関連するREADMEファイルが公開されている場合はそれを確認してください。RPMの内容を見ると、関連するREADMEファイルがインストールされている場所がわかります( rpm -qp kmod-enic)。 一部の RPM ドライバ パッケージは他のモジュールに依存関係があり、追加の RPM パッケージのインストールが必要です。README ファイルには、ドライバ ファイルのインストール方法に関する詳細な手順が含まれています。
付録
ドライバ名参照表
この表は、共通ドライバのドライバ名またはプレフィックスを示しています。
コマンド |
説明 |
enic |
Cisco VIC イーサネット NIC |
fnic |
Cisco VIC FC NIC |
qle または qla |
Qlogic アダプタ |
lpfc |
Emulex HBA(ライトの点滅) |
be2net |
Emulex イーサネット NIC |
igb または ixgbe |
Intel NIC |
bnx |
Broadcom アダプタ |
megaraid |
LSI MegaRAID |
メガサー |
組み込みソフトウェアRAID |
ネニック |
ESXi 6.5用Cisco VICイーサネットNIC |
関連情報