在给物理服务器安装ESXI的过程中经常会遇到网卡驱动问题,如果是买的是Dell、HP、IBM等厂商的服务器,一般这些厂商在VMware公司发布新的ESXI版本后都会进行重新封装,将相关的设备的驱动程序添加到ESXI里面,从而减少手工为ESXI安装驱动程序。

前段时间公司有一台新的服务器,标配的是千兆网卡;后来又采购了intel板载的4口万兆光口网卡,插上服务器后发现ESXI并没有成功识别该网卡,即使重启或者重新安装ESXI也是如此,这明显就是ESXI系统里没有包含这个型号的网卡驱动的原因导致的。

登录ESXI可以看到起只认到服务器板载的两口千兆网卡,并没有认到新插进去的4口万兆

clip_p_w_picpath002

对于网卡的具体型号,也可以在ESXI高级设置里面查看到,以下示例就是4口万兆光口模块的Intel X710 ,并记下该型号的设备ID、供应商ID等设备ID信息

clip_p_w_picpath004

打开VMware兼容性列表的官方:

http://www.vmware.com/resources/compatibility/search.php 并选择IO Devices

clip_p_w_picpath006

可以通过左边的ESXI版本、供应商、设备类型来找到该网卡的,但是更为便捷的方式是在右侧输入产品的VID(供应商ID)和DID(设备ID)还快速定位到该网卡

clip_p_w_picpath008

定位到该型号的设备

clip_p_w_picpath010

点击进去看详细的说明、Release Note及发行日期等信息,然后将其下载到本地

clip_p_w_picpath012

本示例中下载名为i40e-1.3.38-1331820-3010881.zip 的驱动文件

clip_p_w_picpath014

首先我们要确保ESXI主机的Shell已经打开

clip_p_w_picpath016

首先通过WINSCP工具将下载到本地的驱动将上传到ESXI主机里面的tmp目录,本示例为将本地的i40e-1.3.45-1331820-3165430.zip 上传到ESXI上的tmp目录。一般都是建议上传到tmp目录(主要是tmp目录有执行安装的权限)

clip_p_w_picpath018

clip_p_w_picpath020

接着通过putty等工具连接到ESXI主机中,确认一下tmp目录存在该驱动文件

clip_p_w_picpath022

首先将这个.zip的压缩文件通过unzip解压缩

clip_p_w_picpath024

查看一下解压缩后的文件,然后通过esxcli software vib install -v /tmp/net-i40e-1.3.45-IOEM.550.0.0.131820.x86_64.vib 命令将驱动中的vib安装(本文章的重点其实就是这条命令),并查看安装结果

如果卸载则用一下命令esxcli software vib remove -n xxx -f 其中xxx为驱动名称

clip_p_w_picpath026

最后重启一下ESXI,才能让这个驱动生效;重启后可通过esxcli software vib list 命令查看该驱动是否被正确识别

clip_p_w_picpath028

重启后可通过命令lspci | grep 'Network controller' 查看该网卡是否被识别

clip_p_w_picpath030

可以通过esxcfg-nics -l 查看ESXI上网口的信息、端口、速率、型号、Mac地址等信息

clip_p_w_picpath032

最后登录ESXI主机确认该驱动程序已经成功安装并识别

clip_p_w_picpath034

 

其实本文章虽然演示的是如何更新ESXI上的网卡驱动程序,但其实更新其他的ESXI硬件(如磁盘、阵列卡)也都是同样的步骤,从官网下载相应硬件的驱动程序利用以下命令将其安装即可。

esxcli software vib install -v /tmp/you drive file