1.4 云的分层:按使用分类
为了更好地讨论其他类型的云,让我们首先深入了解一点关于SaaS演变和获得认可的背景。
在商用计算的早期,计算机资源非常稀缺,主要的使用模型更像公共设施。这和今天云计算提供的设施概念是两码事;它更像在干旱季节时村里的社区用井。社区成员可以使用并且分配一定量的水。如今的云计算,我们回归到了计算作为一种可以使用的公共设施这种概念,但它已不再是稀罕之物。
千禧年之交发生的业务模型向SaaS的转变昭示着云运动的到来。之前,它称为SaaS,即由应用服务提供商(Application Service Provider,ASP)出租的应用;此时,传统的企业许可证模型被彻底颠覆了,并且你以一种随用随付的方式购买,成本规模跟使用挂钩,不用再预先投入大量资本。你无需供应软硬件;相反,服务在需要时开启。在这种方式被更名为SaaS之后,它逐渐演变成了接下来要探讨的几种新产品。
我们可以按几种方式对云计算分类。本书提出了一种分类法,其中云服务被统一描述成“X即服务”,这里的X可以是硬件(Hardware)、基础设施(Infrastructure)、平台(Platform)、框架(Framework)、应用(Application),甚至是数据中心(Datacenter)。供应商并没有就这些名称的含义达成一致,同样也没有就把自己描述成属于这些分类中的哪些类达成一致。抛开这些,我们将在图1.6中重现一个有趣的层级,它阐述了这些术语的使用,列出了具有代表性的供应商(这里列出的某些供应商,仅仅只是因为历史原因而存在)。
关于云类型更简单的表示请参见图1.7,它强调了不同云产品的重要方面和关键特点。
随着各供应商试图提供丰富云生态环境的各种服务,云技术也在演变。这些服务覆盖了从用于构建云基础设施的硬件系统到集成服务和基于云的应用全范围。来源:Peter Laird,http://peterlaird.blogspot.com
在“X即服务”分类法中,云服务按照给具体服务的消费者的预打包程度进行分类。IaaS以最原始的方式提供计算能力,因而也提供了最大的灵活度。在最高层级,灵活度虽然减小了,但同时要管理的复杂度也相应降低了
XaaS通常意味着什么?它意味着按需使用,需要极少或者没有资本开销。它意味着可以远程消费,涉及互联网上的任何存取方式,并且采用度量计费模型。让我们逐一了解图1.7中代表不同云类型的方框。首先是IaaS。
1.4.1 基础设施即服务
XaaS中的最低层级称为基础设施即服务(Infrastructure as a Service,IaaS),有时也称为硬件即服务(Hardware as a Service,HaaS)。IaaS的一个好例子就是亚马逊的弹性计算云(EC2)。
IaaS的用户操作在可用粒度的最低层级,拥有的预打包功能最少。一家IaaS提供商会供应不同操作系统偏爱的虚拟机映像,它们可由开发者剪裁以运行任何定制或成品应用。这些应用可以原生地运行于选择的操作系统上,并且可出于特殊目的保存起来。用户可以在需要时将这些虚拟机映像实例上线并使用,它们的使用一般按小时度量和计费。
IaaS环境中的存储和带宽也是可消费商品。存储一般是按每月每GB计费,带宽则按流入和流出系统的流量计费。
对于正在使用的云资源,IaaS提供了极大的灵活度和控制力,但开发者要想在此环境中有效地进行操作,一般要做更多工作。第2章将深入IaaS,了解它的运作细节。
1.4.2 平台即服务
平台即服务(Platform as a Service,PaaS)的基本计费方式跟IaaS的有些类似:使用的CPU、带宽和存储,并且运作于类似的模型下。PaaS的例子包括Google App Engine和Microsoft Azure。主要的区别是,PaaS不需要跟系统底层进行很多交互。你不需要直接跟虚拟操作系统交互或对其进行管理。相反,你可以让平台把这种交互抽象掉,只集中精力编写应用。这种简化通常是以灵活度的减少为代价的,并且要用特定PaaS提供商支持的语言来编码。
1.4.3 软件即服务和框架即服务
本章前面已经说过,软件即服务(Software as a Service,SaaS)指的是一种按需使用的服务和应用。Salesforce.com就是这样的例子。框架即服务(Framework as a Service,FaaS)是附属于SaaS产品的一种环境,允许开发者扩展SaaS应用预置的功能。Force.com就是FaaS的一个例子,它可以扩展Salesforce.com的SaaS产品。
FaaS产品对于扩充和增强底层SaaS系统的能力非常有效。你可以用FaaS给某个组织创建定制、特殊化的应用,也可以创建供该SaaS产品任意用户使用的通用应用。类似PaaS环境,开发者在FaaS环境里只能使用该FaaS支持的特殊语言和API。
1.4.4 作为公有云先驱的私有云
除了前面讨论过的分类,本书还介绍了一些跟云的不同分类相关的重要概念。私有云(private cloud)是通用云计算的一个变种,在这里,企业或组织内部的数据中心资源对公众是不可用的,即这些计算资源池实际上并不是对任何订阅用户可用。相反,它由组织控制,主要惠及该组织的其他成员。像亚马逊和Google这样的提供商提供的公有云,最初是作为这些公司的私有云使用的,主要供其内部其他部门单位使用(分别对应图书零售和互联网搜索)。
要是一家组织有充足的用户并且有足够的整体能力,私有云实现的行为非常像公有云,尽管规模要小。在过去10年里,有大量资本投入到数据中心资源上,一个重要的运动就是重新定位这些资产,使其朝着云使用模型的方向发展。
混合云(hybrid cloud)是私有云和公有云的结合体。你可以在私有云的容量耗尽,需要供应额外容量的情况下采用它。