云计算这个名词是由Google首席执行官埃里克·施密特(Eric Schmidt)于2006年8月9日在搜索引擎大会(SES San Jose,2006)上首次提出的。从此,云计算腾空出世,一时间风起云涌,越来越受到业界的关注和热捧,不仅Google、Amazon等互联网公司大举开辟这一新的业务领域,推陈出新,抢占领先位置,IBM、Oracle、Microsoft等传统的IT业巨头也被迫转型,不断调整公司组织和产品体系,开展大量的市场并购和技术研发工作,进行商业模式的创新,以图保持在IT市场上的地位,抵御互联网公司的进攻; 同时在学术界,关于云计算的科研工作如火如荼,越来越多的学者投入到云计算研究中,相关文献争相发表。
当前,云计算的应用已经带来了深远的影响,必然彻底改变IT产业的架构和运行方式。在云计算变革中,传统互联网数据中心(IDC)已逐渐被成本更低、效率更高的云计算数据中心所取代,绝大多数软件将以服务方式呈现,甚至连大多数游戏都在“云”里运行,呼叫中心、网络会议中心、智能监控中心、数据交换中心、视频监控中心和销售管理中心等架构在“云”中获取高得多的性价比。通过云计算这种创新的计算模式,用户通过互联网可随时获得近乎无限的计算能力和丰富多样的信息服务,它创新的商业模式使用户对计算和服务可以取用自由、按量付费。毋庸置疑,信息技术正在步入一个新纪元——云计算时代。
云计算正在快速地发展,相关技术热点也呈现百花齐放的局面,业界各大厂商纷纷制定相应的战略,新的概念、观点和产品不断涌现。云计算作为新一代IT技术变革的核心,必将成为广大学生、科技工作者构建自身IT核心竞争能力的战略机遇。因而作为高层次IT人才,学习云计算知识、掌握云计算相关技术迫在眉睫。可是当前,国内外关于云计算的资料还相当少,缺乏系统、完整的论述。目前在我国,急需要全面、系统讲解云计算的教材,以普及云计算知识,推广云计算应用,解决云计算的实际问题,进而培养高层次云计算人才。
在这样的背景下,作者从云计算的理论探索和应用实践两个方面来撰写本书,适合对云计算具有初步认识,希望全面、深入了解云计算知识,并进行云计算实践的计算机信息相关专业高年级本科生和研究生使用,同时本书也将成为广大专业工程技术人员不可缺少的参考资料。本书分为5篇16章,第1~3章为云计算概论篇,第4~7章为云计算关键技术篇,第8~10章为云计算体系架构篇,第11~14章为云计算安全篇,第15、16章为云计算编程实践篇。为方便读者阅读,下面给出本书的导读简图(见图0.1)。
图0.1本书导读简图
各章内容如下:
(1) 云计算概述。本章介绍云计算的发展情况、云计算的概念与特点,包括云计算的名称来源及云计算的划分标准。
(2) 云计算的发展渊源。本章从技术与产业两个角度分别阐述云计算的发展渊源。云计算技术实际上是多种计算技术的集大成,是各计算技术发展到一定阶段的必然结果; 同时,云计算是信息产业规模化以提高生产率、降低成本的必然结果。云计算的热潮并不是炒作的结果,而是发展的必然产物,不会昙花一现。
(3) 云计算的学习内容。本章介绍云计算研究的热点、云计算研发技术的相关情况,目前主流的云计算开发平台、概念、语言和软件等。
(4) 虚拟化。本章介绍构成云计算的关键技术虚拟,它整合多种计算资源,实现架构动态化,并达到集中管理和动态使用物理资源及虚拟资源,以提高系统结构的弹性和灵活性、降低成本、改进服务、减少管理风险等目标。
(5) 分布式计算。本章介绍构成云计算的关键技术——分布式计算技术,内容包括分布式计算、并行计算、Hadoop的分布式文件系统和MapReduce计算模型。
(6) Web 2.0。本章介绍构成云计算的关键技术——Web 2.0,它是互联网的一次理念和思想体系的升级换代,由原来的自上而下的由少数资源控制者集中控制主导的互联网体系转变为自下而上的由广大用户集体智慧和力量主导的互联网体系。
(7) 绿色数据中心。本章介绍构成云计算的关键技术——绿色数据中心(Green Data Center),它是指数据机房中的IT系统、机械、照明和电气等能取得最大化的能源效率和最小化的环境影响。
(8) 基础设施即服务。本章介绍云计算环境中的基础设施即服务(Infrastructure as a Service,IaaS),分析Amazon公司的IaaS案例。
(9) 平台即服务。本章介绍云计算环境中的平台即服务(Platform as a Service,PaaS),分析Google App Engine和Windows Azure 平台的PaaS案例。
(10) 软件即服务。本章介绍云计算环境中的软件即服务(Software as a Service,SaaS),分析Salesforce的SaaS案例。
(11) 云计算安全概述。本章介绍信息安全的概念由来,以及云计算系统发生的与安全相关的事故,并综合介绍云计算系统所面临的安全风险。
(12) 云计算的数据安全。本章介绍云计算数据安全面临的问题,以及现有的解决方案和技术,还简要地介绍一些通用的数据安全保障技术及相关的背景知识。
(13) 云计算的虚拟化安全。本章介绍云计算中的虚拟化安全技术以及相关的解决方案,还介绍一些虚拟机的恶意攻击方式及相应的检测技术。
(14) 云计算的服务传递安全。本章介绍云计算服务传递的3个方面问题,即服务传递的完整性与可信性保障、服务传递的访问控制及服务传递的可用性保障。
(15) 基于Hadoop系统编程。本章介绍基于Hadoop的编程,内容包括Hadoop的应用、Hadoop单机安装、Hadoop伪分布式安装以及基于Eclipse 3.3 (Windows XP)的Hadoop集群开发环境。
(16) GAE实验。本章介绍Google App Engine(GAE),描述GAE开发平台的搭建,使用GAE开发一个基础的Web服务、使用GAE提供App Engine 数据存储服务的相关方法。
本书最后给出了相关参考文献,有兴趣的读者可以参考阅读。此外,关于云体系架构中的数据即服务(Data as a Service,DaaS)在本书中看做PaaS的一部分,因而没有单独列出作为一章; 另外,桌面即服务(Desk as a Service,DaaS)在本书中的虚拟化技术中也进行了详细介绍。当今的信息时代,云计算方兴未艾,统一的标准和解决方案还未成形,不同的人在不同的背景下的需求和观点是不一样的,我们花费一年多时间努力编著本书,希望能为读者提供比较深入的见解,每一个对云计算感兴趣的读者都能从中汲取营养。
更进一步,云计算是新一代IT技术变革的核心,是中国建立自己IT体系的战略机遇,通过本书,期待读者既能从宏观角度更全面地认识云计算,同时也能从微观技术实践角度接触云计算,更深入地学习和掌握云计算知识。
本书对每章作了小结,提纲挈领,方便知识点的把握,适合于从头至尾阅读,也可以按照喜好和关注点挑选独立的章节阅读。我们希望本书的介绍能加深读者对云计算的理解,使读者获得所期待的信息。
此外,本书的撰写得到南京信息工程大学教材基金的大力支持,在此表示感谢!
由于作者水平所限,书中难免存在不当之处,恳请广大读者批评指正。
李天目博士、韩进博士
2013年7月于南京