服务器 频道

微软Hyper-V虚拟化实战体验(上)

  【IT168 专稿】听说Win2008 X64中内置了对Hyper-V的支持后,俺一直昼思夜想,恨不得立刻体验一把。无奈教务缠身,分身无术,只得眼睁睁地看着别的兄弟热火朝天地乐在其中,心里那叫一个羡慕!诸位,那Hyper-V为何如此重要,引得无数英雄竞相折腰?这中间是有说道的。大家知道虚拟化可以打破硬件,软件,操作系统之间的固有壁垒,将软件封装为服务,对厂商,企业,管理员和用户都有莫大的裨益。而Hyper-V就属于虚拟化技术中的服务器虚拟化,而且还采用了裸金属架构,什么?不明白什么叫裸金属,不不,它和摇滚的重金属可没什么关系….

  待俺来解释一下。虚拟机常用的架构有两种,一种叫寄居架构,也就是说虚拟化管理层是运行在主机操作系统之上,依靠主机操作系统来模拟硬件设备,以便在其上运行虚机。其优点是对物理硬件要求低,但是性能却和物理主机相去甚远,因此无法用于高负荷的生产环境。常见的例子有微软的Virtual PC/Virtual Server,VMware的VMware Workstation/VMware Server等。

  另一种叫作裸金属架构,直接在硬件上跑虚拟化管理层,其优点是性能比较好。裸金属架构的虚拟化管理层,一般叫做Hypervisor或者VMM(Virtual Machine Monitor),具体又分为两种形式:

  1. 胖管理层

  以VMware ESX Server为代表。由于VMware把底层物理硬件的驱动程序整合到Hypervisor管理层中,所以管理层显得比较胖。很显然,这种架构的性能比较好,但是对于底层物理硬件的要求比较高,兼容性和安全性的挑战比较高。

  2. 瘦管理层

  以微软的Hyper-V为代表,Hypervisor管理层仅用于管理CPU和内存,而不包含底层物理硬件的驱动程序,所以管理层显得比较瘦。由于不包含硬件驱动,所以代码量比较小,Hyper-V仅有300多K,因此安全性和兼容性要更好一些,但是效率和胖管理层相比有所不如。

  寄居架构和裸金属架构如下图所示(图1)

  现在我们来总结一下,Hyper-V属于裸金属架构,虚拟机和硬件之间只隔了300多K的薄薄一层,因此性能肯定比VPC之类的产品强了不少;虽然绝对性能不如VMWware的ESX,但牺牲部分性能换来的安全性和高度兼容性却是EXS所不及的,因此可以认为Hyper-V在性能和安全方面进行了达到了较好的平衡(当然还需要实践检验)。呵呵,现在你明白为什么Hyper-V很受关注了。

  体验Hyper-V不是一件简单的事。俺还是沿袭老传统,先在网上查询资料,看看微软的白皮书,学学各位高手的教程,尤其是从盆盆老师处学到了很多只是,受益匪浅,在此谢过!一通学下来,大致搞清楚了架构,流程,迫不及待准备动手了。哗哗,大幕徐徐拉开,演出开始了!

 

  一 硬件准备

  Hyper-V对硬件有如下要求,如果不能满足,就不用向下进行了。

  1  CPU必须支持硬件虚拟化,例如Intel VT技术或者AMD -V技术。

  2  CPU必须支持X64位技术。

  3  CPU必须支持硬件DEP技术

  俺的机器配置为AMD X64 3600×2,梅捷690G-GR主板,2G内存,250G硬盘。从理论上来看,CPU应该刚好可以满足Hyper-V的需求。用测试工具EVEREST来检测一下,测试结果如下图所示,CPU支持X64和DEP。(图2)

  再看一张测试图,俺的CPU也支持AMD-V技术(如果是Intel的CPU,应该查看是否支持Virtual Machine Extensions)。(图3)

  如果觉得Everest测试起来比较麻烦,也可以去AMD的官方网站下载专用的AMD Hyper-V检测工具,只要运行一下就知道结果了,下图是运行结果,测试表明俺用的系统和Hyper-V兼容!(图4)

  但大家要注意,俺在32位的Win2003下测试,结果显示如上图;但如果换成在64位的Win2008下测试却显示和Hyper-V不兼容,估计是软件的Bug,不用在意。

  现在用两个工具测试CPU都没问题,是不是就可以高枕无忧了?不是,因为你的CPU支持Hyper-V,不代表你的主板打开了虚拟化选项,而且一般PC主板并没有在Bios中为用户提供调节开关。这且如何是好?只好去主板厂商的官网看看有无新版的Bios提供下载,哈哈,不但有,而且不止一个,看看这个版本的Bios是怎么描述的,如下图所示,此版本的Bios已经将虚拟化开关的默认值从关闭改为打开。(图5)

  不用多说了,赶紧下载,升级。升级Bios时需要Dos的实模式环境,不能在32位系统的保护模式下进行。由于现在早已不用软驱,所以俺一般是做一个可以引导的U盘,从U盘启动Dos进行升级。如果你没做过能引导的U盘,那就找张CD-RW,刻张可以引导的光盘,从光盘启动Dos,升级后将CD-RW内容抹去即可。

  为了给Hyper-V提供一个较好的硬件环境,俺又忍痛排出一千纹银,购得2G内存和一块500G的企业级硬盘(稳定第一)。呵呵,除了CPU弱点,其他都没问题了。

 

  二 安装Win2008 X64

  目前Hyper-V只有Win2008的X64版本支持,因此我们需要先在计算机上安装Win2008 X64企业版。Win2008 X64有两个版本,一个支持Hyper-V,一个不支持Hyper-V,大家安装前要注意。安装过程不再描述,安装后计算机信息如下图所示。(图6)

  三 安装Hyper-V角色

  在Win2008中启动服务器管理器,选择添加角色,在角色中选择Hyper-V,如下图所示。(图7)

  Win2008提示安装Hyper-V角色之前要确保计算机的Bios支持虚拟化。(图8)

  为Hyper-V虚拟机选择虚拟网络,我设置和物理网卡相连,虚拟网络设置可以在安装Hyper-V之后进行设置。(图9)

  提示安装Hyper-V后需要重启计算机。(图10)

  哈哈,安装角色成功,看样子大功告成了。很多兄弟由于Bios问题,不能通过这一步,俺其实也有点高兴得太早。(图11)

  安装完成,重启计算机。(图12)

  四 配置Hyper-V

  重启计算机后,赶紧怀着激动的心情,用颤抖的手启动管理工具中的Hyper-V Manager。Hyper-V,我来了!哎呀,怎么没有创建虚拟机的选项呢?重新运行一次,还是没有!赶紧看看事件查看器,坏了,VMMS服务没有启动!VMMS是负责管理虚拟机的服务,它挂了那肯定没戏了。难道真是硬件有问题吗?俺要和Hyper-V说Bye了。心有不甘,去网上搜搜,看能不能挽救回来。你还别说,还真被俺找到了,原来Win2008 X64中自带的Hyper-V是RC0版本,支持的语言是英文,可俺的Win2008是中文版的,这就是问题所在。

  知道问题出在哪儿,解决起来就简单了。两种解决办法:

  A  修改注册表,打开Regedit,定位到HKEY_USERS\S-1-5-18\Control panel\International,将Locale的键值从00000804(中国)改为00000409(美国)。(图13)

  B 建议还是下载一个补丁KB949219,http://www.microsoft.com/downloads /details.aspx?FamilyId=DDD94DDA-9D31-4E6D-88A0-1939DE3E9898,安装之后问题解决。

  终于能启动Hyper-V管理器了,可是在创建虚拟机时还是会有问题,莫名其妙地蓝屏,唉,真是命苦哇!苍天啊,大地啊,毛主席啊,快救救我吧….

  忽然,俺想到了自带的Hyper-V版本是RC0,现在好象已经有RC1了…..去网上一查,果然如此,TNND,该死的微软没把Hyper-V RC1放进去。赶紧去下载 Kb950049,http://www.microsoft.com/downloads/details.aspx?FamilyId=7EDAA89F-9F64-488D-93C0-858D2D8799DF,把Hyper-V从RC0升级为RC1。至此,Hyper-V的部署算是走上了正轨。

  鲜血换来的教训,安装完Hyper-V角色后一定要安装KB949219和KB950049,切记!

  下篇文章会介绍如何在Hyper-V上安装虚拟机,敬请期待。

 

0
相关文章