OpenStack面临三大问题 难统IaaS江湖
和讯网 12年08月25日 17:54 【转载】 作者:冯海超 责任编辑:唐蓉
导读: 在过去一段时间里,OpenStack成为了云计算领域和开源世界的热门话题,并获得了全球IT界的广泛关注。在第四届云计算大会上OpenStack专场被各个领域的观众“挤爆”,可见其在民间的认知度。这个项目旨在打造易于部署、功能丰富且易于扩展的云计算平台,使之成为一个标准内核,一个数据中心通用的操作系统。
在过去一段时间里,OpenStack成为了云计算领域和开源世界的热门话题,并获得了全球IT界的广泛关注。在第四届云计算大会上OpenStack专场被各个领域的观众“挤爆”,可见其在民间的认知度。这个项目旨在打造易于部署、功能丰富且易于扩展的云计算平台,使之成为一个标准内核,一个数据中心通用的操作系统。
同时OpenStack有许多子项目,用于对云计算平台中的各种资源(如计算能力、存储、网络)提供敏捷管理。这些项目虽然刚刚起步,但却雄心勃勃。此外OpenStack也提供了对虚拟化技术的支持,并期望如Linux一样,使所有软件厂商都围绕着它进行工作,一统IaaS江湖。
随着更多厂商的支持,在全球范围内,围绕开源云计算和OpenStack项目的技术研究和产品推介会也越来越多。但是,如同其他众多技术一样,OpenStack是否存在着被过度炒作的现象和风险?在技术框架、厂商支持以及商业前景上,OpenStack还有多少路要走?
通过解构OpenStack的现状,并与其他开源云计算平台对比,我们发现OpenStack存在三个问题,其中自身架构的缺陷和商业价值的模糊,已经成为许多用户最为诟病的部分。
架构仍存缺陷
事实上,从技术完整性的角度来说,OpenStack架构还存在着很多问题。
OpenStack发布第一个版本Austin是在2010年7月,而今年5月Essex的发布是其第五个版本,核心项目从最初的2个增加到6个,且得到了3000多名开发社区贡献者的支持。但表面的繁荣不能掩盖OpenStack的种种问题。
据新浪云计算技术经理程辉在不久前的云计算大会上透露,目前OpenStack在计费和监控系统、项目管理协作系统(Dashboard )等方面都明显存在不足,真正到完整产品层面,这些部分甚至都要完全重写。此外,按照众多实际使用过OpenStack的用户反映,目前 OpenStack软件文档依旧“模糊而不成熟 ”,更多像是在研发阶段而尚未进入生产阶段,基本上不可能初次尝试就能实现安装,更不用说要配置和部署系统;一些开发工程师都认为,比较起CloudStack或者 Eucalyptus,“OpenStack更像是一个黑客,或者玩家们的产品”,其管理和控制界面也不够完善,还很难被称为成熟的产品化的IT产品。
对此,New River市场研究的总裁Bill Claybrook称:“我同使用它的人进行了对话,但是大多数人告诉我他们认为这项技术距离在生产环境中使用要18个月——他们认为OpenStack还没有为严肃的云计算应用做好准备。”
事实上,在IaaS领域,除了亚马逊的AWS一家独大以外,还有一些商业或开源组织的产品更成熟和稳定,著名的如CloudStack、Eucalyptus,且都已开源。然而时至今日,OpenStack的技术架构仍存缺陷且进展缓慢,而其他平台竞争力在提升。
4月5日,Citrix(思杰公司)宣布将所属CloudStack开源软件加入到Apache软件基金会(Apache Found)。这意味着CloudStack彻底开源,并对OpenStack形成“威胁”。CloudStack平台虽然目前的支持群体较小,社区也比较单纯,但其成熟度更高,并已在更具生产实际的环境中得到了充分验证,CloudStack至少已经帮助85个大规模生产性云平台实现了10亿美元以上的运营收入,典型的客户包括韩国、澳大利亚、印度的电信运营商等。在这个基础上,CloudStack完全有可能吸引更多的企业和开发者支持,与OpenStack一决高下。
此外,另一个开源私有云服务的平台Eucalyptus(桉树)刚刚完成了3000万美元的融资,该公司的云计算服务主要是通过用户自己的服务器来建立一套私有的云计算架构,为用户提供数据、服务质量和安全性上的更高保证。Eucalyptus的客户中不乏很多大牌客户,其中包括索尼、Puma、FDA、NASA、美国农业部、国防部等。而上个月Eucalyptus刚刚和Amazon达成合作,允许用户将私有云和公有云服务整合起来,充分利用双方整合的优势。 比起OpenStack,Eucalyptus的架构和产品也更加成熟。
根据市场研究公司Forrester的报告,全球云计算市场到2020年将增长至2410亿美元,远高于2011年的410亿美元。业内人士纷纷断言,IT企业对云计算的态度,早已从概念变成了实践。而迟迟不能提供完美解决方案的OpenStack,至少在目前的境况下将不会获得太多企业用户青睐,毕竟不是任何企业都有足够的技术实力和人手去“重写”一个个模块,他们需要的是更成熟的方案。
厂商貌合神离
根据最新公布的数据,已有183家公司和3386个开发者参与到OpenStack的开发之中;在这个名单中,既有惠普、戴尔、英特尔、思科等硬件厂商,也有微软、思杰等软件巨头,此外还聚集着包括国内新浪、趣游等在内的“中小厂商”。在开源社区,加入OpenStack似乎成了一种进入某种门槛的标识。
然而OpenStack的魅力真的有这么大么?通过观察其列出的厂商名单和对接产品列表,我们会发现,很多企业的资源贡献率都维持在极低的水平,甚至可以认为“另有所图”。
软件厂商方面,红帽软件是在OpenStack中比较活跃的参与者,但其一直都希望推自己的平台,对OpenStack的态度颇值得玩味,虽然目前也投入大量的人力去让Fedora17来支持OpenStack,但主流和新产品还是自己控制运营的——这样的情况也适用于微软的虚拟化框架Hyper-V,对微软来说,“确保OpenStack重新支持Hyper-V”是最重要的,这样有利于拓展客户。也就是说,软件厂商的选择是把部分产品开放给OpenStack,主流核心产品仍自己运营。这样做的目的不外乎是“不错过可能的机会”,并吸引新的客户。
就在上周,戴尔宣布在中国推出运行于Ubuntu之上,基于OpenStack平台的开源、预置型云解决方案——戴尔OpenStack云解决方案产品。该解决方案融合了 OpenStack 云操作系统、戴尔云优化PowerEdge C服务器、戴尔开发的Crowbar 部署和管理软件框架以及其他服务。而此前,Crowbar软件框架一直没有得到官方网站的正式支持。这个最新的例子很有代表性,毕竟戴尔是最早且力度很大地在支持和推进OpenStack项目,不过说起来,自家的服务器和软件服务仍然是其收费的主要项目。对此戴尔云计算及大数据集成解决方案部主任Dan Choquette在第四届云计算大会上表示:“Crowbar95%的答案是开源的,但戴尔保留了一些配置的绑定,在Crowbar的架构当中,这些软件包存在单独的协议,所以要获得这些绑定你需要购买戴尔的硬件,我们希望客户在戴尔的硬件上运行OpenStack。”当然了,几乎所有的硬件厂商在表示OpenStack的支持同时还是希望在构建标准化平台的硬件销售分一杯羹。
而积极参与该项目的“小厂商”则更期冀于获取廉价应用甚至推广平台,借此推出在各自市场的产品方案,至少要把几十万美元的赞助年费赚回来,实际上在社区活跃度和真正为平台做出的贡献都很有限。根据最新数据,尽管已经有超过70%的厂商都在OpenStack开发社区中提交了自己的代码,但其余130多家厂商发布代码贡献值加在一起都不如RackStack一家多。
而且在OpenStack中,厂商之间的利益冲突也很明显。在许多情况下,我们会发现许多参与OpenStack项目的供应商之间存在利益的冲突。对于项目中的方案,许多公司都有自己的替代解决方案。例如,存储解决方案提供商和Swift项目都旨在构建存储平台。存储供应商在项目中并没有免费、开放地提供技术支持,恰恰相反,他们只想确保API的兼容性,并以自己的收费产品替代开源解决方案。
事实上,OpenStack社区所面向的就是一个不能“直接货币化的软件堆栈”,这是很多厂商的想法,他们并非也不期望直接利用OpenStack来赚钱,而是通过它来构建一个具备更高价值的产品。或者说很多厂商更希望销售“云平台就绪的”硬件系统而不是OpenStack下的软件产品本身。
风险难以估测
所以,从目前来看,中小厂商贸然选择OpenStack可能面临的风险并不小。
一方面,云计算领域通用API接口之争目前并不明朗。如今在IaaS领域占据实质领先地位的亚马逊Web服务(AWS)有些“欺行霸市”,凭借60%的市场占有率,其API在许多时候成为了一种约定俗成的标准——很多公司使用,自然而然就成为一种“新兴标准”,毕竟AWS目前有大量第三方能够支持,还有一些熟练的云开发者推出了成熟应用,尽管围绕API的IP属于且只属于AWS。
也有一些使用AWS的API克隆出来的接口,比如思杰和Eucalyptus。Eucalyptus就是一个AWS的私有云版本,与AWS的API完全一致。因此,用户应该能够从Eucalyptus的技术转移代码到AWS上,而且无需为AWS IaaS公共云重写代码,因为Eucalyptus就是私有IaaS云。
OpenStack提供了AWS的一种替代,是一种完全不同API,利用的是类似的服务,像访问存储和计算资源。然而,OpenStack环境部署工具和方案目前仍旧比较少,虽然一旦成功,它将获得很多支持,但可能不是短期能实现的。
所以这是一场赌博,风险非常高。如果选择其中一条路,就是对于一种API做出承诺,这就意味着把应用绑定到这个API上,毕竟企业的IT决策者也不想经常更换自己的设备架构。因为当想要转移到其他云提供商或者是私有云环境,你就会发现缺少可移植性,需要进行大规模的重写工作,这样也意味着更多的风险和成本。
此外,如同任何一种被广泛应用的开源项目一样,OpenStack也有可能成为绑架用户汲取高利润的工具。
历史告诉我们,一个开源项目在对待软件堆栈的价值层时,该项目总是会被某个厂商所控制,该厂商会直接利用这个项目来赚钱。虽然从这个项目中会出现多种实现或者不同的发行版,但是这家单一厂商还是会成为此一领域的主要提供商。就Linux而言,就是红帽软件及其企业Linux产品。对开源数据库而言,MySQL也符合这种模式。而目前RackStack很有可能扮演这个角色。
另一方面,一个开源项目在对待软件堆栈的应用层时,该项目总是会被某个基金会所控制。在这些场合,该项目常常会成为某个更高价值产品的一部分,并因此来赚取利润。简而言之,这个开源项目本身只能间接地通过更高价值产品来赚钱。比较常见的例子,一个是Apache HTTP服务器,用在大多数商用应用服务器产品中,另一个是Eclipse,用在很多商用应用开发产品中。
从这个角度看,Eucalyptus不赞成一个云平台由竞争厂商组成的基金会来管理,理由是很清晰的,其CEO Marten Mickos称,Eucalyptus 平台以后将只提供一个开源版本,不再区分开源和企业版。Eucalyptus 3.1 将集成公司所有的技术,并完全开源,另外 Eucalyptus 的代码全面转到 Github 进行托管。Mickos 还表示,公司的客户正在以“一种令人惊讶的速度”增长。Eucalyptus的员工去年从15人猛增到了70人,还在伦敦设了一个新的总部,以应对欧洲、中东和非洲市场的增长势头。这种增长正好表明了Eucalyptus是可以直接货币化的。
到了这个层面,IT买家必须做出选择,Eucalyptus、OpenStack以及CloudStack等平台到底谁能笑到最后。从目前来看,Eucalyptus是一个真正有价值的云平台,因此是可以直接从软件堆栈的价值层赚钱的。Cloud Stack也想有这方面的特征胜出的可能性大增,而OpenStack则可能因成员间的相互竞争而最终落败——当然了,这还只是开源IaaS领域内部的竞争,事实上亚马逊的AWS仍占据着大部分市场和诸多用户,而谷歌的App Engine和最新推出的Compute Engine、微软的Windows Azure等产品的竞争力都不弱。
OpenStack还有没有机会?当然有而且机会很大,毕竟,OpenStack公共云的兼容性可以使企业在将来很容易的将数据和应用迁移到基于安全策略的、经济的和其他关键商业标准的公共云中。而且OpenStack的灵活性仍然是其最大的优点之一,其代码将在极为宽松自由的Apache 2许可下发布,这意味着任何第三方都可以重新发布这些代码,在其基础上开发私有软件并按照新的许可发布,给众多的云计算企业,留下了的更大的发展空间。此外,主要用Python编写的OpenStack代码质量相当高,很容易遵循,带有一个完全文档的API,用户可以使用JSON或者XML消息格式的不同组件的代码,这相当有利于项目的发展壮大。
但这一切都建立在OpenStack成功的基础上。所以目前最关键的是,OpenStack应该尽快推出一些成功的解决方案,并提供最好的应用范例,但是目前为止我们很难在近期看到这一情况的发生。而OpenStack如果继续这么“踌躇”下去,其成为下一个Linux、一统IaaS市场的梦想将成为空想。