OpenStack已引起了业内众多眼球的关注,这是一个承诺为建设公共云计算和私有云计算建立通用基础的开源项目。如果实现了OpenStack的大规模实施,其架构就可以进一步促进混合云计算的实施、有助于云计算联盟的建立以及对高效云计算运行相关的一些关键配置任务的支持。
它甚至可以改变我们看待云计算与网络之间关系的看法。但是,如同其他众多技术一样,OpenStack是否存在着被过度炒作的风险呢?这个问题可能是云计算中最为关键的问题了,同时它也是难以给出合适回答的。
OpenStack架构:一个具有竞争力的先天不足?
OpenStack最初是一个由NASA和Rackspace公司共同开发的项目,它旨在提供一个可以在成熟商业硬件产品上运行的云计算框架。OpenStack架构囊括了云计算中的各类模式,其中包括资源分配、机器-镜像配准与控制,以及数据存储等。目前,该项目已有超过150家以上的组织参与其中,这使得它成为创建基础设施即服务(IaaS)环境的最流行软件工具。
但是,作为一个商业化的云计算平台,其用户数量排名仍然落后于Amazon公司的弹性云计算(EC2),而微软公司的Azure平台也是一个强大的竞争对手。它的IaaS关注焦点、它所受到的广泛业界支持以及它所面临的激烈竞争都成为了OpenStack变得强大或弱小的重要因素。
IaaS是云计算的最基本形式,基本上它所提供的虚拟裸机就是一台服务器。因为它只是更换服务器和可能的本地存储器,所以,与平台即服务(PaaS)和软件即服务(SaaS)相比,IaaS的相对用户成本较高而与之相关的利润则较低。虽然潜在的云计算供应商和用户可以在IaaS之上构建PaaS和SaaS,但是很难衡量这些更为复杂配置的效益。但是,如果运营商们关注于OpenStack IaaS,他们可能会一跃踏上由数百竞争对手所提供的平台之上,这就可能将他们置于无法(除通过定价以外)区分他们云计算服务的窘境。
而反对意见是,OpenStack架构实际上可以有助于服务供应商通过为IaaS提供所有的基本基础而区分他们的云计算产品,让供应商专注于其他的功能和增强功能。OpenStack是开源的、易于集成的且已与众多有趣项目相关的,这些特点都促使其基本功能逐步提升。事实上,这些项目中有许多都拥有着交集,这一点恰恰促成了以特定市场机遇为目标各种各样基于OpenStack部署,从而为供应商们提供了区分各自产品与竞争对手产品的广阔空间。
一个云计算供应商的最大竞争对手并不是另一个基于OpenStack的供应商。而是Amazon公司。
与其他诸如Eucalyptus或Nebula等IaaS云计算工具不同,OpenStack架构还未关注EC2的兼容性。OpenStack计算所使用的应用程序编程接口(API)不同于EC2模式,但是OpenStack社区承诺保持现有应用程序的EC2兼容性。虽然,它可能仍然可以在运行在EC2的OpenStack上构建应用程序,反之亦然,但是它仍然可能构建与EC2完全不兼容的OpenStack 基于IaaS应用程序。
在镜像管理和存储方面,这两个平台之间存在着明显的差异。这就意味着两件事情:它可能更难以使用EC2和OpenStack云计算来支持客户,而采用OpenStack的云计算供应商不能指望把EC2用户迁往他们的服务而不对应用程序或他们自己的环境做出改变。
DevOps与OpenStack:路在何处?
从技术完整性的角度来说,OpenStack架构还存在着其他的问题。
可以扩展OpenStack资源控制的基本机制,以便于支持“容器配置”模型,在这样的模型中应用程序与容器及其规则相关。其中的规则包括如何为给定的应用程序分配资源以及在应用程序在服务时如何解决问题。这些项目都属于一个名为DevOps的通用目录,该目录定义了如何统一云计算应用程序开发、云计算配置与应用程序部署。在简单实用虚拟机以取代专用内部服务器的IaaS云计算中,DevOps并不是关键,但是,如果一个IaaS产品将用于构建特定云计算应用程序,那么它就是绝对至关重要的。
IBM公司近期对使用云计算重整业务流程(而不仅仅是外包现有应用程序)重要性的研究表明,云计算的未来可能在于它如何支持我们今天在数据中心中无法实现的工作,而不是简单地更新重复我们已完成的工作。这就意味着编写新的云计算应用程序。如果这样做了,那么如DevOps(促进软件元素的组件化和业务流程)的现代软件实践必须为这些元素提供一个在云计算中互相寻找对方的机制。如果一个IaaS云计算被用于托管PaaS或SaaS服务,那么具有同一应用程序灵活性是必不可少的。
这里还有一个问题:OpenStack的DevOps是不完整的,除非经过精心梳理,否则PaaS、SaaS或特定云计算应用程序就无法在OpenStack架构上实现轻松实施。
有人认为,OpenStack的所有问题是OpenStack所独有的问题,当然这样的说法并不完全公平。事实上,其中大多数问题都与云计算服务的IaaS模式相关。但现在,OpenStack应用可能是IaaS市场中唯一一个服务选择,但是从长期来说它可能并不是供应商的最佳服务选择。在考虑决策OpenStack架构是构建公共云计算基础设施最佳框架之前,所有这些都需要慎重考虑。