浅谈虚拟化技术的含义及分类

Abner kou原创,转载请注明出处

 

如今虚拟化已经成为IT界炙手可热的话题之一,面对虚拟化市场这块大蛋糕,各厂商你争我夺,纷纷标榜自己的独到优势,一时间在虚拟化领域出现百家争鸣的态势,对于初涉虚拟化的朋友可能会有些迷惑,到底那一家的技术更有优势?到底那一家的产品符合我的需求?本文力争能给这些朋友一点启发,希望能够拨开虚拟之云,重现真实之本。

 

一、虚拟化的概念

 

虚拟化的广义与狭义的理解

广义——将不存在的食物或现象“虚拟”成为存在的事物或现象的方法,计算机科学中的虚拟化包括平台虚拟化、应用程序虚拟化、存储虚拟化、网络虚拟化、设备虚拟化等。

狭义——指在计算机上模拟运行多个操作系统平台。

目前对于虚拟化-Virtualization并没有统一的标准定义,但大多数定义都包含这样几个方面,

 

1、虚拟的内容是资源(包括CPU、内存、存储、网络等);

2、被虚拟的物理资源有着统一的逻辑表示,而且这种逻辑表示提供给用户大部分相同或完全相同的物理资源的功能;

3、经过一系列的虚拟化过程,使得资源不受物理限制约束,由此可以带给我们与传统IT相比更多的优势——资源整合、提高资源利用率、动态IT等;

我个人的理解虚拟化既是对资源的逻辑抽象、隔离、再分配、管理的一个过程。所有虚拟化厂商所宣传的各种功能特色,都可以归结为逻辑抽象、隔离、再分配、管理这四个过程中,刚接触虚拟化的朋友只要记住一点,虚拟化技术确实有很多优势,我们需要做的就是取其所长补己之短。

 

二、虚拟化技术分类

1、按应用分类

A、操作系统虚拟化——VmwarevSphereworkstation;微软的Windows Server with Hyper-vVirtual PCIBMPower VMzVMCitrixXen

B、应用程序虚拟化——微软的APP-VCitrixXen APP

C、桌面虚拟化——微软的MED-VVDICitrixXen DesktopVmware Vmware viewIBMVirtual Infrastructure Access

 

D、存储虚拟化、网络虚拟化等

 

 

2、按照应用模式分类

A、一对多:其中将一个物理服务器划分为多个虚拟服务器。这是典型的服务器整合模式。

B、多对一:其中整合了多个虚拟服务器,并将它们作为一个资源池。这是典型的网格计算模式。

C:多对多:将前两种模式结合在一起。

 

3、按硬件资源调用模式分类

A、全虚拟化——虚拟操作系统与底层硬件完全隔离,由中间的Hypervisor层转化虚拟客户操作系统对底层硬件的调用代码,全虚拟化无需更改客户端操作系统,兼容性好。典型代表是VMare WorkStationESX Server早期版本、Microsoft Vitrual Server

B、半虚拟化——在虚拟客户操作系统中加入特定的虚拟化指令,通过这些指令可以直接通过Hypervisor层调用硬件资源,免除有hypervisor层转换指令的性能开销。半虚拟化的典型代表Microsoft Hyper-VVmwarevSphere

C、硬件辅助虚拟化——在CPU中加入了新的指令集和处理器运行模式,完成虚拟操作系统对硬件资源的直接调用。典型技术是Intel VTAMD-V

 

 

4、按运行平台分类

AX86平台——由于X86体系结构服务器的蓬勃发展,基于X86体系的虚拟化技术也有了很大的进步,目前比较流行的基于X86体系的虚拟厂商有VMware MicrosoftCitrix、IBM System x系列服务器

B、非X86平台——非X86平台的虚拟化鼻祖是IBM公司,早在20世纪60年代,IBM就在大型机上实现了虚拟化的商用,目前IBM的虚拟化技术包括大型机的System z系列服务器,中小企业应用的System p系列服务器;HP 的虚拟服务器环境(virtual Server EnvironmentVSE)以及虚拟 vParnPartition Integrity 虚拟机(IVM);Sun的SPARC平台的xVM等,这些都是非X86平台虚拟化的重要力量。

 

本文大概介绍了虚拟化技术的概念及分类,下一篇文章则会重点介绍X86平台与非X86平台的虚拟化技术分析,敬请关注!