1、东方赛普 物联网产业研究院 云计算技术云计算技术第一章 云计算基础现在,“云计算”越来越成为人们所关注的一个名词,因为它代表了信息时代的未来,云计算被视为科技业的下一次革命,而它也将对工作方式和商业模式带来根本性的改变,那么,什么是云计算?云计算有什么用处?它将如何改变整个世界?一连串的问题等待解答。实际上,云计算不能算是一个全新的概念,它是并行计算、分布式计算和网格计算的综合和发展。但是,它将是一项颠覆性的技术.何为云计算?在解释什么是云计算之前,我们从感性上感受一下云计算的魅力,基于云计算平台的各种服务,将大大地简化人们的日常生活。云作为数据中心,您可以: - 用手机或相机或DV随时随地地
2、拍照,通过3G网络,透明地同步到云中; 多部手机、电脑或终端使用同一份联系人,不用担心手机丢失; 统一的行程安排,不会错过任何一个约会 不用再管理纸质的名片,因为整个CRM客户关系管理系统都在云中,你可以通过浏览器、手机、笔记本等任一终端管理你的客户云作为运算中心,您还可以粗略地计算,目前的个人计算机每个CPU芯片的处理能力是200MIPS,就是每秒种执行两亿次指令,当今社会,PC依然是我们日常工作生活中的核心工具我们用PC处理文档、存储资料,通过电子邮件或U盘与他人分享信息.如果PC硬盘坏了,我们会因为资料丢失而束手无策。而在“云计算”时代,“云”会替我们做存储和计算的工作.“云就是计算机群
3、,每一群包括了几十万台、甚至上百万台计算机。“云”的好处还在于,其中的计算机可以随时更新,保证“云”长生不老。Google就有好几个这样的“云,其他IT巨头,如微软、雅虎、亚马逊(Amazon)也有或正在建设这样的“云”。届时,我们只需要一台能上网的电脑,不需关心存储或计算发生在哪朵“云”上,但一旦有需要,我们可以在任何地点用任何设备,如电脑、手机等,快速地计算和找到这些资料.我们再也不用担心资料丢失。 云计算是个热度很高的新名词.由于它是多种技术混合演进的结果,其成熟度较高,又有大公司推动,发展极为迅速。Amazon、Google、IBM、微软和Yahoo等大公司是云计算的先行者。云计算领域
4、的众多成功公司还包括Salesforce、Facebook、Youtube、Myspace等。 狭义云计算:是指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源.广义云计算:是指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。云计算的核心思想,是将大量用网络连接的计算资源统一管理和调度,构成一个计算资源池向用户按需服务。提供资源的网络被称为“云。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费.云计算的产业三级分层:云软件、云平台、云设备。服务模式角度:云
5、计算是一种全新的网络服务模式,将传统的以桌面为核心的任务处理转变为以网络为核心的任务处理,利用互联网实现自己想完成的一切处理任务,使网络成为传递服务、计算力和信息的综合媒介,真正实现按需计算、网络协作。技术角度:云计算(Cloud Computing)是对并行计算(Parallel Computing)、分布式计算(Distributed Computing)和网格计算(Grid Computing)的发展或商业实现。超大规模和虚拟化的云技术云具有相当的规模Google云计算已经拥有100多万台服务器, Amazon、IBM、微软、Yahoo等的“云均拥有几十万台服务器,企业私有云一般拥有数百
6、上千台服务器,“云”能赋予用户前所未有的计算能力和存储能力. 云提供虚拟的和透明的计算服务应用服务(也可以说是应用程序)运行在云中。所请求的资源来自“云”,而不是固定的有形的实体。应用在“云中某处运行,但实际上用户无需了解、也不用担心应用运行的具体位置。云计算支持用户在任意位置、使用各种终端获取应用服务.只需要一台笔记本或者一个手机,就可以通过网络服务来实现我们需要的一切,甚至包括超级计算这样的任务.云计算的产生和发展云计算产生在计算机产生后的相当长的一段时间内,计算机网络都还处于一个黑暗时代。但是到了上世纪90年代以后,网络出现了爆炸式发展,进入了网络泡沫时代。在21世纪初期,正当互联网泡沫
7、破碎之际,Web2。0的兴起,让网络迎来了一个新的发展高峰期.在这个Web2.0的时代,Flickr、MySpace、FaceBook、YouTube等网站的访问量,已经远远超过传统门户网站。用户数量多以及用户参与程度高,是这些网站的特点。因此,如何有效地为如此巨大的用户群体服务,让他们参与时能够享受方便、快捷的服务,成为这些网站不得不解决的一个问题。而与此同时,凭借Google文件系统搭建起来Google服务器群,为Google提供强大的搜索速度与处理能力。于是,如何有效利用这些这种技术,为更多的企业或个人提供强大的计算能力与多种多样的服务,就是像Google这样拥有巨大服务器资源的企业在考
8、虑的问题.正是因为一方对计算能力的需求,而另一方能够提供这样的计算能力,于是云计算就应运而生。云计算发展历程1983年,太阳电脑(Sun Microsystems)提出“网络是电脑(“The Network is the Computer”)。 2006年3月,亚马逊(Amazon)推出弹性计算云(Elastic Compute Cloud;EC2)服务。 2006年8月9日,Google首席执行官埃里克施密特(Eric Schmidt)在搜索引擎大会(SES San Jose 2006)首次提出“云计算(Cloud Computing)的概念.Google“云端计算”源于Google工程师克
9、里斯托弗比希利亚所做的“Google 101项目。 2007年10月,Google与IBM开始在美国大学校园,包括卡内基美隆大学、麻省理工学院、斯坦福大学、加州大学柏克莱分校及马里兰大学等,推广云计算的计划,这项计划希望能降低分布式计算技术在学术研究方面的成本,并为这些大学提供相关的软硬件设备及技术支持(包括数百台个人电脑及BladeCenter与System x服务器,这些计算平台将提供1600个处理器,支持包括Linux、Xen、Hadoop等开放源代码平台)。而学生则可以通过网络开发各项以大规模计算为基础的研究计划。 2008年1月30日,Google宣布在台湾启动“云计算学术计划”,将
10、与台湾台大、交大等学校合作,将这种先进的大规模、快速计算技术推广到校园。 2008年7月29日,雅虎、惠普和英特尔宣布一项涵盖美国、德国和新加坡的联合研究计划,推出云计算研究测试床,推进云计算。该计划要与合作伙伴创建6个数据中心作为研究试验平台,每个数据中心配置1400个至4000个处理器.这些合作伙伴包括新加坡资讯通信发展管理局、德国卡尔斯鲁厄大学Steinbuch计算中心、美国伊利诺伊大学香宾分校、英特尔研究院、惠普实验室和雅虎. 2008年8月3日,美国专利商标局网站信息显示,戴尔正在申请“云计算”(Cloud Computing)商标,此举旨在加强对这一未来可能重塑技术2010年3月5
11、日,Novell与云安全联盟(CSA)共同宣布一项供应商中立计划,名为“可信任云计算计划(Trusted Cloud Initiative)。 2010年7月,美国国家航空航天局和包括Rackspace、AMD、Intel、戴尔等支持厂商共同宣布“OpenStack开放源代码计划,微软在2010年10月表示支持OpenStack与Windows Server 2008 R2的集成;而Ubuntu已把OpenStack加至11。04版本中。2011年2月,思科系统正式加入OpenStack,重点研制OpenStack的网络服务。云计算的来临 数据在云端:不怕丢失、不必备份、可以任意点的恢复 软件
12、在云端:不必下载自动升级 无所不在的计算:在任何时间、任意地点、任何设备登录后就可以进行计算 服务无限强大的计算:具有无限空间、无限速度。第二章 云计算相关概念“云计算”是一个很新的概念,这个名词提出来才一两年,到目前为止,云计算没有什么标准化组织,连概念也不是十分清晰和准确的,对于云计算,各家有各家的说法,大家各执一辞.本节将集各家之词,提出一个比较合理的概念和解释。云云是一些可以自我维护和管理的虚拟计算资源,通常为一些大型服务器集群,包括计算服务器、存储服务器、宽带资源等等。云计算将所有的计算资源集中起来,并由软件实现自动管理,无需人为参与。这使得应用提供者无需为繁琐的细节而烦恼,能够更加
13、专注于自己的业务,有利于创新和降低成本.有人打了个比方:这就好比是从古老的单台发电机模式转向了电厂集中供电的模式,它意味着计算能力也可以作为一种商品进行流通,就像煤气、水电一样,取用方便,费用低廉。最大的不同在于,它是通过互联网进行传输的。 云计算特点l 超大规模:服务器群l 虚拟化:可以看作是一片用于计算的云l 高可靠性:冗余副本、负载均衡l 通用性:支撑千变万化的实际应用l 高可扩展性:灵活、动态伸缩l 按需服务:按需购买l 极其廉价:不再需要一次性购买超级电脑l 安全: 摆脱数据丢失、病毒入侵 l 方便:支持多终端、数据共享第三章 云计算关键技术云计算是并行计算、分布式计算和网格计算的综
14、合和发展,为了更好地理解什么是云计算,我们先来简单了解一下它们之间的异同。 并行计算概念:并行计算是指通过高速网络相互联接的两个以上的处理机相互协调,同时计算同一个任务的不同部分,从而提高问题求解速度,或者求解单机无法求解的大规模问题。并行计算是相对于串行计算来说的,所谓并行计算分为时间上的并行和空间上的并行,时间上的并行就是指流水线技术,而空间上的并行则是指用多个处理器并发的执行计算。 特点:把计算任务分派给系统内的多个运算单元,大型机的多CPU和多存储器并行计算问题的特征 将工作分离成离散部分,有助于同时解决 随时并及时地执行多个程序指令(多条线同时运行) 多计算资源下解决问题的耗时要少于
15、单个计算资源下的耗时分布式计算概念:分布式计算是利用互联网上的计算机的CPU 的闲置处理能力来解决大型计算问题的一种计算科学。一个工作被分成多个任务包,同时在通过网络连接起来的计算机上运行。特点:把计算任务分派给网络中的多台独立的机器优点: 稀有资源可以共享 通过分布式计算可以在多台计算机上平衡计算负载 可以把程序放在最适合运行它的计算机上 网格计算概念:网格计算是指分布式计算中比较广泛使用的子类型.这种计算模式是利用互联网把分散在不同地理位置的电脑组织成一个“虚拟的超级计算机”,其中每一台参与计算的计算机就是一个“节点”,而整个计算是由成千上万个“节点”组成的“一张网格”,所以这种计算方式叫
16、网格计算。它可以分析来自外太空的电讯号,寻找隐蔽的黑洞,并探索可能存在的外星智慧生命;可以寻找最大的质数,破解数学难题;可以分析气候的变化,应对环境问题.特点:网格(Grid)这个词来自于电力网格(PowerGrid).“网格”与“电力网格形神相似,一方面,计算机网纵横交错,很像电力网;另一方面,电力网格用高压线路把分散在各地的发电站连接在一起,向用户提供源源不断的电力。用户只需插上插头、打开开关就能用电,一点都不需要关心电能是从哪个电站送来的,也不需要知道是水力电、火力电还是核能电。建设网格的目的也是一样,其最终目的是希望它能够把分布在因特网上数以亿计的计算机、存储器、贵重设备、数据库等结合
17、起来,形成一个虚拟的、空前强大的超级计算机,满足不断增长的计算、存储需求,并使信息世界成为一个有机的整体.,实际上,网格计算就是分布式计算的一种.如果我们说某项工作是分布式的,那么,参与这项工作的一定不只是一台计算机,而是一个计算机网络,显然这种“蚂蚁搬山”的方式将具有很强的数据处理能力.网格计算的实质就是组合与共享资源并确保系统安全. 效用计算概念:效用计算(Utility Computing)是一种提供计算资源的商业模式,用户从计算资源供应商获取和使用计算资源并基于实际使用的资源付费。简单说,是一种基于资源使用量的付费模式.效用计算主要给用户带来经济效益.虚拟化概念:云计算中心使用虚拟化技
18、术管理服务器资源。虚拟化指对计算资源进行抽象的一个广义概念。虚拟化对上层应用或用户隐藏了计算资源的底层属性。它既包括使单个的资源(比如一个服务器,一个操作系统,一个应用程序,一个存储设备)划分成多个虚拟资源,也包括将多个资源(比如存储设备或服务器)整合成一个虚拟资源。第四章 云计算的服务层次InfoWorld网站同数十家公司、分析家和IT用户讨论出了云计算的几大形式,下面将大体介绍每一种云计算形式.云计算服务类形 基础设施即服务( IaaS) 软件即服务( SaaS ) 网络服务 平台即服务(PaaS) 管理服务提供商(MSP) 商业服务平台 云安全基础设施即服务-IaaSIaaS是为IT行业
19、创造虚拟的计算和数据中心,使得其能够把计算单元、存储器、I/O设备、带宽等计算机基础设施,集中起来成为一个虚拟的资源池来为整个网络提供服务。IaaS服务向用户提供基本的计算、存储和网络资源,用户基于这些资源,可安装任意的操作系统软件和应用软件以完成计算.例如Amazon EC2为用户提供弹性云计算服务。Amazon使用弹性计算云(EC2)和简单存储服务(S3)为企业提供计算和存储服务,收费的服务项目包括存储服务器、带宽、CPU资源以及月租费。月租费与电话月租费类似,存储服务器、带宽按容量收费,CPU根据时长(小时)运算量收费,Amazon把云计算做成一个大生意没有花太长的时间:不到两年时间,A
20、mazon上的注册开发人员达44万人,还有为数众多的企业级用户。有第三方统计机构提供的数据显示,Amazon与云计算相关的业务收入已达1亿美元。云计算是Amazon增长最快的业务之一.S3:S3的基础窗口是桶,桶是存放文件的容器。S3给每个桶和桶中每个文件分配一个URI地址,因此你可以通过http或者https协议进行访问。(认证、权限控制),Google App Engine这种服务让开发人员可以编译基于Python的应用程序,并可免费使用谷歌的基础设施来进行托管(最高存储空间达 500MB).对于超过此上限的存储空间,谷歌按“每CPU内核每小时”10至12美分及1GB空间15至18美分的标
21、准进行收费。 软件即服务SaaSSaaS是一种基于互联网提供软件服务的应用模式,使用基于web的软件提供在线软件服务,例如,国内厂商八百客、沃利森的CRM、ERP的在线应用,用友、金蝶的在线财务软件,国外的Salesforce。com、RightNow提供的CRM在线应用。SaaS是一种随着互联网技术的发展和应用软件的成熟,在21世纪开始兴起的完全创新的软件应用模式,SaaS服务模式与传统的销售软件永久许可证的方式有很大的不同,它采用软件租赁的形式。这种模式是未来管理软件的发展趋势 。现阶段这种类型的云计算通过浏览器把程序传给成千上万的用户,在用户眼中看来,这样会省去在服务器和软件授权上的开支
22、;从供应商角度来看,这样只需要维持一个程序就够了,这样能够减少成本。对于广大中小型企业来说,SaaS是采用先进技术实施信息化的最好途径.企业无需购买软硬件、建设机房、招聘IT人员,即可通过互联网使用信息系统.就像打开自来水龙头就能用水一样,企业根据实际需要,向SaaS提供商租赁软件服务.SAAS在人力资源管理程序和ERP中比较常用,S是迄今为止这类服务最为出名的公司,Google Apps和Zoho Office也是类似的服务。网络服务提供API让开发者能够开发更多基于互联网的应用,中移动的 Fetion Web Service。网络服务是一组组存在于互联网上的API,也就是一些具有URL的函
23、数,给用户提供二次开发的能力平台即服务-PaaS把服务器平台或开发环境作为一种服务提供的商业模式,提供集成开发环境、服务器平台等服务,用户使用PaaS开发应用程序并通过互联网和其服务器传给其他用户。例如,Google AppEngine 让用户可以Google的基础架构上运行网络应用程序,Amazon S3提供简单存储服务.所谓PaaS实际上是指将软件研发的平台作为一种服务,以SaaS的模式提交给用户.因此,PaaS也是SaaS模式的一种应用,但是,PaaS的出现可以加快SaaS的发展,尤其是加快SaaS应用的开发速度。国内的SaaS厂商八百客的PAAS开发平台,用户不再需要任何编程即可开发包
24、括CRM、OA、HR、SCM、进销存管理等任何企业管理软件,而且不需要使用其他软件开发工具并立即在线运行云计算 云计算技术将使得中小企业的成本大大降低,过去,小公司人力资源不足,IT预算吃紧,包括服务器硬件、服务器操作系统和数据库系统的授权、网络带宽等,一切都需要钱,而如今,云计算为它们送来了大企业级的技术,并且先期成本极低,升级也很方便. 第五章 云计算发展难题与障碍对于“云计算,业界已经为之争论了不止一年,IBM、微软、Google等产业大哥们也各自运功,以“云计算”作为获得未来产业主动权的阵地,作为消费者,我一直觉得“云计算”是未来的IT行业的发展趋势,但是:“云计算何时才能从云端到地面
25、? 关于“云计算”技术标准和发展方向的争论依然此起彼伏,我们却已经悄然步入“云计算的年代。云计算技术难点高可靠的系统技术 支撑云计算的是大规模的集群计算系统,当系统规模增大后,可靠性和稳定性就成为最大的挑战之一。可扩展的并行计算技术 并行计算技术是云计算的核心技术,也是最具挑战性的技术之一。多核处理器的出现增加了并行的层次性能使得并行程序的开发比以往更难。海量数据的挖掘技术 云计算面对的是TB乃至PB级的海量数据,如何从数据中获取有效的信息,这将是决定云计算应用成败的关键.数据安全技术-云安全技术 将原本保存在本地、为自己所掌控的数据交给一个外部的云计算服务中心,这样一个改变并不容易.网络技术
26、的发展,使得带宽将不会成为主要障碍,安全性依旧是最重要的顾虑。所有数据都存储在云中,不管是个人的多媒体数据,还是企业的敏感数据。目前网上最流行的基于网络的商业应用是工资和客户账户管理,这是最敏感的商业信息之一.此类信息泄露事件已经发生了不止一起,并且每次都是大规模的数据外泄。去年,美国零售商TJX约有4500万份用户信用卡号被黑客盗取。英国政府丢失2500万人的社会保障号码等资料.在线软件公司也丢失了100万份用户的Email和电话号码,个人的私有数据还好一点,但企业的商业数据,云服务提供商必须具有强大的威信和信誉,保证不窃取用户的私有数据。云系统是向全世界公开的,因为它要保证用户能随时随地通
27、过各种信息终端访问服务,所以黑客就有同样的机会窃取信息. 云计算是一个巨大的系统,计算能力是最牛的,信息吞吐量是海量的,但是,它的效率肯定不是最高最优的,云系统是一个巨大的服务器集群,每时每刻都在消耗电能。当计算机硬件的价格遵循着摩尔定律在不断下降,但是功耗方面的支出却随着通货膨胀和油价上涨而不断地攀升。当Google的每次搜索被人换算成二氧化碳排放量,自己都不得不把处理中心部署在水电站附近,甚至还准备建立自己的电厂。 第六章 云计算应用实例Google的云计算平台Google最早提出了“云计算”的概念.Google提出了一整套基于分布式并行集群方式的基础架构,利用软件来处理集群中经常发生的节
28、点失效问题。IBM 的“蓝云”计划IBM通过将Tivoli、DB2、WebSphere与硬件产品(目前是x86刀片服务器)集成,为企业架设一个分布式、可全球访问的资源结构。微软的云计算平台微软推出了名为“Azure Services Platform”的云计算平台,我们可以把Windows Azure理解云计算中心的操作系统,它的底层是数据中心中数量庞大的Windows 64位服务器。Windows Azure通过底层的结构控制器(Fabric Controller),有效的将这些服务器组织起来,给前端的应用提供计算和存储能力,并保证其可靠性.Amazon的弹性计算云平台EC 2EC2是Amazon所开发的云端运算服务环境,它提供客户租赁虚拟执行环境,以供企业开发、测试或执行自己的应用程序,客户可以选择每个执行环境的规格,自己定义需要的内存空间、运算单位及储存空间等。14