云计算技术概述

2011-03-20 08:00彭安鑫石磊
网络安全技术与应用 2011年6期
关键词:分布式计算计算环境虚拟化

彭安鑫 石磊

1山东师范大学信息科学与工程学院 山东 250014 2山东省教育招生和考试院 山东 250014

0 引言

本文介绍了云计算的发展历史,分析了云计算的定义、特征、分类和云架构的基本层次,阐述了云计算的关键技术和发展前景,并指出了云计算与网格计算等相关概念的区别。

1 什么是云计算

1.1 云计算的特征

通过分析云计算的定义,可以看出云计算的特征主要有以下四点。

(1) 硬件和软件都是资源,通过互联网以服务的方式提供给用户。在云计算中,资源已经不限定在诸如处理器、网络宽带等物理范畴,而是扩展到了软件平台、Web服务和应用程序的软件范畴。

(2) 这些资源都可以根据需要进行动态扩展和配置。

(3) 这些资源在物理上以分布式的共享方式存在,但最终在逻辑上以单一整体的形式呈现。对于分布式的理解有两个方面。一方面,计算密集型的应用需要并行计算来提高运算效率;另一方面,是指地域上的分布式。云计算中的分布式资源向用户隐藏了实现细节,并最终以单一整体的形式呈现给用户。

(4) 用户按需使用云中的资源,按实际使用量付费,而不需要管理它们。

1.2 云计算的分类

云计算可以按服务类型分类,所谓服务类型,就是指为其用户提供什么样的服务;通过这样的服务,用户可以获得什么样的资源。目前业界普遍认为可以分为三类。

(1) 基础设施云(Infrastructure Cloud)。这种云为用户提供的是底层的、接近于直接操作硬件资源的服务接口。通过调用这些接口,用户可以直接获得计算和存储能力,而且非常自由灵活,几乎不受逻辑上的限制。但是用户需要进行大量的工作来设计和实现自己的应用,因为基础设施云除了为用户提供计算和存储等基础功能外,不进一步做任何应用类型的假设。

(2) 平台云(Platform Cloud)。这种云为用户提供一个托管平台,用户可以将他们所开发和运营的应用托管到云平台中。但是,这个应用的开发部署必须遵守该平台特定的规则和限制,如语言、编程框架、数据存储模型等。

(3) 应用云(Application Cloud)。这种云为用户提供可以为其直接所用的应用,这些应用一般是基于浏览器的,针对某一项特定的功能。但是,它们也是灵活性最低的,因为一种应用云只针对一种特定的功能,无法提供其他功能的应用。

云计算也可以按服务方式分类,业界按照云计算提供者与使用者的所属关系为划分标准,将云计算分为以下三类。

(1) 公有云(Public Cloud)。公有云是由若干企业和用户共享使用的云环境。在公有云中,用户所需的服务由一个独立的、第三方云提供商提供。该云提供商也同时为其他用户服务,这些用户共享这个云提供商所拥有的环境。

(2) 私有云(Private Cloud)。私有云是指为企业或组织所专有的云计算环境。在私有云中,用户是这个企业或组织的内部成员,这些成员共享着该云计算环境所提供的所有资源,公司或组织以外的用户无法访问这个云计算环境提供的服务。

(3) 企业云(Enterprise Cloud)。企业云也就是专门应用在商业领域的商业云系统,专门设计客户管理软件、数据库软件等企业内部系统给商业公司使用的云系统。

一般中小型企业和创业公司将选择公有云,而金融机构、政府机关和大型企业则更倾向于选择私有云或混合云。

1.3 云架构的基本层次

云计算中的云按服务方式的分类其实已经包含了云架构(Cloud Architecture)的基本层次。云架构通过虚拟化、标准化和自动化得方式有机地整合了云中的硬件和软件资源,并通过网络将云中的服务交付给用户。云架构分为以下三个基本层次。

