虚拟化技术的五个层次浅谈

Posted 山西和云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了虚拟化技术的五个层次浅谈相关的知识,希望对你有一定的参考价值。

尽管到现在各种虚拟化技术还没能泾渭分明,但随着时间的发展,五种主流的虚拟化技术逐步展露。这五种虚拟化技术分别是:CPU虚拟化、网络虚拟化、服务器虚拟化、存储虚拟化和应用虚拟化。

  通俗的定义来说,虚拟化就是把物理资源转变为逻辑上可以管理的资源,以打破物理结构之间的壁垒。未来,所有的资源都透明地运行在各种各样的物理平台上,资源的管理都将按逻辑方式进行,完全实现资源的自动化分配,而虚拟化技术就是实现它的理想工具。用一比喻来说,虚拟化技术的绝妙之处在于,终端用户在信息化应用中,感觉不到物理设备的差异、物理距离的远近以及物理数量的多少,按照自己正常习惯操作,进行需要的信息资源调用和交互。  

  这五种虚拟化技术分别是:CPU虚拟化、网络虚拟化、服务器虚拟化、存储虚拟化和应用虚拟化。让我们逐步揭开它们的面纱,看看它们各自的美丽。

一、CPU虚拟化 

  虚拟化在计算机方面通常是指计算元件在虚拟的基础上而不是真实的基础上运行。虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。简单说来,CPU的虚拟化技术就是单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。

  纯软件虚拟化解决方案存在很多限制。客户操作系统很多情况下是通过VMM(Virtual Machine Monitor,虚拟机监视器)来与硬件进行通信,由VMM来决定其对系统上所有虚拟机的访问。(注意,大多数处理器和内存访问独立于VMM,只在发生特定事件时才会涉及VMM,如页面错误。)在纯软件虚拟化解决方案中,VMM在软件套件中的位置是传统意义上操作系统所处的位茫。如处理器、内存、存储、显卡和网卡等)的接口,模拟硬件环境。这种转换必然会增加系统的复杂性。

CPU的虚拟化技术是一种硬件方案,支持虚拟技术的CPU带有特别优化过的指令集来控制虚拟过程,通过这些指令集,VMM会很容易提高性能,相比软件的虚拟实现方式会很大程度上提高性能。虚拟化技术可提供基于芯片的功能,借助兼容VMM软件能够改进纯软件解决方案。由于虚拟化硬件可提供全新的架构,支持操作系统直接在上面运行,从而无需进行二进制转换,减少了相关的性能开销,极大简化了VMM设计,进而使VMM能够按通用标准进行编写,性能更加强大。另外,在纯软件VMM中,目前缺少对64位客户操作系统的支持,而随着64位处理器的不断普及,这一严重缺点也日益突出。而CPU的虚拟化技术除支持广泛的传统操作系统之外,还支持64位客户操作系统。

  虚拟化技术是一套解决方案。完整的情况需要CPU、主板芯片组、Bios和软件的支持,例如VMM软件或者某些操作系统本身。即使只是CPU支持虚拟化技术,在配合VMM的软件情况下,也会比完全不支持虚拟化技术的系统有更好的性能。

二、网络虚拟化 

  网络虚拟化是目前业界关于虚拟化细分领域界定最不明确,存在争议较多的一个概念。微软眼中的网络虚拟化,是指虚拟专用网络 (VPN)VPN 对网络连接的概念进行了抽象,允许远程用户访问组织的内部网络,就像物理上连接到该网络一样。网络虚拟化可以帮助保护 IT环境,防止来自 Internet 的威胁,同时使用户能够快速安全的访问应用程序和数据。

  但是网络巨头思科(Cisco)不那么认为。出身、成名且目前称霸于网络的思科公司,当然在对IT未来的考虑上以网络为核心。它认为在理论上,网络虚拟化能将任何基于服务的传统客户端/服务器安置到网络上。那么,这意味着可以让路由器和交换机执行更多的服务。思科表示网络虚拟化由三个部分组成: 访问控制、路径提取,以及服务优势。从思科的产品规划图上看,该公司的路由器和交换机将拥有诸如安全、存储、VoIP、移动和应用等功能。 对思科而言,他们的战略是通过扩大网络基础设备的销售来持续产生盈利。 而对用户来讲,这能帮助他们提高网络设备的价值,并调整原有的网络基础设备。

