本文将介绍虚拟化的发展历程、云计算时代的虚拟化技术、服务器虚拟化、应用程序虚拟化以及SystemCenter对虚拟化的管理。
虚拟化发展历程:
虚拟化的概念在20世纪60年代首次出现,利用它可以对属于稀有而昂贵资源的大型机硬件进行分区。随着时间的推移,微型计算机和PC可提供更有效、更经济的方法来分配处理能力,因此到20世纪80年代,虚拟技术已不再广泛使用。
但是到了20世纪90年代,研究人员开始探索如何利用虚拟化解决与廉价硬件激增相关的一些问题,例如,利用率不足、管理成本不断攀升和易受攻击等。现在,虚拟化技术处于时代前沿,可以帮助企业升级和管理他们在世界各地的IT基础架构并确保其安全。虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。
云计算的平台包括三类服务:软件基础实施即服务IaaS、平台即服务PaaS、软件即服务SaaS,而这三类服务的基础则是虚拟化平台,其关系结构如下图1所示:
毫无疑问,虚拟化正在重组IT工业,同时它也正在支撑起云计算,如果把云计算单纯理解虚拟化,其实也并为过,因为没有虚拟化的云计算,是不可能实现按需计算的目标的。
虚拟化技术
虚拟化是资源的逻辑表示,这种表示不受物理限制的约束,它的主要目标是对包括基础设施、系统和软件等IT资源的表示、访问、配置和管理进行简化,并为这些资源提供标准的接口来接收输入和提供输出。
虚拟化技术包括两个层面,其一是硬件层面的虚拟化,其二是软件层面的虚拟化。实际上,我们通常所说的虚拟化是指服务器虚拟化技术,除此之外,在应用层、表示层、桌面、存储和网络都可以做全方位的虚拟化,虚拟化的类型可以用下图2来表示:
虚拟化的类型
(1)网络虚拟化
网络虚拟化通常包括虚拟局域网和虚拟专用网。虚拟局域网是其典型的代表,它可以将一个物理局域网划分成多个虚拟局域网,或者将多个物理局域网中的节点划分到一个虚拟局域网中,这样提供一个灵活便捷的网络管理环境,使得大型网络更加易于管理,可以通过集中配置不同位置的物理设备来实现网络的最优化。
虚拟专用网帮助管理员维护IT环境,防止来自内网或者外网中的威胁,使用户能够快速、安全地访问应用程序和数据。目前虚拟专用网在大量的办公环境中使用。
(2)存储虚拟化
存储虚拟化就是为主机创建物理存储资源的过程。通过虚拟化技术,多个存储介质模块(如硬盘、RAID)通过一定的手段集中管理起来,所有的存储模块在一个存储池中得到统一管理。Redundant Array of independent Disk,(RAID)技术是虚拟化存储技术的雏形,目前使用的存储还有Network Attached Storage(NAS)和Storage Area Network(SAN)。
(3)桌面虚拟化
桌面虚拟化技术,维基百科上给出的定义是:“Desktop virtualization(或者成为Virtual Desktop Infrastructure)是一种基于服务器的计算模型,并且借用了传统的瘦客户端的模型,但是让管理员与用户能够同时获得两种方式的优点:将所有桌面虚拟机在数据中心进行托管并统一管理;同时用户能够获得完整PC的使用体验。桌面虚拟化最大的好处在于能够使用软件从集中位置来配置PC及其它客户端设备,这样方便了企业用户集中管理计算机,运维部门可以在数据中心加强对应用软件、系统补丁、杀毒软件的管理和控制。
(4)表示层虚拟化
在本地计算机显示和操作远程计算机桌面,在远程计算机执行存储信息和程序,一般通过终端服务来实现。
(5)应用虚拟化
在一台计算机上显示和操作计算机桌面,在另一台计算机上执行程序和存储信息。
目前在微软的虚拟化产品线中,已经有了服务器虚拟化、应用虚拟化、桌面虚拟化、表示层虚拟化产品,如下图3所示:
服务器虚拟化
服务器虚拟化可以说是最为熟悉的,就是让多个操作系统和应用程序同时运行在不同的虚拟机上,而这些虚拟机建立在同一个物理服务器上。但是一个服务器上的虚拟服务器的数量取决于硬件的能力,所有虚拟服务器共享相同的硬件上,但是相互独立运行,单独的虚拟服务器可以自行升级、启动,不会影响到其他虚拟服务器。
服务器虚拟化解决了存在物理服务器环境下问题,通过虚拟化层可以隔离同一台机器上、不同操作系统中运行的程序,避免资源的冲突。另外,服务器虚拟化可以动态移动没有充分利用的硬件资源到最需要应用的程序中,从而提高底层硬件资源的利用率。