(1) 基础设施(Infrastructure)层。它是经过虚拟化后的硬件资源和相关管理功能的集合。云的硬件资源包括计算、存储和网络等资源。该层通过虚拟化技术抽象物理资源,实现了内部流程自动化和资源管理优化。从而向外部提供动态、灵活的基础设施层服务。

(2) 平台(Platform)层。它介于中间,是具有通用性和可复用性的软件资源的集合,为云应用提供了开发、运行、管理和监控的环境。能够更好地满足云的应用在可伸缩性、可用性和安全性等方面的要求。

(3) 应用(Application)层。它是云上面应用软件的集合,这些应用构建在基础设施层提供的资源和平台层提供的环境之上,通过网络交付给用户。云应用既可以是广大群体的标准应用,也可以是定制的服务应用,或者是用户开发的多元应用。

2 云计算的关键技术

云计算是一种新兴的计算模式,其发展离不开自身独特的技术和所涉及的一系列其它传统技术的支持。

(1) 快速部署(Rapid Deployment)。自数据中心诞生以来,快速部署就是一项重要的功能需求。数据中心管理员和用户一直在追求更快、更高效、更灵活的部署方案。云计算环境对快速部署的要求将会更高。首先,在云环境中资源和应用不仅变化范围大而且动态性高。用户所需的服务主要采用按需部署方式。其次,不同层次云计算环境中服务的部署模式是不一样的。另外,部署过程所支持的软件系统形式多样,系统结构各不相同,部署工具应能适应被部署对象的变化。

(2) 资源调度(Resouce Despatching)。指在特定环境下,根据一定的资源使用规则,在不同资源使用者之间进行资源调整的过程。这些资源使用者对应着不同的计算任务,每个计算任务在操作系统中对应于一个或者多个进程。虚拟机的出现使得所有的计算任务都被封装在一个虚拟机内部。虚拟机的核心技术是虚拟机监控程序,它在虚拟机和底层硬件之间建立一个抽象层,把操作系统对硬件的调用拦截下来,并为该操作系统提供虚拟的内存和CPU等资源。目前Vmware ESX和Citrix XenServer可以直接运行在硬件上。由于虚拟机具有隔离性,可以采用虚拟机的动态迁移技术来完成计算任务的迁移。

(3) 大规模数据处理(Massive Data Processing)。以互联网为计算平台的云计算,将会更广泛地涉及到大规模数据处理任务。由于大规模数据处理操作非常频繁,很多研究者在从事支持大规模数据处理的编程模型方面的研究。当今世界最流行的大规模数据处理的编程模型可以说是 Google公司所设计的MapReduce编程模型。MapRduce编程模型将一个任务分成很多更细粒度的子任务,这些子任务能够在空闲的处理节点之间调度,使得处理速度越快的节点处理越多的任务,从而避免处理速度慢的节点延长整个任务的完成时间。

(4) 大规模消息通信(Massive Message Communication)。云计算的一个核心理念就是资源和软件功能都是以服务的形式发布的,不同服务之间经常需要进行消息通信协作,因此,可靠、安全、高性能的通信基础设施对于云计算的成功至关重要。异步消息通信机制可以使得云计算每个层次中的内部组件之间及各个层次之间解耦合,并且保证云计算服务的高可用性。目前,云计算环境中的大规模数据通信技术仍在发展阶段。

(5) 大规模分布式存储(Massive Distributed Storage)。分布式存储要求存储资源能够被抽象表示和统一管理,并且能够保证数据读写操作的安全性、可靠性、性能等各方面要求。分布式文件系统允许用户像访问本地文件系统一样访问远程服务器的文件系统,用户可以将自己的数据存储在多个远程服务器上,分布式文件系统基本上都有冗余备份机制和容错机制来保证数据读写的正确性。云环境的存储服务基于分布式文件系统并根据云存储的特征做了相应的配置和改进。典型的分布式文件系统有 Google公司设计的可伸缩的Google File System(GFS)。目前,在云计算环境下的大规模分布式存储方向已经有了一些研究成果和应用。Google公司设计的用来存储大规模结构化数据的分布式存储系统BigTable用来将网页存储成分布式的、多维的、有序的图。

