什么是云计算?

由于云计算的广泛热炒,很多东西都牵强附会地被“云”了。各种厂商和机构也纷纷给出了自己的云计算的定义,纷纷扰扰,混乱不堪。在NIST(National Institute of Standards and Technology,美国国家标准和技术研究院)的定义之前,比较普遍的提法是把云计算划分为一系列的“X as a Service”业务。

NIST的Peter Mell和Tim Grance在2009年4月提出了一个云计算的定义,这可能是目前唯一一个得到广泛认同和支持的定义。NIST对云计算的定义如下:

云计算是一种能够通过网络以便利的、按需付费的方式获取计算资源(包括网络、服务器、存储、应用和服务等)并提前其可用性的模式,这些资源来自一个共享的、可配置的资源池,并能够以最省力和无人干预的方式获取和释放。

这种模式具有:5个关键功能,4种部署方式,3种服务模式


五大核心特点

  • 按需自助服务(On Demand Self-Service)

    供应商的资源保持高可用和高就绪的状态,用户可以按需方便地自助地获得资源

  • 广泛的网络访问(Broad Network Access)

    可以通过各种网络渠道,以统一标准的机制(如浏览器,相同的API等)获取服务,但是客户端可以是多种多样的瘦客户端或富客户端(例如移动电话、笔记本电脑、PDA等)

  • 动态的资源池(Resource Pooling)

    供应商的计算资源可以被整合为一个动态资源池,以多租户模式服务所有客户,不同的物理和虚拟资源可根据客户需求动态分配。服务商需实现资源的位置无关性,客户一般不需要知道所使用的资源的确切地理位置,但在需要的时候客户可以指定资源位置(如哪个国家,哪个数据中心等)的要求

  • 快速弹性(Rapid Elasticity)

    可以迅速、弹性地提供服务,能快速扩展,也可以快速释放实现快速缩小。对客户来说,可以租用的资源看起来似乎是无限的,可在任何时间购买任何数量的资源

  • 可计量的服务(Measured Service)

    服务的收费可以是基于计量的一次一付,或基于广告的收费模式。系统以针对不同服务需求(例如,CPU时间、存储空间、带宽、甚至按用户账号的使用率高低)来计量资源的使用情况和定价,以提高资源的管控能力和促进优化利用。整个系统资源可以通过监控和报表的方式对服务提供者和使用者透明化


四种部署方式

私有云(Private Cloud)

云基础设施被某单一组织拥有或租用,可以坐落在本地(on Premise)或(防火墙外的)异地,该基础设施只为该组织服务

社区云(Community Cloud)

或称机构云,云基础设施被一些组织共享,并为一个有共同关注点的社区或大机构服务(例如,任务、安全要求、政策和准则等),社区云可以被该社区拥有和租用,也可以坐落在本地、(防火墙外的)异地或多地。社区云可能是一组私有云通过×××(Virtual Private Network)连接到一起的VPC(Virtual Private Cloud),是混合云的一种

公有云(Public Cloud)

云基础设施被一个提供云计算服务的运营组织所拥有,该组织将云计算服务销售给一般大众或广大的中小企业群体

混合云(Hybrid Cloud)

云基础设施是由两种或以上的云(私有云、社区云或公有云)组成,每种云仍然保持独立实体,但在标准的或专有的技术将它们组合起来,具有数据和应用程序的可移植性(例如,可以通过负载均衡技术来应对处理突发负载(Cloudburst)

通过以上四种云计算系统部署方式的解析,我们发现为什么要把“社区云”作为一种基本的“云”单独列出来,NIST并没有说明,也许是考虑到美国联邦政府所辖的部委和委办局之间的共享,如DHS(国土安全部)和DOD(国防部)之间的整合需要社区云,不过它似乎可以被两个或多个私有云组合的混合云所包含,属于混合云的一种。或者它是一种对应×××网络或Extranet的VPC或混合云,而私有云对应Internet,公有云对应Internet。对社区云的理解有很多不同的观点,比较混乱,一种观点认为社区云的用户只能通过内网(Internet)访问,另一种观点正好相反。


三种服务模式

SaaS:软件即服务

提供给客户的服务是运营商运行在云计算基础设施上的应用设施,用户可以在各种设备上通过瘦客户端界面访问,如浏览器。消费者不需要管理或控制任何云计算基础设施,包括网络、服务器、操作系统、存储,等等。

PaaS:平台即服务

提供给消费者的服务是把客户采用提供的开发语言和工具(例如Java、Python、.Net等)开发的或收购的应用程序部署到供应商的云计算基础设施上。客户不需要管理和控制底层的云基础设施,包括网络、服务器、操作系统、存储等,但客户能控制部署的应用程序,也可能控制运行应用程序的托管环境配置。

IaaS:基础设施即服务

提供给消费者的服务是对所有设施的利用,包括处理、存储、网络和其他基本的计算资源,用户能够部署和运行任意软件,包括操作系统和应用程序。消费者不管理或控制任何云计算基础设施,但能控制操作系统的选择、储存空间、部署的应用,也有可能获得有限制的网络组件(例如,防火墙、负载均衡器等)的控制。