返回列表 回复 发帖

Hyper-V相比VMware在虚拟化架构上不同所带来的安全性超越

微软的虚拟化产品Hyper-V以前被称作Viridian和WSV,我在这里聊聊老生常谈的话题,也就是它的虚拟化架构。

首先,我们看看虚拟基础架构。为什么从基础架构开始呢?因为虚拟基础架构可以在计算、存储器和网络硬件以及在其上运行的软件之间提供了一个抽象层,简化了 IT 计算体系结构,可以控制成本,并提高响应速度。



Hyper-V


由于采用Hyperisor内核架构,Hyper-V可以提供高效的分区间通信机制,并在此基础上创建高性能的虚拟I/O架构,并且充分利用Windows驱动模型,以便提供广泛的硬件支持,因为Hypervisor可以把单个服务器分割为多个CPU和内存的容器。

目前,大多数潜在的子操作系统都还没有意识到虚拟化。它们以为是直接在服务器硬件上运行,因此需要使用hypervisor提供的硬件模拟。

呼,既然说到了Hyper-V,那我们也不得不提到VMware,如图,



VMware虚拟化层


VMware的ESX Server在每台物理机上加载一个“服务控制台”,来管理和操控Hypervisor的动作,解决了传统x86硬件管理中的ring转换问题,支持所有x86兼容OS,且系统无须更改设置。虽然这种通过软件模拟硬件服务的做法具有较大的灵活性,但代价是会导致较大幅度的性能损耗。


我们研究完基础架构,再一起来看看Hyper-V的体系结构吧:



Hyper-V 体系结构


运行Hyper-V的服务器可以利用Windows对硬件设备的支持,是因为管理程序可将系统分成多个VM,并将Windows Server 2008的引导实例当作主分区,以使其可直接访问各种硬件设备如网络适配器等等。

Hyper-V管理程序要求主分区执行电源管理并响应硬件即插即用事件。这种架构将业界标准服务器、与它们连接的网络和存储器聚合到统一的资源池中。


要知道,虚拟栈可以实现模拟的I/O设备,然而模拟这些设备的代价很高,发送单个I/O请求,就有可能导致虚拟栈和子分区之间的多次切换,那么Hyper-V如何解决的呢?看看下图:



Hyper-V和多处理器虚机


Hyper-V支持4 CPU的WinServer08虚机,和2 CPU的WinServer03虚机。只有当工作负载确实需要的时候,才应该使用多处理器虚机,因为拥有更多的处理器会带来一些额外的开销。

不过不用着急,Hyper-V提供了专门为虚机环境所设计的虚拟I/O设备。这些虚拟设备连接到VMBus,使用共享内存,可以有效地进行分区间通信。


继续~
Hyper-V中的虚拟I/O采用客户端/服务器架构,在根分区中包含VSP虚拟服务提供程序,在子分区中包含VSC虚拟服务客户端。如图所示:



Hyper-V中的I/O架构


该架构极大地减少发送I/O请求所需的开销。如果Virtual Server用户把虚机迁移到Hyper-V中, 那么一定能体会到高I/O的工作负载的CPU开销大大降低。


既然说了那么多内部的架构,我们也看一眼Hyper-V Server 2008的安装界面吧。



Hyper-V Server 2008安装


在安装上方面,和VMware ESX相比,Hyper-V Server 2008操作更加傻瓜化一点,界面上也更为熟悉一些。不难发现黑色窗体既不是POWERSHELL程序,也不完全是DOS模式,更类似CMD命令的工作模式,如果把蓝色窗口当成控制面板,那黑色窗口就是Hyper-V的工作区。

其实,Hyper-V自带的管理工具VMM可以在远程控制Hyper-V Server,也就是说安装好Hyper-V Server的服务器可以不再去管了。


都安完了,看一下Hyper-V 漂亮的管理界面吧?



Hyper-V界面管理


看起来很舒服吧,在这里我们可以对 Hyper-V进行管理,虽然看起来是全新的操作界面,但是实际操作起来还是非常顺手的。 迫不及待在 Hyper-V 上又安装了Server Core 版,性能非常好,感觉很快很舒适。

Hyper-V 的 Guest OS支持32位及64位的操作系统,并且支持Linux系统。另外,提示大家一点:Hyper-V Beta版可以安装非英文版的其他语言版本操作系统哦,不过前提是在安装 Hyper-V 系统时,请保持默认的语言和键盘区域配置。


在网上看到了,笔记本被扩充了8GB内存,似乎什么都可以做得到。手痒痒,所以试验一下,使用Server 2008操作系统和虚拟化成功运行了12个Windows Server 2008操作系统。可以参考下图示例哦:



成功运行了12个OS


嘿嘿,还是很厉害的,所以性能方面嗷嗷的~
据说,在同样的环境下使用VMware虚拟机最多只能同时运行8个操作系统,看来微软Hyper-V的内存分配是非常精确地。
其实,Hypervisor和Windows server 2008内核里加入创新设计,刻意防止出现自旋锁的长时间等待条件,即使存在了长时间等待条件,也刻意有效地加以检测并对其进行处理。
Hyper-V这样的虚拟化满重要的,故障切换设备以减少物理计算机的数量,这样我们就能够进行内营,同时还能够保持与使用外包模式相同或更好的成本结构,具有控制权,避免风险。
有大虾知道虚拟机架构的寄居架构是指什么吗?
寄居架构,也就是说虚拟化管理层是运行在主机操作系统之上,依靠主机操作系统来模拟硬件设备,以便在其上运行虚机,其优点是对物理硬件要求低,但是性能相对差。常见的例子有微软的Virtual PC/Virtual Server;VMware的VMware Workstation/VMware Server等。
使用Hyper-V的虚拟hypervisor架构,应用程序和服务可以调配到任何 x86 系统上,并在条件发生变化后可以轻松地在服务器间转移。
补充一下,在hyper-v上安装的虚拟机必须要符合虚拟机器允许安装的系统要求才能安装虚拟设备驱动,比如我手里只有win2003 sp1的盘,在hyper-v装好后,无网卡,选择安装虚拟机驱动后,尽然提示我必须要win2003 sp2才能装虚拟机驱动。那么可以想象在HYPER-V上面跑linux可能更没有驱动了,只能看装的linux能不能认出设备(只是猜想,没有是测试过).
还没有用过微软Hyper-V,一直再用VMware,不过我很期待着试一试。
微软指出,目前已有逾130个独立软件开发商的 150种应用程序取得在Windows Server 2008上执行的认证,其中,赛门铁克、Diskeeper及IBM率先取得针对Windows Server 2008 Hyper-V的认证,这代表这三家业者的应用程序经过符合Hyper-V能力的相关测试并能达到在虚拟环境中所要求的执行效能。
Hyper-V利用一整套集成的管理工具,提供了动态、可靠以及可伸缩的虚拟化平台,并以之管理物理和虚拟资源,从而允许您创建敏捷而动态的数据中心。用以支持服务器虚拟化的每个组件都集成在Windows Server 2008 Hyper-V功能中。
返回列表