云操作系统OpenStack 优势与问题并存
http://www.china-cloud.com/yunjishu/yunjiagou/20111209_8570.html
OpenStack是由Rackspace公司(世界最大的主机托管服务商之一)启动的一个开源项目,它旨在实现“云操作系统”,即一个具有部署和管理公有云、私有云以及混合云基础架构能力的平台。
云操作系统
在这里“操作系统”的含义很简单,即一个资源的控制、监测和协调的平台。另一方面,云操作系统也提供了一系列完整的API。互联网厂商和云计算提供商是OpenStack的潜在用户,这也同样为准备部署云计算基础架构的企业提供了一种选择。
OpenStack的优势
1.与开源社区的广泛合作
Cloud.com(云计算领域的领导厂商之一,已被Citrix收购)的CMO Pedar Ulander先生对OpenStack做出了高度评价:他表示“云计算已经成为一种新的运营模式,它对于人们如何消费、如何提供IT服务和从事IT行业是一个根本性的转变。作为一家崭露头角的小公司,我们在大约14个月之前开始运营我们的品牌——Cloud.com,OpenStack对我们现在的强劲发展起到了巨大的推动力。”
Cloud.com是OpenStack的创始公司之一。在开源社区中,有多名来自不同公司的志愿者,汇聚他们的智慧,推动了OpenStack项目的发展。OpenStack是一个非常类似于 Kernel.org或Eclipse.org技术社区,你可以在这里下载代码、进行各种社区活动。如果你对源代码感兴趣,那么将会有机会构建自己的OS,或者与其它正在对其进行商业化的公司合作。
2.积极的客户支持
Cloud.com十分注重对OpenStack项目的支持,Pedar Ulander表示在项目开发方面,我们添加了对微软Hyper-V虚拟化技术的支持。我们将一些我们自己的网络堆栈协议集成到平台之中,并在API兼容性方面做了许多工作。
而对于客户,我们对想采用OpenStack的客户提供了最大的支持。我们有几个客户对Swift服务很感兴趣,Swift是一个模仿了Amazon S3的存储服务。现在我们正围绕此技术构建管理框架,从而使得这些公司可以在OpenStack平台上提供类似于S3的服务。”
3.支持一切应用的统一平台
和其它OpenStack的创始公司一样,Cloud.com想让OpenStack成为一个可以支持一切应用的最终平台。“客户不希望等待,我们也没有让客户等待的理由。对于我们的平台,我们需要着重关心的是向后兼容。随着代码越来越成熟,它如何运作,API如何工作,以及作业如何调度成为需要被同等关注的问题。我们最终的目标是,对开发人员而言,你只需要支持一个平台;对企业而言,我们要让他们知道OpenStack就是最终的平台。”Pedar Ulander说到。
OpenStack目前的问题
1.项目中面临的风险
OpenStack的开发步伐充满激情,新版本带来的功能令人印象深刻,研发路线图也十分清晰,让人觉得真是满怀雄心壮志。但有许多类似的开源项目,在实现上其自身存在风险。
Rackspace公司的商务拓展总监Scott Sanchez与参与OpenStack项目的人员进行了许多交谈。他提到了150多名核心开发人员和138家供应商,但实际上仅有三分之一的公司以某种形式贡献了代码。数目看起来虽然不小,但要想维护社区项目的各个分支,这是必要的。
事实上,他们想让OpenStack成为最终平台的解决方案存在风险,甚至会变成一个很大的问题。一个明显的例子是对虚拟化管理程序的支持,OpenStack虽然支持几乎所有的虚拟化管理程序,不论是开源的(Xen、KVM)还是厂商的(Hyper-V、VMware),但对它们的支持仅仅是开启、关闭而已。
2.厂商之间的利益冲突
在许多情况下,你会发现许多参与OpenStack项目的供应商之间存在利益的冲突。对于项目中的方案,许多公司都有自己的替代解决方案。例如,存储解决方案提供商和Swift项目都旨在构建存储平台。存储供应商在项目中并没有免费、开放地提供技术支持,恰恰相反,他们只想确保API的兼容性,并以自己的收费产品替代开源解决方案。
3.兼容性与开发成本
OpenStack是一个框架,一个可以建立公有云和私有云的基础架构。这并不是一个现成的产品,要想开展基础架构方面的工作,企业需要顾问和开发人员。很多时候还需要第三方的集成工具。
此外,新版本的发布过于频繁,一些地方同老版本出现了兼容性问题。如果你对代码做了一些改进,却不被社区接受,那么你使用自己代码更新的版本将变得难以维护。
最后,得考虑一下OpenStack技术人员的成本。比如,在北美和欧洲的成本显然不同。
4.滞后的服务支持
OpenStack一跃而成为云计算市场的明星,但是要想让企业广泛采用它,就必须提供易于部署的产品,并提供明确的技术支持服务。