Windows Server 2008中的虚拟化技术探析

2019-03-08 03:16杨浩源
西部论丛 2019年7期
关键词:虚拟化服务器

摘 要:介绍了在WindowsServer2008中的虚拟化技术Hyper-V的主要功能和核心特性,并简单介绍了Hyper-V对虚拟化技术发展的重要意义。

关键词:虚拟化 Hyper-V 服务器

1 Hyper-V介绍

Hyper-V是微软最新推出的一种服务器虚拟化解决方案,Hyper-V中内嵌了在线迁移、HA(高稳定性)等高级特性。

1.1Hyper-V的架构

Hyper-V是一个位于硬件和操作系统之间的软件层,可以用于对Windows和非Windows操作系统进行虚拟化。Hyper-V基于虚拟机管理器的虚拟化平台,整合了操作系统,允许动态地添加物理和虚拟资源。Hyper-V采用微内核的架构,兼顾了安全性和性能的要求。Hyper-V底层的Hypervisor运行在最局的特权级别下,微软将其称为root mode),而虚拟机的OS内核和驱动运行在ring 0,应用程序运行在ring 3下,这种架构就不需要采用复杂的BT(二进制特权指令翻译)技术。另外,Hyper-V底层的Hypervisor代码量很小,不包含任何第三方的驱动,非常精简,所以安全性更高。Hyper-V采用基于VMbus(—种新的虚拟化I/O结构)的高速内存总线架构,来自虚拟机的硬件请求(显卡、鼠标、磁盘、网络),可以直接经过虚拟服务客户端(Virtual Service Client,简称VSC),通过VMbus总线发送到父分区的虚拟服务提供程序(Virtual Service Provider,简称VSP),VSP调用对应的设备驱动,直接訪问硬件。

在Windows虚拟化架构中,每一个子分区中都可以拥有一个自己的操作系统,它们可以是32位或64位的WindowsServer2003、WindowsServer2008甚至可以是Linux。而VSP必须运行包含了Hyper-V技术的WindowsServer2008版本(OS64Bit)。父分区包含一个虚拟栈,提供了用于管理和自动化操作的组件。这个父分区就是宿主系统(Host OS),在全新的Windows虚拟化架构中它也被包含在分区之中。

1.2Hyper-V的核心特性

作为新一代的管理程序虚拟化平台,Hyper-V拥有众多独有的优异功能,其新特性主要表现在以下几个方面。

1.2.1改善系统架构

在微软Hyper-V架构中,Hypervisor层直接运行于物理服务器硬件之上。Hyper-V采用基于VMbus的高速内存总线架构,所有的虚拟分区都通过Hypervisor与硬件通信。Hyper-V通过VMbus总线可以提供高效的分区间通信机制,并在此基础上创建高性能的虚拟I/O架构,并且充分利用Windows驱动模型,提供广泛的硬件支持。

这种新的架构带来了以下几方面的好处:①由于虚拟机能够通过Hypervisor与硬件通信,减少了发送I/O请求所需要的开销,极大的提高了虚拟机的性能;②通过使用新的虚拟服务供应程序/虚拟服务客户端(VSP/VSC)架构,Hyper-V增强了核心资源的访问和使用,例如磁盘、网络以及视频;③新的虚拟交换功能和新的硬件共享体系结构以实现对服务器更好的管理,使服务器工作效率更高;④因为不需要安装第三方软件或驱动产品,兼容性和稳定性得到极大的提高,同时可以为虚拟机提供新硬件的支持。

1.2.2对称多处理器(SMP)支持

Hyper-V支持4CPU的WindowsServer2008虚拟机,和2CPU的WindowsServer2003虚拟机。这个特性使得虚拟化技术不仅可以用于类似于邮件服务器和文件服务器等不需要消耗大量的处理器资源的服务器,还可以用于数据库服务器等需要消耗大量的处理器资源的服务器进行虚拟化。通常,多处理器操作系统内核和驱动会采用自旋锁(Spin Lock,类似于互斥锁,但是保持时间更短)的机制(其原理如图2所示),传统的虚拟处理器是按照时间片进行调度的。如果在保持自旋锁的时候竞争虚拟处理器,则其他虚拟处理器就要自旋很长时间,导致CPU循环的浪费,降低了虚拟机的性能。Windows Server 2008内核以及Hyper-V Hypervisor中设计者加入了一个创新设计,尽可能防止出现自旋锁的长时间等待条件,如果确实存在长时间等待条件,也会有效地加以检测并对其进行处理。这个方法叫做自旋锁启发方法,未实现自旋锁启发方法的虚拟机作系统将停在一个紧凑循环上旋转以等待其他虚拟处理器释放自旋锁,通常这个旋转可能会阻塞其中一个硬件CPU,从而降低了虚拟化性能。而在自旋锁启发式操作系统中,自旋锁代码会在将要发生旋转时通过Hypercall API通知Hypervisor管理程序,这样Hypervisor管理程序就可以立即调度执行另一个虚拟处理器并降低不必要的CPU使用。Hyper-V还还在调度程序和内存虚拟化逻辑上进行了优化以使它们在大多数临界区中都不会被锁定,从而确保多处理器系统能够获得很好的延展性。

2 结束语

使用Hyper-V虚拟化平台可以通过增加硬件的利用率降低运行和维护物理服务器的成本。可以减少运行服务器工作负载所需的硬件数量。通过减少设置硬件和软件以及再现测试环境所需的时间提高开发和测试效率。提高服务器可用性,而无需使用物理计算机。增加或减少服务器资源以响应所需的更改。

除Hyper-V自身的优点之外,随着以Intel和AMD为代表的越来越多的硬件和软件厂商在推出的新产品中加入对虚拟化技术的支持,将大大地加快虚拟化技术被广大用户接受的进程,势必会进_步推动以Hyper-V为代表的虚拟化技术被广泛地应用到各个领域。

参考文献

[1] Erik Giesa.虚拟化的优势[J].世界电信,2007(1).

[2] Michael Otey.Windows Server 2008 Hyper-V一瞥[J].Windows IT PRO Magazine(国际中文版),2008(6).

[3] Intel Corporation 2008.系统虚拟化——原理与实现[M].北京:清华大学出版社,2009.

[4] 金海.计算系统虚拟化————原理与应用[M].北京:清华大学出版社,2008.

作者简介:杨浩源,专业:信息与计算科学,学校:湖南人文科技学院。

猜你喜欢
虚拟化服务器
2018年Q4中国x86服务器市场规模大幅增长
2018年全球服务器市场将保持温和增长
DNS权威服务器选择方式研究
浅谈虚拟化工作原理
用户怎样选择虚拟化解决方案
别再误会客户端虚拟化了
虚拟化整合之势凸显
虚拟化技术:绿色IT的希望
经济危机使虚拟化受青睐
用独立服务器的站长注意了