1.3 云计算体系架构

云计算包含什么内容,范围如何?业界没有太统一的说法。美国标准与技术研究院(National Institute of Standard and Technology, NIST)给出了参考体系架构,如图1-4所示。

图1-4 NIST云计算参考体系架构

该参考架构很明确地提出了与云计算相关的五大类参与者:云计算消费者(Consumer)、计算服务提供商(Provider)、云计算审计(Auditor)、云计算中介代理(Borker)、云计算载体(Carrier),如表1-1所示。

表1-1 云计算参与者分类

1.3.1 云计算参与者

在云计算参与者中,国内大的云计算提供商会更专注,其他的可能会对此少有关注和不进行深入研究。下面为读者深入剖析不同参与者的关注点,也期望可以给读者以及国内的云计算从业人员以启发,挖掘出新的商机。

云计算消费者,分为以下几类:软件服务(SaaS)的消费者、平台服务(PaaS)的消费者、基础设施服务(IaaS)的消费者,如图1-5所示。

图1-5 云计算消费者

基础设施云计算服务(IaaS)的消费者关注和使用:

◆ 弹性计算(Compute),以亚马逊弹性虚拟机EC2、rackspace的虚拟机、国内盛大云的虚拟机为代表。消费者从传统的IDC服务器租用和服务器托管转型为计算能力的租用。弹性计算依托虚拟化技术得以快速发展,本书将重点剖析弹性计算虚拟机的原理及开源实现方案(OpenStack Nova)。

◆ 云存储(Storage),以国外亚马逊的S3、Google的Google Driver、苹果的iCloud、微软的Sky Driver,以及国内盛大云的云存储为代表。云存储的特征是海量数据、简单的键值对(key/value)的对象存储方式实现数据的存储管理。基于亚马逊云存储S3接口开发,诞生了dropbox、box等知名云存储服务提供商。OpenStack Swift也是参照亚马逊S3设计开发的。

◆ 内容分发网络(Content Delivery Network, CDN)和亚马逊CloudFront。

◆ 容灾备份,将不再采用独立自有IT数据备份,而是转由专门云计算服务提供商提供数据备份(异地多份)和容灾管理服务。

相对应的基础设施云计算服务提供商(IaaS Provider)可以将弹性计算、云存储、CDN、容灾备份等作为市场切入点。国际上亚马逊、rackspace等已经成为该领域的领头羊,国内该行业尚处于起步阶段。

PaaS的消费者更多面向开发类用户群,其关注和使用:

◆ 快速开发和测试、应用集成部署。谷歌App Engine就是很典型的PaaS服务应用,国内新浪SAE也是PHP开发部署的PaaS平台优秀代表。基于PaaS服务,研发人员无须自行构建研发环境,通过PaaS提供的开发、部署、测试、代码托管等一系列云服务实现软件系统。

◆ 数据库中间件等应用。有关系型数据库、非关系型数据库、分布式缓存、消息队列等服务。典型代表有亚马逊的DynamoDB、RDS、SimpleDB等数据库,缓存服务ElastiCache,消息服务SQS等;国内的SAE的MySQL等。

◆ 商业智能分析。诸如基于hadoop的map/reduce大型分布式计算,已经在国际和国内得到了相当多的应用。也是目前PaaS方面发展最为火热、并且落地应用最广的一类PaaS服务。

PaaS为开发者提供了应用程序的开发环境和运行环境,将开发者从烦琐的IT环境管理中解放出来,自动实现应用程序的部署和运行,使开发者能够将精力聚焦于应用程序的开发,极大地提升了应用的开发效率。PaaS允许个人/公司创建个性化的应用,也允许独立软件厂商或者其他的第三方机构针对垂直细分行业创造新的解决方案。

相对IaaS和PaaS而言,SaaS的范围更广,广义上来说,传统的业务系统均可以部署至公网,用户通过网络访问业务系统,无须自行构建、存储相关数据服务。具有代表性的是salesforce,其将CRM业务系统云化,使用CRM服务的企业无须自行构建、维护CRM业务系统,仅需在salesforce上开通账户,即可通过网络使用salesforce提供的服务。

云计算服务提供商将云计算服务交付消费者。对于IaaS服务提供商,需要将其物理服务器、网络、存储资源通过诸如虚拟机、虚拟网络等方式提供给消费者,并且有相关服务级别管理(SLA)。

国外亚马逊已经成为IaaS服务提供商的业界标杆,几乎所有公有云IaaS服务提供商提供的云计算服务均参照亚马逊构建,OpenStack是诸多参考亚马逊的开源实现解决方案之一。国内电信领域、民营IDC、互联网企业均有发展成为IaaS服务提供商的机会。

1.3.2 云计算部署方式

按照云计算的部署和使用模式,也可以分为3种:面向互联网公众开放的公有云(图1-6),面向企业内部用户开放的私有云(图1-7),以及兼顾上述两种模式的混合云。

图1-6 公有云

公有云是指为外部客户提供服务的云,它所有的服务是通过互联网提供给外部用户使用的。目前,典型的公有云有微软的Windows Azure Platform、亚马逊的AWS,以及国内的阿里巴巴、盛大云等。对于使用者而言,公有云的最大优点是,其所应用的程序、服务及相关数据都存放在公有云的提供者处,自己无须做相应的投资和建设。目前最大的问题是,由于数据不存储在自己的数据中心,用户一般会对其安全性和不可控性有所顾虑:

◆ 安全性由专业团队维护。安全是多方面的,包括技术手段和管理手段。公有云服务提供商较大多企业而言更关注安全性,专业的团队运营和运维更有保障。而管理手段方面,往往原有的传统IT管理模式存在漏洞和不完善的地方,公有云服务提供商更关注和侧重这些方面。所有安全性的顾虑基本上随着云计算行业的不断发展和完善而消失。美国政府的不少业务系统也逐渐迁移至云上。

◆ 高水平运维团队保障可用性。这一点也可以看成云计算服务提供商服务水平保障SLA能力体现,从概率统计上来说,专业IT运维团队的能力比大多数中小型企业的运维水平更高,所以可用性方面顾虑也可以消除。

私有云是指企业内部使用的云,它所有的服务只供公司内部人员或分支机构使用。私有云的部署比较适合于有众多分支机构的大型企业或政府部门。随着这些大型企业数据中心的集中化,私有云将会成为它们部署IT系统的主流模式。私有云有两种模式:

◆ 一种模式是将云部署在企业内部网络,因此其数据安全性、系统可用性都可由自己控制。但缺点是投资较大,尤其是一次性的建设投资较大。私有云的运营维护等也需要高昂的持续投资。就国内环境而言,这种模式适用于原有IT支撑数据中心规模就很大、相对于安全性和可控性而言投资成本次要或不敏感的企业,例如,电信运营商、银行、军队等,如图1-7所示。

图1-7 部署至内部网络的私有云

◆ 另一种模式是部署在云服务提供商上,即公有云上,基于网络隔离等技术,通过VPN专线访问的私有云。这类私有云一般称为VPC(Virtual Private Cloud),如图1-8所示。一般来说由云计算服务提供商提供。

图1-8 部署至云服务提供商的私有云

混合云是指供外部用户和内部用户共同使用的云,它所提供的服务既可以供别人使用,也可以供自己使用。相比较而言,混合云的部署方式对提供者的要求较高。也可以认为混合云是介于公有云和私有云之间的一种云,如图1-9所示。

图1-9 同时部署在私有云、公有云的混合云