购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.3 云计算的三元认识论

随着云计算整个生态的不断成熟,今天的云计算应该包含三方面的内容:商业服务、计算范式与实现方式。即本书所倡导的核心内容:云计算既是一种商业模式,也是一种计算范式,还是一种实现方式。

1.3.1 云计算作为一种商业模式

首先,云计算服务代表一种新的商业模式,SaaS(软件即服务)、PaaS(平台即服务)和IaaS(基础设施即服务)是这种商业模式的代表表现形式。对于任何一种商业模式而言,除了理论上可行之外,还要保证实践上可用。因此,伴随着云计算服务理念的发展,云计算也形成了一整套的软件架构与技术实现机制,而我们常常听到的云计算平台就是这套机制的具体体现。

亚马逊公司销售包括图书、DVD、计算机、软件、电视游戏、电子产品、衣服、家具、计算资源等一切适合电子商务的“商品”。在推出EC2的时候,亚马逊也面临不少“这个零售商为什么想做这些”的质疑,但公司的CEO贝索斯对商业的概念理解明显要宽泛很多。贝索斯无疑认为不管是“PC+ 软件”,还是这种从“云”里取得服务的方式,不仅关乎技术的问题,还都是一种“商业模式”。

当初为了让网站能支持大规模的业务,亚马逊在基础设施建设上下了很大功夫,自然也积累了很多经验。为了将平时闲置的大量的计算资源也作为商品出售,亚马逊公司先后推出了 S3(简单存储服务)和 EC2 等存储、计算租用服务。贝索斯表示,“我们认为在某一天这也会是一项非常有意思的业务,所以我们这么做的目的很简单:我们认为这是个好业务。”虽然媒体认为这是贝索斯安全度过互联网泡沫之后的一笔冒险赌注,“亚马逊的 CEO 想要用他网站背后的技术来运行你的业务,但华尔街只想他看好自己的店面。”但EC2确实影响了整个行业,也影响了很多人,当时业界明显受到了震动。

在亚马逊之前,虽然有不少服务按现在来看都有云计算服务的特征,但即使是谷歌所提供的服务,仍然可以看作是互联网服务意义内的一种商业模式。而亚马逊推出IaaS之后,仿佛给互联网世界开了一扇窗,告诉人们,还可以这样来运营计算资源,还有一种新的商业模式,叫云计算。而那些与传统互联网服务形似神离的服务模式,也终于可以独立出来,找到自己归属的阵地——云计算服务。

美国加州大学伯克利分校在一篇关于云计算的报告中,就认为云计算既是指在互联网上以服务形式提供的应用,也是指在数据中心里提供这些服务的硬件和软件,而这些数据中心里的硬件和软件则被称为“云”。

美国国家标准与技术研究院(NIST)曾于2011年发布过一份《云计算概要及建议》 (DRAFT Cloud Computing Synopsis Recommendations ),对 PaaS、SaaS和IaaS等进行了详细说明。很多人认为SaaS必须运行在PaaS上,PaaS必须运行在IaaS上,但实际上三者之间并没有绝对的层次关系,它们都是一种服务,可以有层次叠加关系,也可以没有。

对于任何一种商业模式而言,除了理论上可行之外,还要保证实践上可用。因此,伴随着云计算服务理念的发展,云计算也形成了一整套技术实现机制,而云计算平台则是这套机制的具体体现,具体包括下面的计算范式和实现方式。

1.3.2 云计算作为一种计算范式

从计算范式的角度而言,云计算最早的出身,应该是超大规模分布式计算。例如雅虎为了解决系统对大规模应用的支撑问题,而设计的超大规模分布式系统,目的就在于将大问题分解,由分布在不同物理地点的大量计算机共同解决。但随着技术不断地发展和完善,云计算在解决具体问题时,借鉴了不少其他技术和思想,包括虚拟化技术、SOA(面向服务架构)理念等。云计算与这些技术有根本的差别,不仅体现在商业应用上,还体现在实现细节上。

云计算作为一种计算范式,其计算边界既由上层的经济因素所决定,也由下层的技术因素所决定。经济因素自上而下决定这种计算范式的商业形态,实现技术自下而上决定这种计算范式的技术形态。

