软件设计与体系结构 秦航 14_第1页
软件设计与体系结构 秦航 14_第2页
软件设计与体系结构 秦航 14_第3页
软件设计与体系结构 秦航 14_第4页
软件设计与体系结构 秦航 14_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、清华大学出版社1清华大学出版社2内容提要内容提要p14.1云计算的背景云计算的背景l14.1.1云计算的定义和技术特点l14.1.2云计算的分类l14.1.3云计算与网格计算p14.2云计算服务模型云计算服务模型l14.2.1云设计目标l14.2.2基础设施层IaaSl14.2.3平台层PaaS和应用程序层SaaSp14.3云计算主要平台云计算主要平台l14.3.1谷歌应用引擎(GAE)l14.3.2亚马逊的弹性计算云l14.3.3IBM的蓝云系统l14.3.4微软的Azurel14.3.5我国云计算产业的发展p14.4新兴云软件环境新兴云软件环境p14.5云计算的机遇与挑战云计算的机遇与挑战

2、p14.6小结小结14.1云计算的背景云计算的背景 pGartner(高德纳)公(高德纳)公司司,全球最具权威的全球最具权威的IT研究与顾问咨询公司研究与顾问咨询公司 14.1.1云计算的定义和技术特点云计算的定义和技术特点数据中心的虚拟化资源形成互联数据中心的虚拟化资源形成互联网云网云 将桌面计算移到面向服务的平台上,将桌面计算移到面向服务的平台上,来使用数据中心的服务器集群和大数据库。来使用数据中心的服务器集群和大数据库。 清华大学出版社6云服务与水、电服务云服务与水、电服务 云服务云服务水电服务水电服务不同点形式丰富(多样化和多粒度)统一功用个性化(价值因受众而异)通用损耗信息不会损失一

3、次性使用用户角色双重(消费者、提供者)单一(消费者)传送双向,不受时空限制单向、受地理位置限制控制全局无规划,无统一调度全局有规划,有统一调度经济性边际成本递减边际成本递增相同点资源在网上,而不在用户端。依靠传输网络送达。按需付费,计量服务p云服务与水、电等服务相比,有着更丰富、复杂的内涵。云服务与水、电等服务相比,有着更丰富、复杂的内涵。l边际成本,指为增加一单位的产量随即而产生的成本增加量。清华大学出版社814.1.1云计算的定义和技术特点云计算的定义和技术特点 p从技术背景上看,云计算是并行计算(从技术背景上看,云计算是并行计算(Parallel Computing)、分布式计算()、分

4、布式计算(Distributed Computing)和网格计算()和网格计算(Grid Computing)的发展,或者说,是这些计算科)的发展,或者说,是这些计算科学概念的商业实现。学概念的商业实现。p云计算也是虚拟化(云计算也是虚拟化(Virtualization)、效用)、效用计算(计算(Utility Computing)、将基础设施作)、将基础设施作为服务为服务IaaS(Infrastructure as a Service)、将平台作为服务)、将平台作为服务PaaS(Platform as a Service)、将软件作为服)、将软件作为服务务SaaS(Software as a

5、 Service)等概念)等概念混合演进并跃升的结果。混合演进并跃升的结果。清华大学出版社9云计算的特点云计算的特点p从研究现状上看,云计算具有以下特点。从研究现状上看,云计算具有以下特点。l超大规模。超大规模。云具有相当规模,谷歌云计算已经拥有100多万台服务器,亚马逊、IBM、微软、雅虎等公司的云,均拥有几十万台服务器。云能赋予用户前所未有的计算能力。l虚拟化。虚拟化。云计算支持用户在任意位置,使用各种终端获取服务。所请求的资源来自云,而不是固定的有形的实体。应用,在云中某处运行,但实际上,用户无需了解应用运行的具体位置,只需要一台笔记本或PDA,就可以通过网络服务,来获取各种能力超强的服

6、务。l高可靠性。高可靠性。云使用了数据多副本容错、计算节点同构可互换等措施,来保障服务的高可靠性,使用云计算比使用本地计算机更加可靠。l通用性。通用性。云计算不针对特定的应用,在云的支撑下,可以构造出千变万化的应用,同一片云,可以同时支撑不同的应用运行。l高可扩展性。高可扩展性。云的规模,可以动态伸缩,满足应用和用户规模增长的需要。l按需服务。按需服务。云是一个庞大的资源池,用户按需购买,像自来水、电、煤气那样计费。l极其廉价。极其廉价。云的特殊容错措施,使得能采用极其廉价的节点来构成云;云的自动化管理,使数据中心管理成本大幅降低;云的公用性和通用性,使资源的利用率大幅提升;云设施,可以建在电

