云计算系统介绍.docx
《云计算系统介绍.docx》由会员分享,可在线阅读,更多相关《云计算系统介绍.docx(7页珍藏版)》请在冰豆网上搜索。
![云计算系统介绍.docx](https://file1.bdocx.com/fileroot1/2022-10/7/5acedf5c-684e-4a21-85a6-39916babc3b9/5acedf5c-684e-4a21-85a6-39916babc3b91.gif)
云计算相关技术及应用介绍
云计算(cloudcomputing)是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。
美国国家标准与技术研究院(NIST)将其定义为:
“云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。
”
一、云计算服务模式
云计算自底向上可以认为包括以下几个层次的服务:
基础设施即服务(IaaS),平台即服务(PaaS)和软件即服务(SaaS)。
这里所谓的层次,是分层体系架构意义上的“层次”。
IaaS,PaaS,SaaS分别在基础设施层,软件开放运行平台层,应用软件层实现。
下图是其示意图:
图1-1云计算服务分类示意图
1.基础设施即服务(InfrastructureasaService,IaaS)
通过网络作为标准化服务提供按需付费的弹性基础设施服务,其核心技术是虚拟化。
可以通过廉价计算机达到昂贵高性能计算机的大规模集群运算能力。
典型代表如亚马逊云计算AWS(AmazonWebServices)的弹性计算云EC2和简单存储服务S3,IBM的蓝云等。
2.平台即服务(PlatformasaService,PaaS)
提供给客户的是将客户用供应商提供的开发语言和工具(例如Java,python,.Net)创建的应用程序部署到云计算基础设施上去。
其核心技术是分布式并行计算。
PasS实际上指将软件研发的平台作为一种服务,以SaaS的模式提交给用户。
典型代表GoogleAppEngine(GAE)只允许使用Python和Java语言,基于称为Django的Web应用框架调用GAE来开发在线应用服务。
3.软件即服务(SoftwareasaService,SaaS)
它是一种通过Internet提供软件的模式,用户无需购买软件,而是租用服务商运行在云计算基础设施上的应用程序,客户不需要管理或控制底层的云计算基础设施,包括网络、服务器、操作系统、存储,甚至单个应用程序的功能。
该软件系统各个模块可以由每个客户自己定制、配置、组装来得到满足自身需求的软件系统。
典型代表如Salesforce公司提供的在线客户关系管理CRM(ClientRelationshizManagement)服务,ZohoOffice,Webex,常见的还有Email等。
二、云计算部署方式
1.私有云(privatecloud)
云基础设施是为一个客户单独使用而构建的,因而提供对数据、安全性和服务质量的最有效控制。
私有云可部署在企业数据中心中,也可部署在一个主机托管场所,被一个单一的组织拥有或租用。
2.公共云(publiccloud)
基础设施是被一个销售云计算服务的组织所拥有,该组织将云计算服务销售给一般大众或广泛的工业群体,公共云通常在远离客户建筑物的地方托管,而且它们通过提供一种像企业基础设施进行的灵活甚至临时的扩展,提供一种降低客户风险和成本的方法。
3.混合云(hybridcloud)
基础设施是由2种云组成,每种云仍然保持独立,但用标准的或专有的技术将它们组合起来,具有数据和应用程序的可移植性(例如,可以用来处理突发负载),混合云有助于提供按需和外部供应方面的扩展。
三、云计算的关键技术
云计算作为一种新的超级计算方式和服务模式,以数据为中心,是一种数据密集型的超级计算。
它运用了多种计算机技术,其中以编程模型、数据管理、数据存储、虚拟化和云计算平台管理等技术最为关键。
下面分别介绍云计算的一些关键技术.
1.编程模型MapReduce。
作为Google开发的Java、Python、C++编程模型,是一种简化的分布式编程和高效的任务调度模型,应用程序编写人员只需将精力放在应用程序本身,使云计算环境下的编程十分简单。
而关于集群的处理问题,包括可靠性和可扩展性,则交由平台来处理。
MapReduce模式的思想是通过“Map(映射)”和“Reduce(化简)”这样2个简单的概念来构成运算基本单元,先通过Map程序将数据切割成不相关的区块,分配(调度)给大量计算机处理,达到分布式运算的效果,再通过Reduce程序将结果汇整输出,即可并行处理海量数据。
2.海量数据分布存储技术。
云计算系统采用分布式存储的方式存储数据,用冗余存储的方式保证数据的可靠性。
云计算系统中广泛使用的数据存储系统是Google的GFS和Hadoop团队开发的GFS的开源实现HDFS。
GFS即Google文件系统(GoogleFileSystem),是一个可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用。
GFS的设计思想不同于传统的文件系统,是针对大规模数据处理和Google应用特性而设计的。
它虽然运行于廉价的普通硬件上,但可以提供容错功能。
它可以给大量的用户提供总体性能较高的服务。
一个GFS集群由一个主服务器(master)和大量的块服务器(chunkserver)构成,并被许多客户(client)访问。
主服务器存储文件系统所有的元数据,包括名字空间、访问控制信息、从文件到块的映射以及块的当前位置。
它还控制系统活动范围,如块租约(lease)管理,孤立块的垃圾收集,块服务器间的块迁移。
主服务器定期通过心跳(HeartBeat)消息与每一个块服务器通信,并收集它们的状态信息。
3.海量数据管理技术。
海量数据管理是指对大规模数据的计算、分析和处理,如各种搜索引擎。
以互联网为计算平台的云计算能够对分布的、海量的数据进行有效可靠地处理和分析。
因此,数据管理技术必需能够高效地管理大量的数据,通常数据规模达TB甚至PB级。
云计算系统中的数据管理技术主要是Google的BT(BigTable)数据管理技术,以及Hadoop团队开发的开源数据管理模块HBase和Hive,作为基于Hadoop的开源数据工具,主要用于存储和处理海量结构化数据。
BT是建立在GFS,Scheduler,LockService和MapReduce之上的一个大型的分布式数据库,与传统的关系数据库不同,它把所有数据都作为对象来处Google的很多项目使用BT来存储数据,包括网页查询,GoogleEarth和Google金融。
这些应用程序对BT的要求各不相同:
数据大小(从URL到网页到卫星图像)不同,反应速度不同(从后端的大批处理到实时数据服务)。
对于不同的要求,BT都成功地提供了灵活高效的服务。
4.虚拟化技术
虚拟化(virtualization)技术是云计算系统的核心组成部分之一,是将各种计算及存储资源充分整合和高效利用的关键技术。
云计算的特征主要体现在虚拟化、分布式和动态可扩展,而虚拟化作为云计算最主要的特点,为云计算环境搭建起着决定性作用。
虚拟化技术是伴随着计算机技术的产生而出现的,作为云计算的核心技术,扮演着十分重要的角色,提供了全新的数据中心部署和管理方式,为数据中心管理员带来了高效和可靠的管理体验,还可以提高数据中心的资源利用率,低功能绿色环保。
通过虚拟化技术,云计算中每一个应用部署的环境和物理平台是没有关系的,通过虚拟平台进行管理、扩展、迁移、备份,种种操作都通过虚拟化层次完成。
虚拟化技术实质是实现软件应用与底层硬件相隔离,把物理资源转变为逻辑可管理资源。
目前云计算中虚拟化技术主要包括将单个资源划分成多个虚拟资源的裂分模式,也包括将多个资源整合成一个虚拟资源的聚合模式.虚拟化技术根据对象可分成存储虚拟化、计算虚拟化、网络虚拟化等,计算虚拟化又分为系统级虚拟化、应用级虚拟化和桌面虚拟化。
四、云计算的发展现状
目前,Amazon、Google、IBM、微软等大公司是云计算的先行者。
1.Amazon
Amazon使用弹性计算云(EC2)和简单存储服务(S3)为企业提供计算和存储服务。
收费的服务项目包括存储服务器、带宽、CPU资源以及月租费。
月租费与电话月租费类似,存储服务器、带宽按容量收费,CPU根据时长(小时)运算量收费。
Amazon把云计算做成一个大生意没有花太长的时间:
不到两年时间,Amazon上的注册开发人员达44万人,还有为数众多的企业级用户。
有第三方统计机构提供的数据显示,Amazon与云计算相关的业务收入已达1亿美元。
云计算是Amazon增长最快的业务之一。
其主要的基础服务包括计算、存储、数据库等,如下图所示:
其次,亚马逊的云计算平台提供了很好的软件开发资源,如下图:
2.Google
Google当数最大的云计算的使用者。
Google搜索引擎就建立在分布在200多个地点、超过100万台服务器的支撑之上,这些设施的数量正在迅猛增长。
Google地球、地图、Gmail、Docs等也同样使用了这些基础设施。
采用GoogleDocs之类的应用,用户数据会保存在互联网上的某个位置,可以通过任何一个与互联网相连的系统十分便利地访问这些数据。
目前,Google已经允许第三方在Google的云计算中通过GoogleAppEngine运行大型并行应用程序。
Google值得称颂的是它不保守。
它早已以发表学术论文的形式公开其云计算三大法宝:
GFS、MapReduce和BigTable,并在美国、中国等高校开设如何进行云计算编程的课程。
3.IBM
IBM在2007年11月推出了“改变游戏规则”的“蓝云”计算平台,为客户带来即买即用的云计算平台。
它包括一系列的自动化、自我管理和自我修复的虚拟化云计算软件,使来自全球的应用可以访问分布式的大型服务器池。
使得数据中心在类似于互联网的环境下运行计算。
IBM正在与17个欧洲组织合作开展云计算项目。
欧盟提供了1.7亿欧元做为部分资金。
该计划名为RESERVOIR,以“无障碍的资源和服务虚拟化”为口号。
2008年8月,IBM宣布将投资约4亿美元用于其设在北卡罗来纳州和日本东京的云计算数据中心改造。
IBM计划在2009年在10个国家投资3亿美元建13个云计算中心。
4.微软
微软紧跟云计算步伐,于2008年10月推出了WindowsAzure操作系统。
Azure(译为“蓝天”)是继Windows取代DOS之后,微软的又一次颠覆性转型——通过在互联网架构上打造新云计算平台,让Windows真正由PC延伸到“蓝天”上。
微软拥有全世界数以亿计的Windows用户桌面和浏览器,现在它将它们连接到“蓝天”上。
Azure的底层是微软全球基础服务系统,由遍布全球的第四代数据中心构成,下图为Azure提供的主要云服务产品,包含三个层次的服务。
五、总结
云计算具有广阔的发展前景,相关的各项关键技术也在迅速发展。
虽然数据安全、隐私等问题还未完全解决,但是我相信随着技术的继续发展,云计算的应用范围云越来越广,正如微软所说:
“WeallintheCound”。