什么是云计算虚拟化技术

什么是云计算虚拟化技术
云计算是并行计算(Parallel Computing)、分布式计算(Distributed Computing)和网格计算(Grid Computing)的发展。云计算是虚拟化(Virtualization)、公用计算(Utility Computing)、IaaS(基础设施即服务),PaaS(平台即服务)、SaaS(软件即服务)等概念混合演进并跃升的结果。
虚拟化是一个广义的术语,是指计算元件在虚拟的基础上而不是真实的基础上运行,是一个为了简化管理,优化资源的解决方案。如同空旷、通透的写字楼,整个楼层几乎看不到墙壁,用户可以用同样的成本构建出更加自主适用的办公空间,进而节省成本,发挥空间最大利用率。这种把有限的固定的资源根据不同需求进行重新规划以达到最大利用率的思路,在IT领域就叫做虚拟化技术。
虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。目前,虚拟化已经从单纯的虚拟服务器成长为虚拟桌面、网络、存储等多种虚拟技术。
从定义上可以看出,虚拟化只是云计算的一个技术基础,云计算除了具有虚拟化的技术基础外,还有其他技术支撑,这些支撑包含从软件设施的基础平台到应用都有所涉及。下面我们就和Tanjurd着重分析一下云计算的几个重点概念。
(1)本地无需计算,计算全部采用实时远程网络计算资源,云计算将计算资源和我们通常接触的资源放在同一个平台上,而不是简单的数据获取。
现在我们通常通过网络进行访问的资源,一般都是文件、视频流、音频流等,云计算则是将计算资源作为远程资源通过网络进行输送,这是云计算有别于其他任何计算的一个特有的特点。
将计算资源在网络上进行分配,那么高速的网络支持是必须的,网络必须有非常低的延迟,并且可以将计算过程中的交互损耗降至最低。云计算也有别于以前我们接触的远程提交作业,等待结果的计算方式,云计算的过程是实时交互的。
(2)支持多种硬件平台和多种软件平台,甚至通信协议,不仅要求硬件具有分布特性,软件(包含应用软件在内)也要具有分布特性,用户在使用软件资源之前,不必考虑本地硬件的特性,本地硬件的特性也不会对选择云计算作为计算平台的行为造成影响。
现在很多云计算解决方案提供商在提供方案的同时总是忽略云计算一个重要的特点,云计算是一个整体的解决方案,不单纯是硬件具有多任务、多会话的处理能力,而是说要求在硬件平台上运行的软件也必

须合理分配到各个硬件平台上。这里有必要阐述一下运营云和私有云的区别,有些比较大型的公司或运营商,简单地通过租赁硬件计算资源的方式,为其用户提供服务,即这些提供商建立一个庞大的服务器群和存储群,用户可以花钱租赁位于这些服务器上的计算资源和存储上的空间。从原理上来分析,这种计算资源的提供也是一种的云计算实现方法,其不需要考虑软件的特性。
但是在很多单位建设私有云中,也是采用相同的策略就有问题了,本地软件如果不具备可以部署到多点硬件计算单元上的能力,和单独地安装在一台服务器上又有多大的差别呢?
用户在采用云计算作为自己的计算平台时,不应到考虑本地计算资源的能力、兼容性等问题,因为云计算是一个标准的计算平台。因此,综合目前复杂的硬件环境,采用虚拟化技术作为云计算的基础技术平台就是理所应当的了。当采用虚拟化技术后,可以将参与计算的各个硬件特征屏蔽,将计算资源进行整合。
而下面我们看一下Tanjurd提出的虚拟化几个重点概念:
(1)针对不同的虚拟化产品进行不同的虚拟化技术,如服务器、桌面、网络,不同的IT层面,体现出不同的虚拟化方向,而构成可以连接各种不同平台的整体方案。
虚拟化是一个接口封装和标准化的过程,封装的过程根据不同的硬件会有不同,通过封装和标准化,为在虚拟容器里运行的程序提供适合的运行环境。这样,通过虚拟化技术,可以屏蔽不同硬件平台时间的差异性,屏蔽不同硬件的差异所带来的软件兼容问题,通过虚拟化技术,可以将硬件的资源通过虚拟化软件再重新整合后分配给软件使用。
虚拟化技术实现硬件无差别的封装很适合在云计算的大规模应用中作为技术平台,但是,虚拟化技术并不是云计算的惟一技术基础条件。只能说虚拟化是目前实现云比较切实可行的一个方案而已。
(2)虚拟化的核心解决要务是脱离硬件依赖,可以在各种硬件上部署虚拟化产品后,形成统一的计算界面。
从JVM到VSX等等产品,虚拟化核心要务是脱离硬件依赖,这样无论是软件开发还是网络应用,都可以简化软件的开发模式方法。所以虚拟化在用户界面上,是标准化的,一致的,而不是云计算那样提供各种各样不同平台适应的界面。
虚拟化技术的这个特点,使得虚拟化技术在很多应用场合大有可为。虚拟化技术之所以成为许多云计算方案中采用的技术平台,和虚拟化这个特征是分不开的。但是并不是所有的云计算都必须以虚拟化为技术基础,比如智能家电,就不可能在家电中部署虚拟机等设备。

(3)对本地计算有要求,虚拟化技术并不解决本地终端的计算问题;
虚拟化不能解决本地终端的计算问题,无论是虚拟服务器还是虚拟桌面,虚拟化技术也不能实现将所有的运算都转移到远程执行。虚拟化可以实现动态资源分配,但是并不是远程的。
同时,虚拟化技术涉及网络时,比如说在本地使用远程虚拟机时,需要大量网络通信,这种通信流量和在虚拟机上进行运行的程序复杂度没有任何关联,仅仅是虚拟化技术本身需要的网络通信要求。而云计算中是不存在这个问题的。

相关文档
最新文档