7、力资源丰富的地区,从而大幅降低能源成本。云具有前所未有的性能价格比。现代软件系统中的计算机效用愿现代软件系统中的计算机效用愿景景 推动分布式系统及其应用的主要计算范式推动分布式系统及其应用的主要计算范式 清华大学出版社1114.1.2 云计算的分类云计算的分类p1. 根据部署模式分类根据部署模式分类l公共云l私有云l混合云云将用户解放了出来,使他们专注于云将用户解放了出来,使他们专注于应用程序的开发,并通过将作业应用程序的开发,并通过将作业外包,给云提供商创造了商业价值。外包,给云提供商创造了商业价值。 公共云、私有云、混合云的功能公共云、私有云、混合云的功能结构结构 p云将用户解放了出来,使

8、他们专注于应用程序云将用户解放了出来,使他们专注于应用程序的开发,并通过将作业外包,给云提供商创造的开发,并通过将作业外包,给云提供商创造了商业价值。了商业价值。 清华大学出版社132.根据服务类型分类根据服务类型分类 p基础架构即服务基础架构即服务l(Infrastructure as a Service,IaaS)p平台即服务平台即服务l(Platform as a Service,PaaS)p软件即服务软件即服务l(Software as a Service,SaaS)云计算的层次分类云计算的层次分类 这些云层逐层建立,没有云平台就没有这些云层逐层建立,没有云平台就没有SaaS应用。如果

9、计算和存储的基础应用。如果计算和存储的基础设施不存在,就不能构建云平台。设施不存在,就不能构建云平台。清华大学出版社1514.1.3 云计算与网格计算云计算与网格计算网格计算网格计算云计算云计算异构资源同构资源不同机构单一机构虚拟组织虚拟机科学计算为主数据处理为主高性能计算机服务器/PC紧耦合问题松耦合问题免费按量计费标准化尚无标准科学界商业社会p从历史上看,网格计算的出现过程与云计算很相似,并从历史上看,网格计算的出现过程与云计算很相似,并且也都是有关计算和网络的概念。且也都是有关计算和网络的概念。 清华大学出版社1614.2云计算服务模型云计算服务模型p14.2.1云设计目标云设计目标l将

10、计算从桌面移向数据中心:将计算从桌面移向数据中心:计算处理、存储、软件发布从桌面和本地服务器移向互联网数据中心。l服务配置和云效益:服务配置和云效益:提供商供应云服务,必须与消费者和终端用户签署服务等级协议(SLA)。服务在计算、存储、功耗方面必须有效,定价基于按需付费的策略。l性能可扩展性:性能可扩展性:云平台、软件和基础设施服务,必须能够根据用户数的增长而相应扩容。l数据隐私保护:数据隐私保护:能否信任数据中心处理个人数据和记录,云要成为可信服务必须妥善解决该问题。l高质量的云服务:高质量的云服务:云计算的服务质量必须标准化,才能使得云可以在多个提供商之间进行互操作。l新标准和接口:新标准

11、和接口:主要解决与数据中心、云提供商相关的数据锁定问题。清华大学出版社1714.2.2 基础设施层基础设施层IaaSpIaaS层是云计算的基础。层是云计算的基础。l通过大规模数据中心,IaaS层为上层云计算服务提供海量硬件资源。l同时,在虚拟化技术的支持下,IaaS层可以实现硬件资源的按需配置,并提供个性化的基础设施服务。p根据上面两点,根据上面两点,IaaS层主要研究层主要研究2个问题:个问题:l如何建设低成本、高效能的数据中心?l如何拓展虚拟化技术,实现弹性、可靠的基础设施服务?数据中心设计和互联网络数据中心设计和互联网络 谷歌在谷歌在Dalles数据中心鸟瞰图数据中心鸟瞰图 胖树互联拓扑