作为云计算服务的计算范式又可以从两个角度来进一步理解:横向云体逻辑结构和纵向云栈逻辑结构。

1.横向云体逻辑结构

横向云体逻辑结构如图1.11 所示。从横向云体的角度看,云计算分为两个部分:云运行时环境(Cloud runtime environment)和云应用(Cloud application)。

图1.11 云计算的横向云体逻辑结构

而云运行时环境的组成则包括:处理(Processing)、存储(Storage)和通信(Communication),它们共同支撑起上层应用的各个方面。

从这个角度可以看到,云计算的结构和我们平常所使用到PC结构非常类似。也因为如此,云计算也被一些谷歌的科学家和工程师称为The Datacenter as a Computer。而本书的第4~6章分别从处理(虚拟化技术)、存储(分布式存储)和通信(网络)这三个维度来进行讲解。

2.纵向云栈逻辑结构

纵向云栈逻辑结构和前面的商业服务模式类似,也是由SaaS、PaaS和IaaS三部分构成,只不过这里将会从技术的角度去看。

SaaS、PaaS 和 IaaS 已经成为人们认知云计算的“识记卡片”,很多人会以一种层次化的方式来看待这三种技术层的关系,例如SaaS运行于PaaS之上,PaaS运行于IaaS之上。进一步还可以看到, IaaS层还包括了物理硬件(Physical hardware)和虚拟硬件(Virtual hardware);而PaaS层还包括了操作系统(Operating system)和中间件(Middle);而在SaaS层的应用软件(Application software)之上还有业务流程(Business process)。云计算的纵向云栈逻辑结构如图1.12所示。

图1.12 云计算的纵向云栈逻辑结构

从技术的角度来看,SaaS面向的服务对象与普通单机应用程序的客户并无明显区别,PaaS提供的是平台服务,因此用户对象是开发人员,需要了解平台提供环境下应用的开发和部署,而IaaS提供的是最底层的基础设施服务,因此它面对的用户是IT管理人员,即先由IT管理人员来进行配置和管理,然后才能在上面进行应用程序的部署等工作。

虽然人们习惯上会根据服务商所提供的内容对服务进行划分,但这三种服务模式之间并没有绝对清晰的界限。一些实力比较雄厚的云计算服务提供商可能会提供一些兼具 SaaS 和 PaaS 特征的产品,还有一些厂商尝试提供一整套云计算服务,进一步模糊三种服务模式在层级上的差异。

人们慢慢意识到通过互联网提供的服务有无限多的可能性,也使众多企业发现了互联网服务的新方向,于是在SaaS、PaaS、IaaS之外,又出现一些新的服务形式名称,例如商业流程即服务(Business Process as a Service)、数据库即服务(Database as a Service)和安全即服务(Security as a Service)等。

不可否认的是,这些新兴的云计算服务延展了互联网服务的概念,以更符合商业发展规律的方式提供信息化服务。如果说互联网的出现极大地满足了人们对知识的快速获取和分享需求,云计算服务就在传统互联网服务的基础上更大程度地满足了人们便捷获取、分享和创新知识的需求,并极大降低了成本。

而这种通过互联网以“更简单、更方便、更低成本”满足各种需求的“商业模式”的理念广泛化之后,一切可以通过互联网提供给用户的服务都在逐渐被服务提供商尝试“云”化,所以现在有了一个名词:XaaS。其中X指Anything或者Everything,代表“一切皆可为服务”。现在看来,各种新的可能性在商业上的实践,又不断发展、丰富着云计算服务可能蕴含的意义。

1.3.3 云计算作为一种实现方式

云计算最终的实现方式是需要新一代的软硬件技术推动,即目前流行的数据中心,并且朝着软件定义的数据中心(Software Defined Data Center,SDDC)所演进。数据中心是云计算实现的最终归属,包括全方位的计算、存储和通信需求。随着数据中心的运营,大家开始碰到一系列共同的问题,包括硬件资源利用率、扩展性、自动化管理等。硬件的更新换代需要经年累月的时间,通常很难满足快速发展的业务需求,软件定义才是现实可行的出路。因此,软件定义的数据中心迅速成为IT产业的热门关键词。

