第3章 “互联网+”核心技术之二:云计算
3.1 概述
2006年谷歌公司CEO埃里克·施密特提出云计算概念后,云计算已经成为全球关注度最高的IT词汇之一。随着信息技术水平的不断发展,云计算将会成为引领未来整个信息系统建设的主导者之一。云计算具有一体化的信息平台和运营平台,这种全新交付模式将会对IT界产生重大的影响。云计算技术是硬件技术和网络技术发展到一定阶段而出现的一种新的技术模型,通常技术人员在绘制系统结构图时用一朵云的符号来表示网络,云计算这个奇怪的名字因此而来。云计算并不是对某一项独立技术的称呼,而是对实现云计算模式所需要的所有技术的总称。例如,分布式计算技术、虚拟化技术、网络技术、服务器技术、数据中心技术、云计算平台技术、分布式存储技术。甚至目前出现的大数据Hadoop、HPCC、Storm、Spark等技术也是架构在云计算平台之上。维基百科中对云计算的定义,云计算是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需求提供给计算机和其他设备,它就像我们日常生活中用水和用电一样,按需付费,而无须关心水、电是从何而来的一种资源管理模式。
2012年,国务院政府工作报告将云计算作为国家战略性新兴产业给出了定义:云计算是基于互联网的服务的增加、使用和交付模式,通常涉及通过互联网来提供动态、易扩展且经常是虚拟化的资源。云计算是传统计算机和网络技术发展融合的产物,它意味着计算能力也可作为一种商品通过互联网进行流通。
被普遍接受的云计算特点如下。
(1)超大规模
“云”具有相当的规模,谷歌云计算已经拥有100多万台服务器,Amazon、IBM、微软、Yahoo等的“云”均拥有几十万台服务器。企业私有云一般拥有数千台服务器。“云”能赋予用户前所未有的计算能力。
(2)虚拟化
云计算支持用户在任意位置、使用各种终端获取应用服务。所请求的资源来自“云”,而不是固定的有形实体。应用在“云”中某处运行,但实际上用户无须了解、也不用担心应用运行的具体位置。只需要一台笔记本或者一个手机,就可以通过网络服务实现我们需要的一切,甚至包括超级计算这样的任务。
(3)高可靠性
“云”使用了数据多副本容错、计算节点同构可互换等措施来保障服务的高可靠性,使用云计算比使用本地计算机可靠。
(4)通用性
云计算不针对特定的应用,在“云”的支撑下可以构造出千变万化的应用,同一个“云”可以同时支撑不同的应用运行。
(5)高可扩展性
“云”的规模可以动态伸缩,满足应用和用户规模增长的需要。
(6)按需服务
“云”是一个庞大的资源池,按需购买;“云”可以像自来水、电、煤气那样计费。
(7)极其廉价
由于“云”的特殊容错措施可以采用极其廉价的节点来构成云,“云”的自动化集中式管理使大量企业无须负担日益高昂的数据中心管理成本,“云”的通用性使资源的利用率较传统系统大幅提升,因此用户可以充分享受“云”的低成本优势,经常只要花费几百美元、几天时间就能完成以前需要数万美元、数月时间才能完成的任务。
云计算可以彻底改变人们未来的生活,但同时也要重视环境问题,这样才能真正为人类的进步做贡献,而不是简单的技术提升。
(8)潜在的危险性
云计算服务除了提供计算服务外,还必然提供了存储服务。但是云计算服务当前被私人机构(企业)垄断,而它们仅仅能够提供商业信用。对于政府机构、商业机构(特别像银行这样持有敏感数据的商业机构),选择云计算服务应保持足够的警惕性。对于信息社会而言,“信息”是至关重要的。另一方面,云计算中的数据对于数据所有者以外的其他云计算用户是保密的,但是对于提供云计算的商业机构而言确实毫无秘密可言。所有这些潜在的危险,是商业机构和政府机构选择云计算服务、特别是国外机构提供的云计算服务时不得不考虑的一个重要前提。
目前已经出现的云计算技术种类非常多,主要分类可以有以下几种。
(1)按技术路线分类
资源整合型云计算:这种类型的云计算系统在技术实现方面大多体现为集群架构,通过将大量节点的计算资源和存储资源整合后输出。这类系统通常能实现跨节点、弹性化的资源池构建,核心技术为分布式计算和存储技术。MPI、Hadoop、HPCC、Storm等都可以被分为资源整合型云计算系统。
资源切分型云计算:这种类型最为典型的就是虚拟化系统,这类云计算系统通过系统虚拟化实现对单个服务器资源的弹性化切分,从而有效地利用服务器资源,其核心技术为虚拟化技术。优点:用户的系统可以不做任何改变即可接入虚拟化技术的云系统,是目前应用较为广泛的技术,特别是在桌面云计算技术上应用得较为成功。缺点:跨节点的资源整合代价较大。KVM、VMware都是这类技术的代表。
(2)按服务对象分类
公有云:服务对象是面向公众的云计算服务,公有云对云计算系统的稳定性、安全性和并发服务能力有更高的要求。
私有云:主要服务于某一组织内部的云计算服务,其服务并不向公众开放,如企业、政府内部的云服务。
混合云:把公有云和私有云结合在一起的方式。在这个模式中,用户通常将非企业关键信息外包,并在公有云上处理,而掌握企业关键服务及数据的内容则放在私有云上处理。
社区云:公有云范畴内的一个组成部分。它由众多利益相仿的组织掌控及使用,其目的是实现云计算的一些优势,例如,特定安全要求、共同宗旨等。社区成员共同使用云数据及应用程序。
(3)按资源封装的层次分类
基础设施即服务(IaaS):把单纯的计算和存储资源不经封装地直接通过网络以服务的形式提供给用户使用。
平台即服务(PaaS):计算和存储资源经封装后,以某种接口和协议的形式提供给用户调用,资源的使用者不再直接面对底层资源。
软件即服务(SaaS):将计算和存储资源封装为用户可以直接使用的应用并通过网络提供给用户,SaaS面向的服务对象为最终用户,用户只是对软件功能进行使用,无须了解任何云计算系统的内部结构,也不需要用户具有专业的技术开发能力。
云计算和物联网在出现的时间上非常接近,以至于有一段时间云计算和物联网两个名词总是同时出现在各类媒体上。物联网的出现部分得益于网络的发展,大量传感器数据的收集需要良好的网络环境,特别是部分图像数据的传输更是对网络的性能有较高的要求。在物联网技术中传感器的大量使用使数据的生产实现自动化,数据生产的自动化也是推动当前大数据技术发展的动力之一。云计算技术将给物联网带来以下深刻的变革。
(1)解决服务器节点的不可靠性问题,最大限度地降低服务器的出错率。
(2)低成本的投入可以换来高收益,使限制访问服务器次数的瓶颈成为历史。
(3)让物联网从局域网走向城域网甚至是广域网,在更广的范围内进行信息资源共享。
(4)将云计算与数据挖掘技术相结合,增强物联网的数据处理能力,快速做出商业抉择。