云计算中的网络技术-虚拟化与云计算第3章 虚拟化的关键技术
背景云计算是继198年代大型计算机到客户端-服务器的大转变之后的又一种巨变。云计算(Cloud Computing)是分布式计算(Distributed Computing)、并行计算(Parallel Computing)、效用计算(Utility Computing)、网络存储(Network Storage Technologies)、虚拟化(Virtualization)、负载均衡(Load Balance)、热备份冗余(High Available)等传统计算机和网络技术发展融合的产物。概念云计算(cloudcomputing)是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。(原文:Cloud computing is a style of computing in which dynamically scalable and often virtualized resources are provided as a service over the Internet.)美国国家标准与技术研究院(NIST)定义:云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问, 进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。
XenSystem,以及在国外已经非常成熟的Intel 和IBM,各种“云计算”的应用服务范围正日渐扩大,影响力也无可估量。由于云计算应用的不断深入,以及对大数据处理需求的不断扩大,用户对性能强大、可用性高的4路、8路服务器需求出现明显提速,这一细分产品同比增速超过2%。IBM在这一领域占有相当的优势,更值得关注的是,浪潮仅以天梭TS85一款产品在2011实现了超过15%的市场占有率,以不到1%的差距排名IBM,HP之后,成为中国高端服务器三强。2012年浪潮斥资近十亿元研发的32路高端容错服务器天梭K1系统尚未面世,其巨大的市场潜力有待挖掘。原文:Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.云计算常与网格计算、效用计算、自主计算相混淆。
网格计算:分布式计算的一种,由一群松散耦合的计算机组成的一个超级虚拟计算机,常用来执行一些大型任务;效用计算:IT资源的一种打包和计费方式,比如按照计算、存储分别计量费用,像传统的电力等公共设施一样;自主计算:具有自我管理功能的计算机系统。事实上,许多云计算部署依赖于计算机集群(但与网格的组成、体系结构、目的、工作方式大相径庭),也吸收了自主计算和效用计算的特点。简史1983年,太阳电脑(Sun Microsystems)提出“网络是电脑”(“The Network is the Computer”),26年3月,亚马逊(Amazon)推出弹性计算云(Elastic Compute Cloud;EC2)服务。26年8月9日,Google首席执行官埃里克·施密特(Eric Schmidt)在搜索引擎大会(SES San Jose 26)首次提出“云计算”(Cloud Computing)的概念。Google“云端计算”源于Google工程师克里斯托弗·比希利亚所做的“Google 11”项目。27年1月,Google与IBM开始在美国大学校园,包括卡内基梅隆大学、麻省理工学院、斯坦福大学、加州大学柏克莱分校及马里兰大学等,推广云计算的计划,这项计划希望能降低分布式计算技术在学术研究方面的成本,并为这些大学提供相关的软硬件设备及技术支持(包括数百台个人电脑及BladeCenter与System x服务器,这些计算平台将提供16个处理器,支持包括Linux、Xen、Hadoop等开放源代码平台)。
而学生则可以通过网络开发各项以大规模计算为基础的研究计划。28年1月3日,Google宣布在台湾启动“云计算学术计划”,将与台湾台大、交大等学校合作,将这种先进的大规模、快速将云计算技术推广到校园。28年2月1日,IBM(NYSE: IBM)宣布将在中国无锡太湖新城科教产业园为中国的软件公司建立全球第一个云计算中心(Cloud Computing Center)。28年7月29日,雅虎、惠普和英特尔宣布一项涵盖美国、德国和新加坡的联合研究计划,推出云计算研究测试床,推进云计算。该计划要与合作伙伴创建6个数据中心作为研究试验平台,每个数据中心配置14个至4个处理器。这些合作伙伴包括新加坡资讯通信发展管理局、德国卡尔斯鲁厄大学Steinbuch计算中心、美国伊利诺伊大学香宾分校、英特尔研究院、惠普实验室和雅虎。28年8月3日,美国专利商标局网站信息显示,戴尔正在申请“云计算”(Cloud Computing)商标,此举旨在加强对这一未来可能重塑技术架构的术语的控制权。21年3月5日,Novell与云安全联盟(CSA)共同宣布一项供应商中立计划,名为“可信任云计算计划(Trusted Cloud Initiative)”。
21年7月,美国国家航空航天局和包括Rackspace、AMD、Intel、戴尔等支持厂商共同宣布“OpenStack”开放源代码计划,微软在21年1月表示支持OpenStack与Windows Server 28 R2的集成;而Ubuntu已把OpenStack加至11.4版本中。2011年2月,思科系统正式加入OpenStack,重点研制OpenStack的网络服务。特点云计算是通过使计算分布在大量的分布式计算机上,而非本地计算机或远程服务器中,企业数据中心的运行将与互联网更相似。这使得企业能够将资源切换到需要的应用上,根据需求访问计算机和存储系统。好比是从古老的单台发电机模式转向了电厂集中供电的模式。它意味着计算能力也可以作为一种商品进行流通,就像煤气、水电一样,取用方便,费用低廉。最大的不同在于,它是通过互联网进行传输的。被普遍接受的云计算特点如下:(1) 超大规模“云”具有相当的规模,Google云计算已经拥有1多万台服务器, Amazon、IBM、微软、Yahoo等的“云”均拥有几十万台服务器。企业私有云一般拥有数百上千台服务器。“云”能赋予用户前所未有的计算能力。(2) 虚拟化云计算支持用户在任意位置、使用各种终端获取应用服务。
所请求的资源来自“云”,而不是固定的有形的实体。应用在“云”中某处运行,但实际上用户无需了解、也不用担心应用运行的具体位置。只需要一台笔记本或者一个手机,就可以通过网络服务来实现我们需要的一切,甚至包括超级计算这样的任务。(3) 高可靠性“云”使用了数据多副本容错、计算节点同构可互换等措施来保障服务的高可靠性,使用云计算比使用本地计算机可靠。(4) 通用性云计算不针对特定的应用,在“云”的支撑下可以构造出千变万化的应用,同一个“云”可以同时支撑不同的应用运行。(5) 高可扩展性“云”的规模可以动态伸缩,满足应用和用户规模增长的需要。(6) 按需服务“云”是一个庞大的资源池,你按需购买;云可以像自来水,电,煤气那样计费。(7) 极其廉价由于“云”的特殊容错措施可以采用极其廉价的节点来构成云,“云”的自动化集中式管理使大量企业无需负担日益高昂的数据中心管理成本,“云”的通用性使资源的利用率较之传统系统大幅提升,因此用户可以充分享受“云”的低成本优势,经常只要花费几百美元、几天时间就能完成以前需要数万美元、数月时间才能完成的任务。云计算可以彻底改变人们未来的生活,但同时也要重视环境问题,这样才能真正为人类进步做贡献,而不是简单的技术提升。
(8) 潜在的危险性云计算服务除了提供计算服务外,还必然提供了存储服务。但是云计算服务当前垄断在私人机构(企业)手中,而他们仅仅能够提供商业信用。对于政府机构、商业机构(特别像银行这样持有敏感数据的商业机构)对于选择云计算服务应保持足够的警惕。一旦商业用户大规模使用私人机构提供的云计算服务,无论其技术优势有多强,都不可避免地让这些私人机构以“数据(信息)”的重要性挟制整个社会。对于信息社会而言,“信息”是至关重要的。另一方面,云计算中的数据对于数据所有者以外的其他用户云计算用户是保密的,但是对于提供云计算的商业机构而言确实毫无秘密可言。所有这些潜在的危险,是商业机构和政府机构选择云计算服务、特别是国外机构提供的云计算服务时,不得不考虑的一个重要的前提。演化云计算主要经历了四个阶段才发展到现在这样比较成熟的水平,这四个阶段依次是电厂模式、效用计算、网格计算和云计算。电厂模式阶段:电厂模式就好比是利用电厂的规模效应云计算中的网络技术,来降低电力的价格,并让用户使用起来更方便,且无需维护和购买任何发电设备。效用计算阶段:在196年左右,当时计算设备的价格是非常高昂的,远非普通企业、学校和机构所能承受,所以很多人产生了共享计算资源的想法。
1961年,人工智能之父麦肯锡在一次会议上提出了“效用计算”这个概念,其核心借鉴了电厂模式,具体目标是整合分散在各地的服务器、存储系统以及应用程序来共享给多个用户,让用户能够像把灯泡插入灯座一样来使用计算机资源,并且根据其所使用的量来付费。但由于当时整个IT产业还处于发展初期,很多强大的技术还未诞生,比如互联网等,所以虽然这个想法一直为人称道,但是总体而言“叫好不叫座”。网格计算阶段:网格计算研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多低性能的计算机来处理,最后把这些计算结果综合起来攻克大问题。可惜的是,由于网格计算在商业模式、技术和安全性方面的不足,使得其并没有在工程界和商业界取得预期的成功。云计算阶段:云计算的核心与效用计算和网格计算非常类似,也是希望IT技术能像使用电力那样方便,并且成本低廉。但与效用计算和网格计算不同的是,2014年在需求方面已经有了一定的规模,同时在技术方面也已经基本成熟了。影响软件开发云计算环境下,软件技术、架构将发生显著变化。首先,所开发的软件必须与云相适应,能够与虚拟化为核心的云平台有机结合,适应运算能力、存储能力的动态变化;二是要能够满足大量用户的使用,包括数据存储结构、处理能力;三是要互联网化,基于互联网提供软件的应用;四是安全性要求更高,可以抗攻击,并能保护私有信息,五是可工作于移动终端、手机、网络计算机等各种环境。
云计算环境下,软件开发的环境、工作模式也将发生变化。虽然,传统的软件工程理论不会发生根本性的变革,但基于云平台的开发工具、开发环境、开发平台将为敏捷开发、项目组内协同、异地开发等带来便利。软件开发项目组内可以利用云平台,实现在线开发,并通过云实现知识积累、软件复用。云计算环境下,软件产品的最终表现形式更为丰富多样。在云平台上,软件可以是一种服务,如SAAS,也可以就是一个Web Services,也可能是可以在线下载的应用,如苹果的在线商店中的应用软件,等。对软件测试在云计算环境下,由于软件开发工作的变化,也必然对软件测试带来影响和变化。软件技术、架构发生变化,要求软件测试的关注点也应做出相对应的调整。软件测试在关注传统的软件质量的同时,还应该关注云计算环境所提出的新的质量要求,如软件动态适应能力、大量用户支持能力、安全性、多平台兼容性等。云计算环境下,软件开发工具、环境、工作模式发生了转变,也就要求软件测试的工具、环境、工作模式也应发生相应的转变。软件测试工具也应工作于云平台之上,测试工具的使用也应可通过云平台来进行,而不再是传统的本地方式;软件测试的环境也可移植到云平台上,通过云构建测试环境;软件测试也应该可以通过云实现协同、知识共享、测试复用。
软件产品表现形式的变化,要求软件测试可以对不同形式的产品进行测试,如Web Services的测试,互联网应用的测试,移动智能终端内软件的测试等。云计算的普及和应用,还有很长的道路,社会认可、人们习惯、技术能力,甚至是社会管理制度等都应做出相应的改变,方能使云计算真正普及。但无论怎样,基于互联网的应用将会逐渐渗透到每个人的生活中,对我们的服务、生活都会带来深远的影响。要应对这种变化,我们也很有必要讨论我们业务未来的发展模式,确定我们努力的方向。应用云物联“物联网就是物物相连的互联网”。这有两层意思:第一,物联网的核心和基础仍然是互联网,是在互联网基础上的延伸和扩展的网络;第二,其用户端延伸和扩展到了任何物品与物品之间,进行信息交换和通信。物联网的两种业务模式:1.MAI(M2M Application Integration), 内部MaaS;2.MaaS(M2M As A Service), MMO, Multi-Tenants(多租户模型)。随着物联网业务量的增加,对数据存储和计算量的需求将带来对“云计算”能力的要求:1.云计算:从计算中心到数据中心在物联网的初级阶段,PoP即可满足需求;2. 在物联网高级阶段,可能出现MVNO/MMO营运商(国外已存在多年),需要虚拟化云计算技术,SOA等技术的结合实现互联网的泛在服务:TaaS (everyTHING As A Service)。
云安全云安全(Cloud Security)是一个从“云计算”演变而来的新名词。云安全的策略构想是:使用者越多,每个使用者就越安全,因为如此庞大的用户群,足以覆盖互联网的每个角落,只要某个网站被挂马或某个新木马病毒出现,就会立刻被截获。“云安全”通过网状的大量客户端对网络中软件行为的异常监测,获取互联网中木马、恶意程序的最新信息,推送到Server端进行自动分析和处理,再把病毒和木马的解决方案分发到每一个客户端。十种方法1. 密码优先如果我们讨论的是理想的情况的话,那么你的用户名和密码对于每一个服务或网站都应该是唯一的,而且要得到许可。理由很简单:如果用户名和密码都是同一组,那么当其中一个被盗了,其它的帐户也同样暴露了。2.检查安全问题在设置访问权限时,尽量避开那些瞥一眼就能看出答案的问题,例如,Facebook头像。最好的方法选择一个问题,而这个问题的答案却是通过另一个问题的答案。例如,如果你选择的问题是“小时候住在哪里”,答案最好是“黄色”之类的。3.试用加密方法无论这种方法是否可行,它都不失为一个好的想法。加密软件需要来自用户方面的努力,但它也有可能需要你去抢夺代码凭证,因此没有人能够轻易获得它。
4.管理密码这里讲的是,你可能有大量的密码和用户名需要跟踪照管。所以为了管理这些密码,你需要有一个应用程序和软件在手边,它们将会帮助你做这些工作。其中一个不错的选择是LastPass。5.双重认证在允许用户访问网站之前可以会有两中使用模式。因此除了用户名和密码之外,唯一验证码也是必不可少的。这一验证码可能是以短信的形式发送到你的手机上,然后进行登录。通过这种方法,即使其它人得到了你的凭证,但他们得不到唯一验证码,这样的他们的登录就会遭到拒绝。6.不要犹豫,立刻备份当涉及到云中数据保护时,人们被告知在物理硬盘上进行数据备份时,这听起来可能有些奇怪,但这确实是需要你去做的事。这就是为什么需要一遍一遍反复思考;你应该直接在你的外部硬盘上备份数据,并随身携带。7.完成即删除为什么有都无限的数据存储选择时,我们还要找麻烦去做删除工作呢?原因在于,你永远不知道有多少数据会变成潜在的危险。如果来自于某家银行帐户的邮件或警告信息时间太长,已经失去了价值,那么就删除它。8. 注意登录的地点有时我们从别人设备上登录的次数,要比从自己设备上多得多。当然,有进我们也会忘记他人的设备可能会保存下我们的信息,保存在浏览器中。
9.使用反病毒、反间谍软件尽管是云数据,但使用这一方法的原因在于你第一次从系统中访问云。因此,如果你的系统存在风险,那么你的在线数据也将存在风险。一旦你忘记加密,那么键盘监听就会获得你的云厂商密码,最终你将失去所有。1.时刻都要管住自己的嘴巴永远都不要把你的云存储内容与别人共享。保持密码的秘密性是必须的。为了附加的保护功能,不要告诉别人你所有使用的厂商或服务是什么。云存储云存储是在云计算(cloud computing)概念上延伸和发展出来的一个新的概念云计算中的网络技术,是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。 当云计算系统运算和处理的核心是大量数据的存储和管理时,云计算系统中就需要配置大量的存储设备,那么云计算系统就转变成为一个云存储系统,所以云存储是一个以数据存储和管理为核心的云计算系统。云游戏云游戏是以云计算为基础的游戏方式,在云游戏的运行模式下,所有游戏都在服务器端运行,并将渲染完毕后的游戏画面压缩后通过网络传送给用户。在客户端,用户的游戏设备不需要任何高端处理器和显卡,只需要基本的视频解压能力就可以了。
就现今来说,云游戏还并没有成为家用机和掌机界的联网模式,因为至今X36仍然在使用LIVE,PS是PS NETWORK ,wii是wi-fi。但是几年后或十几年后,云计算取代这些东西成为其网络发展的终极方向的可能性非常大。 如果这种构想能够成为现实,那么主机厂商将变成网络运营商,他们不需要不断投入巨额的新主机研发费用,而只需要拿这笔钱中的很小一部分去升级自己的服务器就行了,但是达到的效果却是相差无几的。对于用户来说,他们可以省下购买主机的开支,但是得到的确是顶尖的游戏画面(当然对于视频输出方面的硬件必须过硬。)。你可以想象一台掌机和一台家用机拥有同样的画面,家用机和我们今天用的机顶盒一样简单,甚至家用机可以取代电视的机顶盒而成为次时代的电视收看方式。云计算云计算与大数据从技术上看,大数据与云计算的关系就像一枚硬币的正反面一样密不可分。大数据必然无法用单台的计算机进行处理,必须采用分布式计算架构。它的特色在于对海量数据的挖掘,但它必须依托云计算的分布式处理、分布式数据库、云存储和虚拟化技术。服务形式云计算可以认为包括以下几个层次的服务:基础设施即服务(IaaS),平台即服务(PaaS)和软件即服务(SaaS)。
IaaS:基础设施即服务IaaS(Infrastructure-as-a- Service):基础设施即服务。消费者通过Internet可以从完善的计算机基础设施获得服务。例如:硬件服务器租用。PaaS:平台即服务PaaS(Platform-as-a- Service):平台即服务。PaaS实际上是指将软件研发的平台作为一种服务,以SaaS的模式提交给用户。因此,PaaS也是SaaS模式的一种应用。但是,PaaS的出现可以加快SaaS的发展,尤其是加快SaaS应用的开发速度。例如:软件的个性化定制开发。SaaS:软件即服务SaaS(Software-as-a- Service):软件即服务。它是一种通过Internet提供软件的模式,用户无需购买软件,而是向提供商租用基于Web的软件,来管理企业经营活动。例如:阳光云服务器。隐私云技术要求大量用户参与,也不可避免的出现了隐私问题。用户参与即要收集某些用户数据,从而引发了用户数据安全的担心。很多用户担心自己的隐私会被云技术收集。正因如此,在加入云计划时很多厂商都承诺尽量避免收集到用户隐私,即使收集到也不会泄露或使用。但不少人还是怀疑厂商的承诺,他们的怀疑也不是没有道理的。
不少知名厂商都被指责有可能泄露用户隐私,并且泄露事件也确实时有发生。事实上,国家在大力提倡建设云计算中心的同时,对云技术与互联网的安全性也高度重视。发改委等7部联合发布《关于下一代互联网“十二五”发展建设的意见》中强调:互联网是与国民经济和社会发展高度相关的重大信息基础,加强网络与信息安全保障工作,全面提升下一代互联网安全性和可信性。加强域名服务器、数字证书服务器、关键应用服务器等网络核心基础设施的部署及管理;加强网络地址及域名系统的规划和管理;推进安全等级保护、个人信息保护、风险评估、灾难备份及恢复等工作,在网络规划、建设、运营、管理、维护、废弃等环节切实落实各项安全要求;加快发展信息安全产业,培育龙头骨干企业,加大人才培养和引进力度,提高信息安全技术保障和支撑能力。技术1、编程模式2、海量数据分布存储技术3、海量数据管理技术4、虚拟化技术5、云计算平台管理技术发展21世纪1年代云计算作为一个新的技术趋势已经得到了快速的发展。云计算已经彻底改变了一个前所未有的工作方式,也改变了传统软件工程企业。以下几个方面可以说是云计算现阶段发展最受关注的几大方面:1、云计算扩展投资价值云计算简化了软件、业务流程和访问服务。
比以往传统模式改变的更多,这是帮助企业操作和优化他们的投资规模。这不仅是通过降低成本,有效的商业模式,或更大的灵活性操作。有很多的企业通过云计算优化他们的投资。在相同的条件下,企业正扩展到更多创新与他们的IT能力,这将会帮助企业带来更多的商业机会。2、混合云计算的出现企业使用云计算(包括私人和公共)来补充他们的内部基础设施和应用程序。专家预测展开全文