12、结构胖树互联拓扑结构 p该结构可以由该结构可以由5k2/4个个k口交换机连接口交换机连接k3/4个计算节点。个计算节点。p胖树互联网络,由边缘层、汇聚层、核心层构成。其中,边缘胖树互联网络,由边缘层、汇聚层、核心层构成。其中,边缘层和汇聚层,可分解为若干层和汇聚层,可分解为若干Pod,每一个,每一个Pod含含k台交换机,台交换机,分属边界层和汇聚层(每层分属边界层和汇聚层(每层k/2台交换机)。台交换机)。 清华大学出版社20虚拟机的配置虚拟机的配置 p虚拟化开发,主要关注高可用性、备份服务、负虚拟化开发,主要关注高可用性、备份服务、负载均衡、客户群的深入增长,并具备以下特点。载均衡、客户群的

13、深入增长,并具备以下特点。l资源分享。资源分享。通过虚拟机封装用户各自的运行环境,来有效实现多用户分享数据中心资源。l资源定制。资源定制。利用虚拟化技术,用户配置私有服务器,指定所需的CPU数量、内存容量、磁盘空间,来实现资源的按需分配。l细粒度资源管理。细粒度资源管理。把物理服务器拆分成若干虚拟机,可以提高服务器的资源利用率,减少浪费,而且有助于服务器的负载均衡和节能。计算、存储和网络云中的虚拟化计算、存储和网络云中的虚拟化资源资源 提供商提供商亚马逊的亚马逊的Web服务(服务(AWS)微软微软Azure谷歌应用引擎(谷歌应用引擎(GAE)使用服务器虚拟集群的计算云X86指令集、Xen虚拟机

14、,资源弹性要求必须通过虚拟集群或者第三方组织提供可扩展性由声明性描述所分配的公共语言运行时虚拟机预定义的Python应用程序框架处理器,自动伸缩,与Web应用不一致的服务器故障切换虚拟存储的存储云快存储模型(EBS)和放大的键/对象存储(SimpleDB),从EBS到全自动(SimpleDB,S3)的自动伸缩SQL数据服务(SQL服务器的限制视图),Azure存储服务MegaStore/BigTable网络云服务声明性的IP拓扑,隐藏的放置细节,安全组限制通信,可用性区域隔离网络故障,应用的弹性IP用户声明性描述的自主性或者应用程序组件的角色固定拓扑引入三层Web应用结构,伸缩是自动且程序员不

15、可见p当前,虚拟机安装在云计算平台上,主要用当前,虚拟机安装在云计算平台上,主要用于托管第三方程序。同时,虚拟机提供了灵于托管第三方程序。同时,虚拟机提供了灵活的运行时服务,用户获得解放,就不需要活的运行时服务,用户获得解放,就不需要再担心系统环境。再担心系统环境。 清华大学出版社22典型的典型的IaaS层平台层平台 p亚马逊弹性计算云(亚马逊弹性计算云(Elastic Computing Cloud,EC2),为公众提供基于),为公众提供基于Xen虚拟机虚拟机的基础设施服务。的基础设施服务。lEC2的虚拟机,分为标准型、高内存型、高性能型等多种类型,每一种类型的价格各不相同。pEucalyp

16、tus,是加州大学圣巴巴拉分校开发的,是加州大学圣巴巴拉分校开发的开源开源IaaS平台。平台。l和EC2等商业IaaS平台不同,Eucalyptus的设计目标,是为了研究、发展云计算的基础平台。清华大学出版社2314.2.3平台层平台层PaaS和应用程序和应用程序层层SaaSpPaaS层作为层作为3层核心服务的中间层层核心服务的中间层l既为上层应用提供简单、可靠的分布式编程框架,又需要基于底层的资源信息调度作业、管理数据,并屏蔽底层系统的复杂性。p随着数据密集型应用的普及和数据规随着数据密集型应用的普及和数据规模的日益庞大模的日益庞大lPaaS层需要具备存储、处理海量数据的能力。大数据的大数据

17、的4V特性特性 并行和分布式编程模型和工具集并行和分布式编程模型和工具集 模型模型描述描述特征特征MapReduce在大数据集或Web搜索操作上用于大集群的可扩展的Web编程模型Map函数生成一个中间的键值对集合;Reduce函数用相同的键合并所有的中间值Hadoop一个用于在商业应用中海量数据集上编写和运行大型用户应用程序的软件库提供给用户商业集群的易于访问的可扩展的、经济的、有效的、可靠的工具Dryad主要用来构建支持有向无环图类型数据流的并行程序根据程序的要求进行任务调度,自动在各个节点上完成任务MapReduce、Hadoop和微软的和微软的Dryad是最近提出是最近提出的三种并行和分

18、布式编程模型的三种并行和分布式编程模型 PaaS的公有云的公有云 云名称云名称语言及开发工具语言及开发工具提供商支持的编程模型提供商支持的编程模型目标应用和存目标应用和存储选项储选项谷歌应用引擎Python、Java和基于Eclipse的IDEMapReduce、按需Web编程Web应用和BigTable存储S的FApex、基于Eclipse的IDE和基于Web的向导工作流、Excel类的公式和按需Web编程商业应用,如CRM微软Azure.Net、微软Visual Studio的Azure工具不受限的模型企业和Web应用亚马逊的弹性MapReduce.Net、独立SDKMapReduce数据

19、处理和电子商务这些平台,都用海量数据处理技术搭建,各具代表性这些平台,都用海量数据处理技术搭建,各具代表性 清华大学出版社2714.3云计算主要平台云计算主要平台p14.3.1谷歌应用引擎(谷歌应用引擎(GAE)l1998年,斯坦福大学的博士生Larry Page和Sergrey Brin,在车库里创建了谷歌公司,其网页分级(PageRank)技术,大大增加了搜索结果的相关性。2001年,谷歌已经索引了近30亿个网页。l2004年,谷歌发布Gmail,提供闻所未闻的1GB免费邮箱,大家都还以为是个愚人节玩笑。l紧接着,谷歌又发布了Google Map、被称为“上帝之眼”的Google Eart

20、h,等等。l目前,已成为全世界访问量最高的站点。GFS体系结构体系结构 GFS将整个系统的节点分为三类角色:将整个系统的节点分为三类角色:Client(客户端)(客户端)、Master(主服务器)和(主服务器)和Chunk Server(数据块服务器)。(数据块服务器)。 MapReduce框架框架 MapReduce通过通过“Map(映射)(映射)”、“Reduce(化(化简)简)”这两个简单的概念来构成运算基本单元,这两个简单的概念来构成运算基本单元,用户只需提供自己的用户只需提供自己的Map函数和函数和Reduce函数,函数,就能并行处理海量数据。就能并行处理海量数据。 分布式结构化数据

21、表分布式结构化数据表Bigtable 14.3.2 亚马逊的弹性计算云亚马逊的弹性计算云p2002年开放了电子商务平台亚年开放了电子商务平台亚马逊的马逊的Web服务(服务(Amazon Web Service,AWS),迄今),迄今为止,包括四种主要服务:简单为止,包括四种主要服务:简单存储服务(存储服务(Simple Storage Service,S3)、弹性计算云)、弹性计算云(Elastic Compute Cloud,EC2)、简单队列服务)、简单队列服务(Simple Queuing Service,SQS)、简单的数据库管理)、简单的数据库管理(SimpleDB)。)。 14.3