3 相关概念辨析

云计算是在并行计算、分布式计算和网格计算的基础上发展而来的。云计算和网格计算并没有明显的区别,两者均可以看成是并行计算和分布式计算技术衍生出来的概念。两者的差异主要表现在对资源的组织、分配和使用上的不同,云计算更强调虚拟化、灵活地使用资源。

3.1 并行计算

并行计算(Parallel computing)是指同时使用多种计算机资源解决计算问题的过程,为了更快速地解决问题,更充分地利用计算机资源而出现的一种计算方法。其缺点是:将被解决的问题划分出来的模块是相互关联的,如果其中一块出错,必定影响其他模块,再重新计算就降低了运算效率。

3.2 分布式计算

分布式计算(Distributed computing)是利用互联网上众多的闲置计算机能力,将其联合起来解决某些大型计算问题的一门学科。与并行计算同理,也是把一个巨大的计算机能力才能解决的问题分成很多部分,再分配给多个计算机处理,最终将结果汇总。与并行计算不同的是,分布式计算所划分的任务相互之间是独立的,某一个小任务的出错不会影响其他任务。

3.3 网格计算

网格计算(Grid computing)是专门针对复杂科学计算的新型计算模式,它把互联网上的众多计算资源整合成一台虚拟的超级计算机,再将以CPU为主的各种资源联系在一起,从而达到资源共享的目的。可以说,网格计算是将互联网内所有人的计算机组成的一个供你个人使用的超级处理器,而分布式计算就是你和其他人一起组成的一个超级处理器。

4 结束语

云计算的出现,让 IT业从以前以网站为核心的信息流转,变为了以信息为中心的流转。随着这种变革的到来,云计算对传统IT业带来了根本性的改变。但是,在云计算的发展过程中,我们仍需要进一步深入研究,仍需克服不少挑战,比如服务的高可用性、服务的迁移、数据的安全性、服务的性能等。云计算的雏形正在逐步形成,在未来的时间里必将引领信息产业发展的新浪潮。

[1]王鹏.走近云计算[M].北京:人民邮电出版社.2009.

[2]虚拟化与云计算小组.虚拟化与云计算[M].电子工业出版社.2009.

[3]Cloud Computing Type.Public Cloud,Hybrid Cloud,Private Cloud[EB/OL].http://www.circleid.com/posts/20090306_cloud_computing_types_public_hybrid_private/.

[4]Vmware virtualization technology[EB/OL]. http://www.vmware.com.2008.

[5]Barham P,Dragoic B,Fraser K. Etal Xen and the art of virtualization [C]//Proc of the 19thACM Symposium on Operating Systems Principles.New York,ACM Press.2003.

[6]张建勋,古志民,郑超.云计算研究进展综述[J].计算机应用研究.2010.

[7]Dean J,Ghemawa S.MapReduce simplified data processing on large clusters[J].Communications of the ACM.2008.

[8]S Ghemawat,H Gobioff,S.T.Leung.The Google File System[C]//In Proceedings of the 19thACM Symposium on Operating Systems Principles(SOSP 2003).Lake George,NY,October 2003.

[9]Chang F,Dean J,Ghemawat S. Etal BigTable A distributed storage system for structured data[J].ACM Transactions on Computer Systems. 2008.

[10]彭海深.云计算技术浅析[J].微计算机信息.2010.

猜你喜欢
分布式计算计算环境虚拟化
云计算环境下网络安全等级保护的实现途径
基于OpenStack虚拟化网络管理平台的设计与实现
对基于Docker的虚拟化技术的几点探讨
大数据云计算环境下的数据安全
H3C CAS 云计算管理平台上虚拟化安全防护的实现
基于云计算的移动学习平台设计与实现
云计算中MapReduce分布式并行处理框架的研究与搭建
面向异构分布式计算环境的并行任务调度优化方法
云计算环境中任务调度策略
存储虚拟化还有优势吗?