一、使用VMDirectPath映射USB设备的前提条件

1、所使用的cpu和芯片组必须支持Intel的Directed I/O(vt-d)技术或者AMD的I/O Virtualization技术,仅支持cpu虚拟化是不行的

2、需要一块独立的USB扩展卡,VMDirectPath不支持映射主板集成的USB接口

二、使用的设备清单

Dell T110服务器:Xeon X3430 3420芯片组 4G内存 SAS6ir阵列卡 250G*2硬盘(SATA) Broadcom 5722

如果想使用VMDirectPath,购买设备前一定要确认一下cpu和芯片组是不是支持vt-d,不过即时支持vt-d也不一定肯定能成功,但是不支持肯定是没戏的

下边是我使用的cpu和芯片组的详细信息链接

cpu:http://ark.intel.com/Product.aspx?id=42927

芯片组:http://www.intel.com/products/server/chipsets/3400-3420/3400-3420-overview.htm 

USB 扩展卡:syba SD-EN101-4E1I PCI-Express转USB 2.0扩展卡,使用的是PLX8111桥接芯片+NEC D720101

OA系统的USB加密狗:主要就是为了映射这个东西

三、安装设置

1、首先在bios里打开虚拟化支持,Dell T110默认是关闭的

2、开始安装ESXi 4.0,安装很顺利所有的硬件都能支持

3、用VShere Client连接ESXi服务器,选择Configuration-Advanced Setting就会看到VMDirectPath的设置界面,点击Configure Passthrough

如果硬件不支持或者bios中没有打开虚拟化支持这个选项是灰色的无法选择

vmware esxi 解决USB识别问题

勾选需要映射的设备

 

vmware esxi 解决USB识别问题

确认后提示需要重启

 vmware esxi 解决USB识别问题

重启以后映射的设备上出现绿色的标志

vmware esxi 解决USB识别问题

编辑虚拟机的设置

vmware esxi 解决USB识别问题

点"Add…”添加一个新设备

vmware esxi 解决USB识别问题

选择"PCI Device”

vmware esxi 解决USB识别问题

选择需要映射的设备

vmware esxi 解决USB识别问题

完成

vmware esxi 解决USB识别问题

启动虚拟机,可以看到插在服务器上的USB设备已经成功映射到虚拟机(我插了一个U盘和一个USB加密狗)。

vmware esxi 解决USB识别问题

四、总结

1、映射的USB设备只能工作在1.1的速度下,我主要使用加密狗这个问题倒不是很大

2、只能映射扩展卡上的USB接口,服务器本地的USB接口不支持,不过据说4.1版本就可以支持映射本地USB接口了

3、兼容性似乎还不是很好,不是所有的服务器、扩展卡和USB设备都能很好的配合,不过总体讲Intel要比AMD成功率高

4、我使用过VMware Server 1.0的USB映射功能,不是很稳定,不过ESXi的VMDirectPath目前使用一周没有什么问题

5、虚拟机安装的时候需要选择Version 7的才能支持VMDirectPath

五、参考链接

http://www.vm-help.com/esx40i/VMDirectPath/USB_Setup.php

http://www.intel.com/technology/virtualization/technology.htm

已经过时了,ESXi 4.1已经支持映射本地usb