云计算虚拟化技术与应用
上QQ阅读APP看书,第一时间看更新

1.1 虚拟化技术概念

1.1.1 虚拟化技术概述

虚拟化技术(Virtualization)是伴随着计算机技术的产生而出现的,在计算机技术的发展历程中一直扮演着重要角色。从20世纪50年代虚拟化概念的提出,到20世纪60年代IBM公司在大型机上实现了虚拟化的商用,从操作系统的虚拟化到Java语言虚拟机,再到目前基于x86体系结构的服务器虚拟化技术的蓬勃发展,都为虚拟化这一看似抽象的概念添加了极其丰富的内涵。近年来随着服务器虚拟化技术的普及,出现了全新的IT基础架构部署和管理方式,为IT管理员带来了高效便捷的管理体验。同时,虚拟化技术还可以提高IT资源利用率,减少能源消耗。

1.1.2 虚拟化的定义

“虚拟化”是一个广泛而变化的概念,因此想要给出一个清晰准确的“虚拟化”定义并不是一件容易的事,目前业界对“虚拟化”已经产生了如下多种定义:

“虚拟化是表示计算机资源的抽象方法,通过虚拟化可以用与访问抽象前资源一致的方法访问抽象后的资源。这种资源的抽象方法并不受实现、地理位置或底层资源的物理配置的限制。”——Wikipedia,维基百科

“虚拟化是为某些事物创造的虚拟(相对于真实)版本,比如操作系统、计算机系统、存储设备和网络资源等。”——Whatis.com,信息技术术语库

“虚拟化是为一组类似资源提供一个通用的抽象接口集,从而隐藏属性和操作之间的差异,并允许通过一种通用的方式来查看并维护资源。”——Open Grid Services Architecture

尽管以上几种定义表述方式不尽相同,但仔细分析一下,不难发现它们都阐述了三层含义。

(1)虚拟化的对象是各种各样的资源。

(2)经过虚拟化后的逻辑资源对用户隐藏了不必要的细节。

(3)用户可以在虚拟环境中实现其在真实环境中的部分或者全部功能。

本书将援引IBM对虚拟化的定义,并基于该定义对虚拟化进行讨论。

“虚拟化是资源的逻辑表示,它不受物理限制的约束。”——IBM

在这个定义中,资源涵盖的范围很广,可以是各种硬件资源,如CPU、内存等;也可以是各种软件环境,如操作系统、文件系统、应用程序等。

虚拟化的主要目标是对包括基础设施、系统和软件等IT资源的表示、访问和管理进行简化,并为这些资源提供标准接口来接收输入和提供输出。虚拟化的使用者可以是最终用户、应用程序或者是服务。通过标准接口,虚拟化可以在IT基础设施发生变化时将对使用者的影响降到最低,最终用户可以重用原有接口,因为用户与虚拟资源进行交互的方式并没有发生改变,即使底层资源的实现方式已经发生改变,用户也不会受到影响。

虚拟化技术降低了资源使用者与资源具体实现之间的耦合程度,让使用者不再依赖于资源的某种特定实现。利用这种松耦合关系,系统管理员在对IT资源进行维护与升级时,可以降低对使用者的影响。