三、服务器虚拟化 

  与网络虚拟化不同,服务器虚拟化却是虚拟化技术最早细分出来的子领域。根据20062Forrester Research的调查,全球范围的企业对服务器虚拟化的认知率达到了75%。三分之一的企业已经在使用或者准备部署服务器虚拟化。这个产生于20世纪60年代的技术日益显示出其重要价值。由于服务器虚拟化发展时间长,应用广泛,所以很多时候人们几乎把服务器虚拟化等同于虚拟化。

  关于服务器虚拟化的概念,各个厂商有自己不同的定义,然而其核心思想是一致的,即它是一种方法,能够通过区分资源的优先次序并随时随地能将服务器资源分配给最需要它们的工作负载来简化管理和提高效率,从而减少为单个工作负载峰值而储备的资源。

  似乎与所有颠覆性技术一样,服务器虚拟化技术先是悄然出现,然后突然迸发,最终因为节省能源的合并计划而得到了认可。如今,许多公司使用虚拟技术来提高硬件资源的利用率,进行灾难恢复、提高办公自动化水平。本组文章分别从服务器、存储、应用程序和桌面虚拟化技术三个角度介绍了如何消除物理硬件的限制。

  有了虚拟化技术,用户可以动态启用虚拟服务器(又叫虚拟机),每个服务器实际上可以让操作系统(以及在上面运行的任何应用程序)误以为虚拟机就是实际硬件。运行多个虚拟机还可以充分发挥物理服务器的计算潜能,迅速应对数据中心不断变化的需求。  

四、存储虚拟化 

  随着信息业务的不断运行和发展,存储系统网络平台已经成为一个核心平台,大量高价值数据积淀下来,围绕这些数据的应用对平台的要求也越来越高,不光是在存储容量上,还包括数据访问性能、数据传输性能、数据管理能力、存储扩展能力等等多个方面。可以说,存储网络平台的综合性能的优劣,将直接影响到整个系统的正常运行。因为这个原因,虚拟化技术又一子领域——虚拟存储技术,应运而生。

  其实虚拟化技术并不是一件很新的技术,它的发展,应该说是随着计算机技术的发展而发展起来的,最早是始于70年代。由于当时的存储容量,特别是内存容量成本非常高、容量也很小,对于大型应用程序或多程序应用就受到了很大的限制。为了克服这样的限制,人们就采用了虚拟存储的技术,最典型的应用就是虚拟内存技术。

  随着计算机技术以及相关信息处理技术的不断发展,人们对存储的需求越来越大。这样的需求刺激了各种新技术的出现,比如磁盘性能越来越好、容量越来越大。但是在大量的大中型信息处理系统中,单个磁盘是不能满足需要,这样的情况下存储虚拟化技术就发展起来了。在这个发展过程中也由几个阶段和几种应用。首先是磁盘条带集(RAID,可带容错)技术,将多个物理磁盘通过一定的逻辑关系集合起来,成为一个大容量的虚拟磁盘。而随着数据量不断增加和对数据可用性要求的不断提高,又一种新的存储技术应运而生,那就是存储区域网络(SAN)技术。

SAN的广域化则旨在将存储设备实现成为一种公用设施,任何人员、任何主机都可以随时随地获取各自想要的数据。目前讨论比较多的包括iSCSIFC Over IP 等技术,由于一些相关的标准还没有最终确定,但是存储设备公用化、存储网络广域化是一个不可逆转的潮流。

  所谓虚拟存储,就是把多个存储介质模块(如硬盘、RAID)通过一定的手段集中管理起来,所有的存储模块在一个存储池(Storage Pool)中得到统一管理,从主机和工作站的角度,看到就不是多个硬盘,而是一个分区或者卷,就好象是一个超大容量(如1T以上)的硬盘。这种可以将多种、多个存储设备统一管理起来,为使用者提供大容量、高数据传输性能的存储系统,就称之为虚拟存储。

