专家探讨微软Hyper-V的虚拟化架构
2008-07-21 02:20:32 来源:WEB开发网核心提示:虚拟化的技术进步已是一个老生常谈的话题了,在不远的将来会有何进展也是一个值得我们弄清楚的问题,专家探讨微软Hyper-V的虚拟化架构,微软发布的虚拟化产品Hyper-V——以前被称作Viridian和WSV(Windows Server Virtualization),提供了一个全新的虚拟化架构,随着时间推移,更多的操
虚拟化的技术进步已是一个老生常谈的话题了,在不远的将来会有何进展也是一个值得我们弄清楚的问题。微软发布的虚拟化产品Hyper-V——以前被称作Viridian和WSV(Windows Server Virtualization),提供了一个全新的虚拟化架构,并将作为Windows Server 2008平台的组件发布。
尽管Hyper-V的终极版本还有一段时间才发布,但这项技术的预览版本已经可以获得。TechTarget中国的特约虚拟化专家Anil Desai将描述Hyper-V这种技术架构并解释它对IT组织来说意味着什么。文中将不会深入探讨最近发布的Microsoft Hyper-V Server(这是唯一一款基于hypervisor的服务器虚拟产品),因为这款产品目前还无法获得。
Hyper-V的hypervisor架构
在微软Hyper-V模型中,hypervisor层直接运行于物理服务器硬件之上。所有的虚拟分区都通过hypervisor与硬件通信,其中的hypervisor是一个很小、效率很高的代码集,负责协调这些调用。
Microsoft Hyper-V架构概况
图中每一个分区都代表一台虚拟机。父分区必须运行Windows Server 2008,它包含了一个虚拟堆(virtualization stack)。这个堆包含了管理工具和自动操作组件,如WMI(Windows管理规范)界面。每个子分区可以有自己的子操作系统。请注意,所有的操作系统都在分区中运行,包括可能被认为是主操作系统的父分区操作系统。
到目前为止,这很可能看起来非常简单。然而,它与现行的虚拟化方法也有一些很重要的架构差别。
依靠VMBus
Hypre-V包含一个极小的微核结构,这个微核结构可以让多个分区访问同一个物理硬盘资源。保持hypervisor微小有助于减少安全性攻击面积,也有助于保持效率。子分区需要与父分区进行通信以便管理。这可以通过使用逻辑点对点的VMBus完成。员工处理每个子分区的服务管理操作和请求,如启动或监控虚拟机。VMBus使用共享存储器在同一主机服务器上与虚拟机进行安全通信。
驱动差别
处理虚拟机一个很烦人的部分是硬件驱动的问题。在大多数情况下,你都是受到虚拟硬盘层的限制,这是由你的虚拟化平台所暴露出来的问题。由于兼容性的缘故,大部分虚拟化解决方案都模拟硬件环境。如果是在二十世纪九十年代中期,模拟硬件环境一定会很流行,但是与现代服务器相比,它就跟TRS-80差不多了。这就意味着你有两个依赖:
(1)物理硬件必须支持虚拟模拟层;
(2)子操作系统必须有模拟硬件驱动。通常,你会有支持物理硬件的必要驱动,却没有虚拟硬件的驱动。
Hyper-V方法与其它基于hypervisor产品(如VMware ESX Server平台)的最大差异在于驱动器的工作方式不同。在Hyper-V中,驱动器是安装在子操作系统中的,而不是在hypervisor层。这样,厂商和管理员就可以使用为服务器物理硬件设计的驱动,而不是虚拟硬件的驱动器。
启蒙:子操作系统类型
目前,大多数潜在的子操作系统都还没有意识到虚拟化。它们以为是直接在服务器硬件上运行,因此需要使用hypervisor提供的硬件模拟。每个支持“无hypervisor意识操作系统”的分区都使用Hyper-V的模拟层。这对遗留的操作系统同样适用。
为了充分利用Hyper-V架构,子操作系统可以使用“enlightenments(启蒙)”(微软目前是这样称呼的)。一个被启蒙过的子操作系统会记住虚拟化,从而可以和hypervisor进行有效的通信。被启蒙过的子机运行自己的驱动,其驱动可以与服务器的物理硬件进行通信。例如,一个与磁盘有关的调用可以直接连接到底层使用SCSI连接的直属存储阵列。IHVs和OEMs可以创建它们自己的操作系统驱动。
那么,哪个操作系统可以考虑启蒙呢?尽管官方详细资料还没有发布,但Windows Server 2008绝对是可行的。Windows Server 2003和Windows Vista更新后可能也可以被启蒙。Microsoft公司也已经和Citrix XenServer(以前叫XenSource)合作,让基于Linux的发布也可以获得新的Hyper-V驱动。随着时间推移,更多的操作系统将会支持这些enlightenment,让性能、安全性和兼容性都能得到提升。
尽管Hyper-V的终极版本还有一段时间才发布,但这项技术的预览版本已经可以获得。TechTarget中国的特约虚拟化专家Anil Desai将描述Hyper-V这种技术架构并解释它对IT组织来说意味着什么。文中将不会深入探讨最近发布的Microsoft Hyper-V Server(这是唯一一款基于hypervisor的服务器虚拟产品),因为这款产品目前还无法获得。
Hyper-V的hypervisor架构
在微软Hyper-V模型中,hypervisor层直接运行于物理服务器硬件之上。所有的虚拟分区都通过hypervisor与硬件通信,其中的hypervisor是一个很小、效率很高的代码集,负责协调这些调用。
Microsoft Hyper-V架构概况
图中每一个分区都代表一台虚拟机。父分区必须运行Windows Server 2008,它包含了一个虚拟堆(virtualization stack)。这个堆包含了管理工具和自动操作组件,如WMI(Windows管理规范)界面。每个子分区可以有自己的子操作系统。请注意,所有的操作系统都在分区中运行,包括可能被认为是主操作系统的父分区操作系统。
到目前为止,这很可能看起来非常简单。然而,它与现行的虚拟化方法也有一些很重要的架构差别。
依靠VMBus
Hypre-V包含一个极小的微核结构,这个微核结构可以让多个分区访问同一个物理硬盘资源。保持hypervisor微小有助于减少安全性攻击面积,也有助于保持效率。子分区需要与父分区进行通信以便管理。这可以通过使用逻辑点对点的VMBus完成。员工处理每个子分区的服务管理操作和请求,如启动或监控虚拟机。VMBus使用共享存储器在同一主机服务器上与虚拟机进行安全通信。
驱动差别
处理虚拟机一个很烦人的部分是硬件驱动的问题。在大多数情况下,你都是受到虚拟硬盘层的限制,这是由你的虚拟化平台所暴露出来的问题。由于兼容性的缘故,大部分虚拟化解决方案都模拟硬件环境。如果是在二十世纪九十年代中期,模拟硬件环境一定会很流行,但是与现代服务器相比,它就跟TRS-80差不多了。这就意味着你有两个依赖:
(1)物理硬件必须支持虚拟模拟层;
(2)子操作系统必须有模拟硬件驱动。通常,你会有支持物理硬件的必要驱动,却没有虚拟硬件的驱动。
Hyper-V方法与其它基于hypervisor产品(如VMware ESX Server平台)的最大差异在于驱动器的工作方式不同。在Hyper-V中,驱动器是安装在子操作系统中的,而不是在hypervisor层。这样,厂商和管理员就可以使用为服务器物理硬件设计的驱动,而不是虚拟硬件的驱动器。
启蒙:子操作系统类型
目前,大多数潜在的子操作系统都还没有意识到虚拟化。它们以为是直接在服务器硬件上运行,因此需要使用hypervisor提供的硬件模拟。每个支持“无hypervisor意识操作系统”的分区都使用Hyper-V的模拟层。这对遗留的操作系统同样适用。
为了充分利用Hyper-V架构,子操作系统可以使用“enlightenments(启蒙)”(微软目前是这样称呼的)。一个被启蒙过的子操作系统会记住虚拟化,从而可以和hypervisor进行有效的通信。被启蒙过的子机运行自己的驱动,其驱动可以与服务器的物理硬件进行通信。例如,一个与磁盘有关的调用可以直接连接到底层使用SCSI连接的直属存储阵列。IHVs和OEMs可以创建它们自己的操作系统驱动。
那么,哪个操作系统可以考虑启蒙呢?尽管官方详细资料还没有发布,但Windows Server 2008绝对是可行的。Windows Server 2003和Windows Vista更新后可能也可以被启蒙。Microsoft公司也已经和Citrix XenServer(以前叫XenSource)合作,让基于Linux的发布也可以获得新的Hyper-V驱动。随着时间推移,更多的操作系统将会支持这些enlightenment,让性能、安全性和兼容性都能得到提升。
[]
- ››微软关于Windows 7 SP1安装的建议
- ››微软应延长Windows XP寿命的10大理由
- ››微软也为谷歌的Android系统制作应用程序
- ››微软发布超级计算机版Excel测试版本
- ››探讨防火墙内核监听模式:ISA2006系列之十六
- ››微软推出Windows 7自动升级程序
- ››微软证实不会在欧洲市场发布Win7无浏览器版
- ››微软将允许PowerPoint和Excel文件嵌入网页
- ››微软发8月补丁修9大漏洞 DLL劫持漏洞未修复
- ››微软称:Android 隐形成本巨大
- ››微软高管称不会阻止在Android上使用.Net
- ››微软教你如何在Windows 7中与IE6应用程序相处
更多精彩
赞助商链接