下列服务器虚拟化产品属于寄居架构,云计算中服务器虚拟化技术探讨(下)

a)软件辅助的完全虚拟化。在x86虚拟化早期,由于x86体系没有在硬件层次上对虚拟化提供支持,因此许多商业的虚拟化产品都采用了基于软件辅助的完全虚拟化技术,例如Vmware ESX Server,VMwareWorkstation和Microsoft Virtual Serve:系PlJ产品。为了正确处理不能直接捕获的虚拟机特权指令,完全虚拟化引入了动态指令转换,通过在运行时动态执行指令扫描以发现特权指令,然后依据VMM状态执行指令的二进制转换,使得特权指令的执行跳转到等价模拟代码段处,从而实现与自陷相同的目标。基于软件辅助虽然能够实现完全虚拟化,但由于所有指令都要经过VMM进行处理,这种虚拟化的性能受动态指令转换引擎设计和实现的影响比较大。

b)硬件辅助的完全虚拟化。硬件辅助虚拟化是通过修改x86 CPU指令的语义,使其直接支持虚拟化。这一工作必须在CPU中进行,也就是Intel-VT技术和AMD-V技术。通过引人新的处理器操作来支持虚拟化,使得虚拟机的各种特权指令能够被CPU所截获,并通过异常报告给VMM,这样就解决了虚拟化的问题。硬件辅助虚拟化是一种完备的虚拟化方法,部分虚拟化软件产品,例如Microsoft的Hyper-V目前必须借助于CPU硬件辅助才能实现虚拟化。

完全虚拟化是处理器密集型技术,因为它要求hypervisor管理各个虚拟服务器,并让它们彼此独立。减轻这种负担的一种方法就是,改动客户操作系统,让它以为自己运行在虚拟环境下,能够与hypervisor协同工作。这种方法就叫半虚拟化。

与完全虚拟化技术不同,半虚拟化技术通过修改操作系统代码使特权指令产生自陷。半虚拟化技术最初由Denali和Xen项目在x86体系架构上实现。通过对客户操作系统的内核进行适当的修改,使其能够在VMM的管理下尽可能地直接访问本地硬件平台。半虚拟化技术降低了由于虚拟化而引入的系统性能损失。半虚拟化技术的主要实现思路是:对于内存分段管理的虚拟化,要求客户操作系统对硬件分段描述符的更新由VMM进行验证,这也就要求客户操作系统不能有高于VMM的特权级别和不允许访问VMM保留地址空间;对于内存分页管理的虚拟化,要求客户操作系统可以直接读取硬件页表,但对页表的更新需要VMM进行验证和处理,VMM支持客户虚拟系统可以分布在不连续的物理内存上;对于客户虚拟系统,其只能运行在低于VMM的特权级别上;客户虚拟系统需要注册一个异常处理函数的描述符表,直接支持VMM的虚拟化;客户虚拟系统的硬件中断机制被VMM中的Event处理机制代替;每个客户虚拟系统都有自己的时钟接口,并且可以了解真实的时间和虚拟的时间;客户虚拟系统通过异步I/O的内存区域和外部设备(网络、硬盘)来传递数据,采用事件处理机制代替硬件中断通知机制。

准虚拟化技术的优点是性能高。经过准虚拟化处理的服务器可与hypervisor协同工作,其响应能力几乎不亚于未经过虚拟化处理的服务器。

3.2.2 Type II:寄居架构

Type II虚拟化架构(见图2中软件层虚拟化部分)中,VMM安装在已有的主机操作系统(宿主操作系统)之上,通过宿主操作系统来管理和访问各类资源(如文件和各类vo设备等)。这类虚拟化架构系统损耗比较大。

就操作系统层的虚拟化而言,没有独立的hypervisor层。主机操作系统负责在多个虚拟服务器之间分配硬件资源,并且让这些服务器彼此独立。一个明显的区别是,如果使用操作系统层虚拟化,所有虚拟服务器必须运行同一操作系统(不过每个实例有各自的应用程序和用户账户)。

虽然操作系统层虚拟化的灵活性比较差,但本机速度性能比较高。此外,由于架构在所有虚拟服务器上使用单一、标准的操作系统,管理起来比异构环境要容易。

上述各种虚拟化方法都有各自的优点,总体来说,裸金属架构下的半虚拟化技术的优点得到了验证,也是目前各厂家重点发展的技术。

4 虚拟化技术应具备的功能要点

服务器虚拟化解决方案在不同的场景实现的功能各不相同,在云计算中虚拟化技术应具备以下功能。

a)服务器“一变多”。支持在一台物理服务器中创建多个相互独立的虚拟服务器,每个虚拟服务器各自拥有计算、存储和网络等资源,运行各自的操作系统和应用。

b)设备资源抽象化。支持通过虚拟化软件功能,将物理服务器中的CPU、内存、IO等资源进行抽象化,将原先与具体物理服务器和物理设备绑定的资源转化为可以统一分配和管理的一组逻辑资源。通过资源抽象,服务器资源不再与具体物理设备以及上层应用绑定,能够灵活分配,被不同虚拟服务器共享。

c)32位/64位支持。为了使虚拟服务器能够充分满足企业现有IT系统的应用需求,同时提供较强的扩展能力,虚拟化产品应支持在旧有32位物理服务器上运行32位虚拟服务器,以及在新的64位物理服务器上运行32位或64位虚拟服务器的能力。

d)支持多种操作系统。物理服务器所支持的各种操作系统类型及版本,在对该物理服务器进行虚拟化后,也能够在创建的虚拟服务器中安装并正常运行。

e)兼容服务器和存储设备。服务器虚拟化产品需具备广泛的物理服务器硬件设备兼容性,服务器虚拟化产品必须支持市场上主流设备厂商提供的服务器。虚拟化产品功能的实现,不得依赖于特殊的服务器硬件设备。

f)虚拟服务器的创建。创建过程需提供用户交互方式,引导用户设定虚拟服务器名称、资源类型和数量、操作系统类型、网络设置等配置参数。支持通过第三方工具或者编写脚本等方式,实现虚拟服务器及其操作系统和应用的自动化安装和配置,并支持远程操作。

g)虚拟服务器的模板和复制。为了实现虚拟服务器的快速部署,服务器虚拟化产品需提供通过模板的方式克隆已有虚拟服务器的能力。

h)支持P2V转换。PZV是指将物理服务器连同上面安装的操作系统和应用转换为虚拟服务器,常用于将已有应用系统由物理服务器平台迁移到虚拟服务器平台。在创建虚拟服务器时,应支持通过P2V方式实现虚拟服务器的快速部署。

i)虚拟网络支持。虚拟服务器须提供对网卡和交换机等网络设备的虚拟化支持,虚拟网卡和虚拟交换机通过物理网络设备接人物理网络。为了提高通信效率,减少对物理网络设备的压力,虚拟服务器之间的通信可配置为通过虚拟网卡以及虚拟交换机的方式进行,无须通过物理网卡。

参与评论 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:游动-白 设计师:我叫白小胖 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值