五、应用虚拟化? 

  简单来讲,应用虚拟化技术使机构能够用更少的投入做更多的事情,并最终节省经费。这样,企业决策者就能够在IT开销与业务需求之间达成更好的平衡——由运营成本降低所节省的经费可以重新投入到能够推动增长的业务领域中。

  从技术角度来讲,应用虚拟化可以简单描述为IT应用客户端集中部署平台为核心,以对最终用户透明的方式完全使用户的应用和数据在平台上统一计算和运行,并最终让用户获得与本地访问应用同样的应用感受和计算结果。

  虚拟化背后的主要推动力是基础设施各方面的猛烈增长,同时伴随着IT硬件和应用的大量增加。而且,IT系统正在变得越来越大,分布越来越广,并且更加复杂,因而难以管理,但要求加强IT控制的业务和监管压力却在继续增大。这听起来可能很专业,但对业务决策者来说却很中听,因为应用虚拟化正在帮助解决当今机构所面临的很多推动力方面的问题——提高业务效率、增强员工移动性、遵守安全与监管规定、向新兴市场拓展、业务外包、以及业务连续性等等。

  在可能实现的一系列利益当中,应用虚拟化技术能帮助企业解决三个关键方面的问题——安全性、性能和成本。从安全角度来讲,应用虚拟化从其设计本身来看是安全的。采用客户-服务器端应用,数据安全面临风险。IT人员不仅必须应对数据的存放、打印和操控环境,而且还必须考虑数据在网络内和网络外如何迁移,并保证知识产权不会泄露,电脑病毒也不会潜入。启动应用虚拟化项目后,一个公司的所有系统和数据都被整合到了一起,从而几乎消除了在设备层面上数据被盗或数据丢失的风险。性能改善对很多公司来说是另一个吸引人的因素。因为客户-服务器端应用依靠网络来传输流量,所以它们会为网络增添带宽消耗问题。这种问题困扰着很多企业,反过来又会降低应用系统的性能。应用虚拟化技术可以将各种应用系统集中起来,只有一个通过网络传送的虚拟界面。这样可以保证在极低的带宽上实现高性能,而不管设备、网络和地点如何。所以在业务扩张或合并的情况下,企业能够在几分钟或几小时时间内让新用户上网,而不像过去那样需要几个星期或几个月。因此,容易理解为什么应用虚拟化是很多所谓的业务流程外包公司所欢迎的一种方式。

  个人计算设备和操作系统的繁多使得客户-服务器端应用的测试、调试和客户定制开发成本高昂且耗费时间。采用应用虚拟化技术之后,将不需要在每个用户的桌面上部署和管理多个软件客户端系统,所有应用客户端系统都将一次性地部署在数据中心的一台专用服务器上,这台服务器就放在应用服务器的前面。客户也将不需要通过网络向每个用户发送实际的数据,只有虚拟的客户端界面(屏幕图像更新、按键、鼠标移动等等)被实际传送并显示在用户的电脑上。这个过程对最终用户是一目了然的,最终用户的感觉好像是实际的客户端软件正在他的桌面上运行一样。

  客户-服务器端应用要求在每个用户的电脑上安装客户端软件,从而导致更高的成本,因为需要在分布式网络上管理这些软件的部署、补丁和升级。这个问题随着用户登录到每个新应用系统的需求量呈增长趋势,因为IT部门需要在每个用户的桌面上部署另一个独特的客户端设备。即便在最讲究战术的接入服务场景中,应用虚拟化可以带来的成本效益也是相当诱人的。通过将IT系统的管理集中起来,企业能够同时实现各种不同的效益——从带宽成本节约到提高IT效率和员工生产力以及延长陈旧的或当前的系统的寿命等等。 


以上是关于虚拟化技术的五个层次浅谈的主要内容,如果未能解决你的问题,请参考以下文章

区块链技术的基本特点

今年黑科技趋势最具的五个看点

浅谈虚拟化技术

阿里云郑晓:浅谈GPU虚拟化技术(第三章)

如何构建满足用户需求的云环境的五个步骤

浅谈Linux设备虚拟化技术的演进之路