云计算,从概念到实践
据统计,当前比较经典的云计算定义超过50种。不同的专家、企业都从自己的角度对云计算的概念进行了定义。其中得到比较认可、比较权威的是美国国家标准技术研究所(NIST)的定义。
NIST对云计算的定义:云计算是一个模型,这个模型可以方便地按需访问一个可配置的计算资源(例如网络、服务器、存储设备、应用程序以及服务)的公共集。这些资源可以被迅速提供并发布,同时最小化管理成本或服务提供商的干涉。云模型由五个基本特征、三个服务模型和四个发布模型组成。
那么该如何解析NIST定义的云模型呢?
首先让我们了解一下云模型的基本特征。
——按需自助服务。视客户需要,可以从每个服务提供商那里单方面地向客户提供计算能力,譬如服务器时间和网络存储,而这些是自动进行的无需干涉的。
——广泛的网络访问。具有通过规范机制网络访问的能力,这种机制可以使用各种各样的瘦和胖客户端平台(例如携带电话、笔记本电脑以及PDA)。
——资源共享。提供商提供的计算资源被集中起来通过一个多客户共享模型来为多个客户提供服务,并根据客户的需求,动态地分配或再分配不同的物理和虚拟资源。有一个区域独立的观念,就是客户通常不需要控制而需要知道被提供资源的确切位置,但是可能会在更高一层的抽象(例如国家、州或者数据中心)领域指定资源的位置。资源的例子包括存储设备、数据加工、内存、网络带宽和虚拟机等。
——快速的可伸缩性。具有快速、可伸缩性提供服务的能力。在一些场景中,所提供的服务可以自动、快速地横向扩展,在某种条件下迅速释放以及快速横向收缩。对于客户来讲,这种能力用于使所提供的服务看起来好像是无限的,并且可以在任何时间购买任何数量。
——可度量的服务。云系统通过一种可计量的能力杠杆在某些抽象层上自动地控制并优化资源以达到某种服务类型(例如存储、处理、带宽以及活动用户账号)。资源的使用可以被监视和控制,通过向供应商和用户提供这些被使用服务报告以达到透明化。
该云模型提供了三种服务模型。
一是软件即服务(SaaS)。客户使用的服务商提供的应用程序运行在云基础设施上。这些应用程序可以通过各种各样的客户端设备来访问,例如基于WEB的电子邮件。客户不管理或者控制底层的云基础架构,包括网络、服务器、操作系统、存储设备,甚至独立的应用程序机能,在可能异常的情况下,限制用户可配置的应用程序设置。
二是平台即服务(PaaS)。客户使用云供应商支持的开发语言和工具,开发出应用程序,发布到云基础架构上。客户不管理或者控制底层的云基础架构,包括网络、服务器、操作系统或者存储设备,但是能控制发布应用程序和可能的应用程序运行环境配置。
三是架构即服务(IaaS)。向客户提供处理、存储、网络以及其他基础计算资源,客户可以在上面运行任意软件,包括操作系统和应用程序。用户不管理或者控制底层的云基础架构,但是可以控制操作系统、存储、发布应用程序,以及可能限度的控制选择的网络组件(例如防火墙)。
该云模型的发布形态有几种:私有云、社区云、公有云、混合云。
在云计算的具体实践中,一般是从某几个方面开始涉入,与具体的应用结合,找到一条通过云计算技术来提升效率的成功之路。
我国在战略上非常重视云计算的这一波浪潮,在国家多个部门的“十二五”规划中,都把云计算提到了一个非常重要的位置,并在多个城市、多个企业开始了云计算的试点。在云计算的试点实践中,如何有规划、分步骤地开始云计算系统的建设,是一个重要问题。
企业云计算系统的建设过程与安全保障
在国内云计算系统的建设实践中,比较典型的推进方式是:从私有云开始,从IaaS服务开始,逐渐扩展到云计算应用的其他方面。
如左图所示,某大型集团企业的云计算系统规划如下:
1.通过资源层的整合,将核心计算域的服务器资源整合成计算资源池,形成云计算数据中心,并通过引入服务器虚拟化技术来提高资源使用效率。
2.通过统一管理平台,解决云计算数据中心的资源分配与管理,实现动态弹性部署和备份迁移管理。
3.开发云计算系统的用户管理和用户自服务界面,为集团内部各部门和各业务系统提供IaaS服务。
在私有云和IaaS服务的基础上,扩展到针对集团内部的PaaS/SaaS服务,再扩展到对外提供服务。
在整个云计算系统的实施过程中,相应的安全保障措施是对客户提出的一项巨大挑战。根据云计算系统的不同建设阶段,提出了相应的安全保障措施。
一是在计算资源整合与服务器虚拟化阶段,安全保障的关键是解决服务器虚拟化所带来的安全网关部署位置问题。
二是在统一管理平台阶段,安全保障的重点是解决虚拟服务器动态部署所带来的安全功能伴随迁移问题。
三是在用户自服务接口开发阶段,安全保障的重点是统一身份认证系统的建设和运维审计问题。
服务器虚拟化之后的安全设备部署
服务器虚拟化对安全网关设备的部署提出了新的要求。
一是针对传统的安全设备,需要支持多实例(也称为虚拟安全网关),每个实例支持独立的安全引擎和安全管理配置界面,以支持云计算系统中的多个用户使用。
二是在同一台物理服务器内部的不同虚拟化服务器之间的通信流量不经过网络,需要一种新形态的安全设备,部署在虚拟操作系统内部,可以对虚拟服务器之间的访问进行控制。