使用虚拟机ESXI,显卡直通VM,使一台实体机虚拟成HTPC、WEB服务器、NAS服务器等经验 - 小众知识

使用虚拟机ESXI,显卡直通VM,使一台实体机虚拟成HTPC、WEB服务器、NAS服务器等经验

2013年01月27日 14:18:05 苏内容
  标签: 虚拟机/ESXI/显卡
阅读:7328

什么是ESXI?其实是VMWARE的企业版,ESXI自己就是一套操作系统,不用装WINDOW,也不用装LINUX,效率能达到实体机的95%以上。可以把一台虚拟成几台PC,各自发挥自己的用途。

利用ESXI,把其中一台实体机虚拟成HTPC,其余的虚拟机干WEB服务器,NAS服务器?不是梦想
这东东在国外很流行的,非常可悲,在中国几乎找不到详细的资料以及经验,更不好运的是,直通(就是把显卡或其它设备直接给VM使用,不给主PC使用)可能会遇到的问题,全部被我碰到个遍了,差点就是放弃的了,于是我把历经2周波折所累积下来的经验,和大家分享一下,使大家别走弯路。

来个前奏,由于有很多资料要备份,于是想组建一台NAS,找了很了群晖等的NAS,2盘位好一点的也要卖3、4K,更有甚者,某某司的品牌,压根就是ATOM主板加个机箱,卖3、4K,觉得买这些东西,非常...那个了(买了的朋友,别打我),软阵列对数据的保护就不说,功能还少得很,群晖好点,但支持也有限。记得某个论坛的人说,买群晖好,买NAS就是为了折腾,但我想,要折腾,还不如自己组个机器,自己折腾?于是,我走了折腾的不归路。

首先,我这台机器要有几个点:
1、要有HTPC功能
2、要有NAS功能
3、要有WEB服务器功能(WIN2008)
4、要能给家里人用
5、硬阵列,有缓存,有电池,不怕断电

本来不装WIN2008的话,装一个LINUX就能基本上解决了,不过,HTPC其实很多时候使用,还是WIN7方便,家里人用惯了嘛,特别是看YOUKU。

本来看中了一个万由的机箱,由于他是用ITX板的,只有一条PCI-E槽,能装阵列卡,就不能装显卡,于是废掉了,于是淘了一个AOPEN G326HT的库存机箱(25x24x28),改造成12硬盘,水冷+半导体制冷(有芯片控温至40度,防结霜),有漏水警报器。

至于主板,由于至少要双显卡(一个显卡显示ESXI控制台,一个HTPC用),又要有MINI PCI槽插固态MSATA硬盘,因此,我选了INTEL的DQ77MK主板,MICRO ATX主板:一条PCI-E插9261阵列卡(16X),一条插HD5450显卡(4X),一条插PCI普通显卡,一条插USB 3.0扩展卡(或插无线等其它东东也行)。该板中国没卖,是我从香港邮购回来的。Q77芯片组,原生支持VT-D,而且做工非常不错,功能很强。
废话少说,入正题

------------------------------

显卡直通怎么搞,很多地方有说了,这里给个传送门,自己看看:http://cxpbt.blog.51cto.com/960019/463787
我这里重点说说显卡直通存在的问题,我估计也卡死了很多很多有意向做这事种的人。

一、名词解释
穿透有很多名词,例举如下:
VMDP:VmDirectPath(直通,ESXI专用名词,下文全用VMDP代表)
PT:PassThrough或Pass-Through(直通)
VT-D:Virtualization Technology for Directed I/O(直通)
中文方面:穿透=直通=直接访问,VMWARE官方用的是直通这个词

二、VMDP的前题条件
VMDP首先要是CPU支持VT-D,可以去查INTEL网站(一般I5以上,不带K的都支持,I3就别想啰),然后是主板支持VT-D,支持VT-D的主板一般有三个品牌,INTEL、华擎、技嘉
INTEL自己说的是只有Q77芯片组才真正支持VMDP,但其实很多H77、Z77都支持,包括INTEL自己的主板,几乎全系列支持VT-D,兼容性嘛,看上去好像没啥分别。

三、VMDP安装及配置建议
显卡:建议用ATI(应该是AMD,不大习惯,呵呵)的卡,NVIDIA可以VMDP的几率很低(已知GTX460可以),想VMDP的,还是用ATI的卡吧,ATI的卡我试过四只,全部直通成功(X700能直通不能显示,HD5450,HD6450,HD6570),其中HD6570的HDMI音频无法直通成功。
系统:建议用ESXI 5.0 U2,4.1太旧,5.1不支持USB直通,不好搞,因为HTPC的VM还得把鼠标键盘穿进去才好用
驱动安装顺序:先装VMTOOLS,再装显卡驱动(蓝屏后有说)