22、.3 IBM的蓝云系统的蓝云系统“蓝云蓝云”基于基于IBM Almaden研究中心的云研究中心的云基础架构,采用了基础架构,采用了Xen和和PowerVM虚虚拟化软件、拟化软件、Linux操作系统映像、操作系统映像、Hadoop软件。软件。 14.3.4 微软的微软的Azure 该平台支持传统的微软编程语言和开发该平台支持传统的微软编程语言和开发平台如平台如C#、.NET平台,还支持平台,还支持PHP、Python、Java等多种非微软编程语言和架构。等多种非微软编程语言和架构。 清华大学出版社3414.4新兴云软件环境新兴云软件环境pEucalyptus具备以下特具备以下特性:性:l提供和亚

23、马逊弹性计算云兼容的接口(包括WWW服务、查询接口两方面)。l使用简单对象访问协议(Simple Object Access Protocol,SOAP)和网络服务安全(WS-security)内部通信。l提供用于系统管理和计费的“云管理员”基本工具。l可以在一个云内,为多个集群配置私有内部网络地址。EUCALYPTUS组件组件 p一个由加州大学圣巴巴拉分校研发的在集群或工作站上,实现云计算的开源基础设施服务框架 Nimbusp芝加哥大学研究的云基础设施芝加哥大学研究的云基础设施开源工具集。开源工具集。 RESERVOIR p无障碍资源和服务虚拟化,是无障碍资源和服务虚拟化,是IBM与与17个欧洲组织正个欧洲组织正合作开展的云计算项目。合作开展的云计算项目。p旨在提供运用虚拟化技术的面向服务的在线平台,其中旨在提供运用虚拟化技术的面向服务的在线平台,其中按透明方式

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论