软件定义数据中心是一个比较新的概念,它将虚拟化概念(如抽象,集中和自动化)扩展到所有数据中心资源和服务,以实现IT 即服务(ITaaS)。在软件定义的数据中心中,基础架构的所有元素(网络,存储,CPU和安全)都是被虚拟化并作为服务交付的。

软件定义数据中心最核心的资源是计算、存储与网络,这三者无疑是基本功能模块。与传统的概念不同,软件定义数据中心更强调从硬件抽象出的能力,而并非硬件本身。

对于计算来说,计算能力需要从硬件平台上抽象出来,让计算资源脱离硬件的限制,形成资源池。计算资源还需要能够在软件定义数据中心范围内迁移,才能动态调整负载。虽然虚拟化并不是必要条件,但是目前能够实现这些需求的,仍非虚拟化莫属。对存储和网络的要求首先是控制层(Control Plane)与数据层(Data Plane)的分离,这是脱离硬件控制的第一步,也是能够用软件定义这些设备行为的初级阶段。之后,才有条件考虑如何将控制层与数据层分别接入软件定义数据中心。安全越来越成为数据中心需要单独考量的一个因素。安全隐患既可能出现在基本的计算、存储与网络之间,也有可能隐藏在数据中心的管理系统或者用户的应用程序中。因此,有必要把安全单独作为一个基本功能,与以上3种基本资源并列。

有了这些基本的功能还不够,还需要集中的管理平台把它们联系在一起,如图1.13所示。

图1.13 软件定义数据中心功能划分

自动化的管理是将软件定义数据中心的各基本模块组织起来的关键。这里必须强调“自动化”管理,而不只是一套精美的界面。软件定义数据中心的一个重要推动力是用户对于超大规模数据中心的管理,“自动化”无疑是必选项。本书第3章将会详细介绍软件定义数据中心。

综上所述,云计算服务、云计算范式和云计算实现之间没有相互依存的必然关系。如果以传统的底层架构,或类似超级计算等实现的服务具备云计算服务的三个特点:大用户群、永远在线,以及随时随地可接入,也可称为云计算;而云计算的架构和具体实现本身在设计上就针对了“大用户”“大数据”和“大系统”的问题提出了各种解决办法,这也是在提供云计算服务时会遇到的典型问题。所以,以云计算架构和实现支撑的云计算服务,不仅可以提高服务的效率,而且还会充分发挥云计算的能力和优势。

如同物种的进化,社会自身会不断向前推进发展,并因此而产生不同的递进式的服务模式和技术需求。人们对计算的需求促进了计算机的普及发展,对沟通分享的需求又促进了互联网的诞生。云计算也是一种社会需求推动的结果。在获取知识、不断创新和分享的渴望下,人们对信息服务和产品不断提出新的要求。云计算的出现,一方面解决了系统层面日趋凸显的压力问题,另一方面拓宽了网络应用的范畴和创新的可能性,在极大降低人们创造知识和分享知识的成本的前提下,进一步满足了人类社会获取、创新、分享知识的需求。因此,云计算是信息社会发展的必然产物。随着应用环境的发展,云计算会越来越普及,将为人类带来一个全新体验的信息社会。

工业革命的意义之一,在于使人们摆脱了生产条件的束缚,极大地解放物质产品和有形服务的生产力。云计算的出现,也在逐步使人们摆脱使用计算资源和信息服务时的束缚,降低知识获取的成本,也使知识的产生变得更容易、分享变得更方便,革命性地改变了信息产品与知识服务的生产力。因此,云计算与蒸汽机、内燃机及电力有同等重要的意义,会带来一场信息社会的工业革命。

现在来看,云计算仍然在发展的过程中,未来会发展到什么高度还未知。我们还在不断摸索和深化对云计算的理解,毕竟对于新事物都有一个“听闻而知见”的过程。对于现阶段的云计算而言,最需要的是支持,最怕的是轻视,或管窥蠡测地轻下结论。但无论如何,云计算已经对人类社会生产和生活的一些领域产生了积极的影响,相信随着技术的发展和服务的创新,云计算的时代将会很快到来,并最终影响我们每一个人。 g0JjD+zfvkay7EWkwWkaXp+TwR/5dA9eOmRHSllwjVA2/86hGUCXBzwN5iFajbdX

点击中间区域
呼出菜单
上一章
目录
下一章
×