四、误区及经验(这里是重点了,请细看)
1、板载显卡与声卡问题:这里是重点,有的板集成显卡及声卡全部打开,对VMDP无影响,有的需要关闭集成声卡,有的需要关闭集成显卡,有的两个都需要关闭,请不要忽视这个问题,我就是因为没有关闭集成声卡导致VMDP问题卡顿了一周,所以建议大家尝试的时候,把集成声卡有显卡都CLOSE吧,反正带HDMI的显卡,一般都有声卡功能。
2、无法识别的设备是否能VMDP:能,例如无法识别的USB设备,写着unknow device(好像是这样),VMDP进去之后,一样能用
3、HD4000的集成显卡ESXI无法识别问题:第2点已经说了,不能识别的设备,也能直通,只是。。。只要是集显,无论什么显卡都无法VMDP(HD2000、3000、2500、4000我都试过,全部失败),估计由于不是用PCI总线的原因,显示到启动20%的时候,基本上完蛋。
4、2G内存限制:VMDP显卡后的VM,只能用2G内存,不然会启动不了(进WINDOW蓝屏,提示啥我没仔细记下来),虽然说是2G,其实设到1.5G就最多了,可用的内存非常少。要解除这个限制,需要把虚拟机所在目录的VMX结尾配置文件,下载回来,编辑,最后加上以下两句: "pciHole.start = 1200" 和"pciHole.end = 2200"。 "pciHole.end = 2200"用于1G显存显卡, 如果是512M显存,要写成 "pciHole.end = 1700"
5、设备管理器显示有直通后的显卡,也正常运转,但无法在WIN7的分辨率设置中找到第二显示器:⑴遇到这种情况,请尝试新建虚拟机,装系统前先把设备直通完再装  ⑵请确认你的催化剂驱动包的驱动包含正确的驱动,例如11.9版驱动,就无法驱动ATI 5450,这个你可以在启安装程序后,用自定义的方式装驱动,如果列表里没有显示显卡和声卡的驱动让你行,证明这驱动包不行。  ⑶确保你的驱动支持WDDM,如ATI X700的驱动就不支持WIN7的WDDM 1.1
6、装显卡驱动蓝屏,显示atikmpag.sys错误,请确保以下几点:⑴集成显卡及声卡均要屏蔽,不屏蔽可能永远蓝屏装上不  ⑵按以下顺序安装驱动,首先安装VMTOOLS; 其次进入安全模式停用VMDP的显卡,然后重新启动;重启完成后,利用设备管理器更新驱动的方式更新驱动,让机器自动重启,之后就能用了  ⑶切记,集成显卡及声卡均屏蔽,不屏蔽的话,可能永远蓝屏,装上不,屏蔽的话,只要蓝屏一次就装上了(或者按第2点做,一次都不会蓝屏)(4)pciHole的设定已经做好
7、驱动版本问题:最稳定的驱动是13.4 WHQL,千万别下错移动版的了
8、启动虚拟机的时候,显示器黑屏:我一开始也在这里纠结了非常久,为啥开机了,显示器不亮了,后来我才知道,由于主次显卡问题,VM的主显卡是虚拟显卡,没装好系统的时候,第二显卡无法驱动,当然就显示器不亮了,因此不需要害怕,把显卡驱动装好后,进WIN或LINUX,显示器的屏就直接亮了。
9、ESXI启动时卡死在“cnic_register loaded successfully”:其实ESXI没死的,因为设置了显卡直通,ESXI到了这里已经把显卡的控制权释放出去了,所以屏幕卡死了,但ESXI其实是正常运作的。
10、支持显卡及主板列表,大这可以看看这两个网站,英文的:https://docs.google.com/spreadsheet/ccc?key=0Aqp_xYBwP_Y7dE5EclhtaDdIV09lNWxfODd1alRUTlE#gid=0 和  http://communities.vmware.com/thread/297072?start=0&tstart=0
(2013.6.15更新)
11、关于2GB内存限制问题,在超过1.5GB内存分配的时候,有朋友在启动的时候会提示“Module memsched power on failed”,就算是配置了pciHole.start及pciHole.end也无法启动虚拟机,这是由于在直通后,没有分配有足够的配额所致的(即所有虚拟机总分配内存,大于实体机总内存),可以到:Vclient-->选择主机-->资源分配-->内存预留,调至你需要的大小,即可启动。
12、关于鼠标卡顿问题,请直通USB口到VM,用实体鼠标操作,另外,内存最好调至4G,这样鼠标卡顿应该会消失了
13、关于硬件加速问题(YOUKU或其它播放软件绿屏):与显卡有关,HD5450的显卡基本上都是绿屏的,换HD6450就没事了,我就是这样
14、YOUKU使用软加速(无硬件加速可用时):在视频中右键-->设置-->第一项中的硬件加速去掉,刷新就不绿屏了
15、关于多显示器问题:笔者建议把电视机设为唯一屏幕,把vclient连的那个监控屏幕取消,会加速系统运行。方法是WIN7桌面-->右键-->屏幕分辨率-->找到“只在屏幕N显示“显示的项,选择即OK
16、硬盘慢,整台机卡顿严重问题:请回忆一下,是不是装好虚拟机之后,移动过SATA插座位置,如果是的话,可以把整个硬盘格式化成NTFS,再变成VMFS,重装虚拟机,一切问题都可以解决

(2013.7.2更新)
17、若大家使用POWERDVD、TMT播放器时,显示“Sorry,this application cannot run under a Virtual Machine”。那么,请按两步走:(1)请下载虚拟主机目录下的.VMX文件,在末尾加一行:monitor_control.restrict_backdoor = "TRUE"   (2)打开注册表中的HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Class/{4D36E968-E325-11CE-BFC1-08002BE10318}/0000
  
将 DriverDesc 项的内容清空(千万不要删除此项)。设置完后应该就可以了。

请大家注意,vCenter算号的时候,要选择standard版本的算号,这个才是最高版本,大家别选错了
esxi的算号可以用enterprise unlimited cpu的那个

扩展阅读