郭涛
伴随着OpenStack在中国的高速发展,中国移动、国家电网、中国银联、中海油、中国电信等行业巨头纷纷部署OpenStack云平台。中国公司在OpenStack社区的抢眼表现也为中国力量强势崛起吹响了冲锋的号角。
2月23日,OpenStack Ocata版本正式发布,这是OpenStack的第15个版本,也是开发周期最短的一个版本。通过分析此次Ocata版本的全球贡献排名,我们欣喜地发现,中国力量在OpenStack社区的地位举足轻重。针对Ocata这个版本,中国企业的贡献排名普遍提升,多个厂家的贡献排名进入全球Top20甚至全球前十。数据截止日期2017年2月24日。
Completed Blueprints(蓝图完成数)
首先来看Completed Blueprints这个指标。它代表一个公司希望在OpenStack项目里实现的功能和需求,反映了真正推动OpenStack发展的想法和贡献程度。这一维度对衡量一个公司的技术实力是最有意义的。
从Completed Blueprints的排名来看,华为从去年的排名第6跃居全球第1,九州云也从全球第10快速上升到全球第5,中兴则排名全球第7,相比Newton版本的第22名有突飞猛进的提升。
此外进入Top50的中国公司还有麒麟、易捷思达、海云捷迅和有云,与Newton版本相比,中国公司进入Top50的数量有所增加。由此可见,中国企业越来越注重在OpenStack技术的具体功能和需求方面加大投入力度。
Resolved Bugs(修复缺陷数)
接下来看看Resolved Bugs,这个指标代表修复的代码缺陷数量,反映了一个公司解决实际问题的能力,对衡量社区贡献的价值具有重要参考意义。
Resolved Bugs的数据显示,华为和九州云修复的Bug数量均已超过200,接近300,贡献排名稳居全球Top10,中兴也进入全球排名前十,解决的代码缺陷数量超过100。当然,中国公司与Mirantis的贡献相比差距还很大。希望未来中国的厂商能早日赶上领头羊。
此外,麒麟、易捷思达、海云捷迅、中国移动、华三和浪潮也都进入了Top50,修复的缺陷数量都达到两位数,这充分体现了中国公司在OpenStack技术实践方面的积累越来越多,整体实力逐步增强。当然,这也与OpenStack在中国的快速、广泛传播分不开。
Commits(提交代码次数)
Commits,提交代码数,代表的是一个公司的贡献次数,也是被广泛使用的一个指标。由于在OpenStack社区曾经出现过有公司利用这一指标刷榜的行为,用这一指标评判一个公司实力已经慢慢不被业界所采用,但仍不失为一个参考指標。
从Ocata版本的Commits排名来看,中兴、华为和九州云都进入全球前十,分列第7、8、9位,提交次数和排名比Newton版本都有了大幅提升;而易捷思达、麒麟、浪潮、云途腾和海云捷迅的排名也在前30名以内,这也是中国企业在社区方面的投入不断加大的一个结果。
Reviews(代码审阅数)
最后再来看一下Reviews,即代码审阅数。这一指标反映的是一个公司对代码的审阅被项目的Core审阅后可以merge进项目的数量。由于OpenStack项目的Review通常都需要两个Core(至少也是一个Core)通过,所以Reviews也被业界公认为判断公司贡献程度的一个参考指标。
在这一指标上,华为和九州云再次进入全球前十,而海云捷迅、中兴和浪潮都进入全球Top20,相比Newton版本排名都有提高。其他如易捷思达、麒麟和联想也都进入了Top50。
综合上述四个指标来看,中国公司对OpenStack社区的贡献情况,Ocata版本比Newton版本有了大幅提升。华为、九州都已跻身全球前十,中兴、麒麟、易捷思达、海云捷迅和浪潮则紧随其后,进入Top20阵营。华为在蓝图完成数(Completed Blueprints)排名指标上更是跃居全球第一。这对提升中国力量在社区的话语权和影响力是一个积极的信号。
伴随着OpenStack在中国的高速发展,中国移动、国家电网、中国银联、中海油、中国电信等行业巨头纷纷部署OpenStack云平台,中国OpenStack市场的发展速度远远超过其他国家。
九州云都做了什么?
针对Ocata这个版本,九州云贡献了什么?九州云一直积极投身于OpenStack社区,去年被OpenStack基金会接纳成为黄金会员,并作为基金会首批官方COA合作伙伴,积极传播OpenStack最佳实践。在社区贡献方面,九州云继Newton版本后,排名再次创历史新高,各项指标均进入全球前十,完成蓝图数(Completed Blueprints)贡献排名提升至全球第五。另外,九州云拥有6位OpenStack Core和一个PTL,在数量上超过了国内其他创业公司。
在行业案例方面,九州云不但参与完成了中国最大规模公司的OpenStack云平台案例——国家电网新一代云平台的开发,以及20多个省市云平台的部署,还积极开拓NFV市场,赢得了中国移动NFV的联合开发项目。这也是国内第一个基于OpenStack的NFV案例。另外,九州云还帮助国内某知名银行和国内最大的信用卡发卡机构完成了云平台的建设。在过去一年里,九州云还服务了江苏国税、陆港国际、三峡银行、华金证券、八戒金融等上百个不同行业的客户,实现了在能源、金融、电信、政务、医疗、制造等多个行业的全面开花。
在Ocata版本中,九州云对Cloudkitty、Freezer、Kolla、Murano、Senlin、Solum等多个项目模块的贡献量跃居全球排名前三,并在Ceilometer、Glance、Horizon、Oslo、Rally、Security、Tacker、Telemetry、Trove和Vitrage等项目中,代码贡献排名全球前十,这体现了九州云在网络、应用发布、集群服务、容器部署、容灾、计费等多个领域的实力和积累。
Kolla项目是OpenStack容器化的未来,使得OpenStack易于部署、易于升级维护,做到开箱即用。为了解决大规模环境中修改配置文件时间过长的问题,Ocata版本对Reconfigure代码进行重构,涉及Kolla所有的项目,每个集成的项目都需要进行修改,工作量非常大。
对于开源项目来说,上游的情况是必须密切关注的。Heka社区宣布停止维护,导致Kolla项目的日志收集组件需要替换。由于K8s采用Fluentd来收集日志,所以最终社区经过讨论,决定使用Fluentd来替换Heka,最终目标是做到无缝切换。
利用这个机会,正好把Kolla的所有项目日志都重新整理一遍。用户如果从Newton版本升级到Ocata版本,并且已经启用日志服务,那么就需要把Heka替换,无缝迁移。
对于OpenStack社区来说,Ironic裸机管理是一个重点,也是用户的刚需。Kolla其实在Mitaka版本就已经整合了Ironic模块,不过由于这个项目涉及硬件管理,一直都是问题多多。而且在Newton版本里,加入了多租戶管理,Kolla一直都没法很好地支持Ironic。九州云把Ironic所有的问题全部解决了,包括多租户、代理访问等,真正意义上实现了裸机和虚拟机工作在同一个网络里。
九州云的工程师还将Karbor、Freezer、Solum三个项目集成到Kolla中。
OpenStack项目容器化后,大大简化了升级的难度,不过由于各个项目模块的变化,还需要做大量的工作才能实现平滑升级。这次Nova项目引入了很多新的特性,例如Placement API、Cell等默认启用的这些功能,导致升级需要做更多的工作。
Tacker项目主要用于解决NFV编排和VNF管理的问题,驱动OpenStack从SDN迈向NFV,成为下一代智能通信网络底层承载的标准选择。随着NFV和SDN越来越受到业界的关注,Tacker作为OpenStack社区的唯一一个NFV MANO项目,也受到了社区的关注和重视。Tacker可与OpenStack紧密集成,并充分利用OpenStack组件形成的系统。
九州云和中国移动共同研发,由Redhat和Windriver提供NFVI,完成了OpenO、Tacker和OpenStack的集成。利用OpenO的图形化建模工具,形成移动CRAN的网络服务模型。通过OpenO的NFVO,连接到Tacker VNFM,调用Tacker形成网络服务。九州云通过NUMA、DPDK等技术来支持CRAN各个网络协议栈VNF。这也是国内第一个基于OpenStack的NFV案例。该项目还作为中国移动的参展项目参加了在西班牙巴塞罗那举行的世界移动通信展,向全球的用户和运营商进行展示。
Freezer项目是数据备份容灾模块。数据备份是生产环境必不可少的模块之一 。九州云积极推动Freezer项目各项功能的开发和应用部署,主要包括Freezer支持将数据备份到Ceph存储中;不仅仅将数据存储在OpenStack中,还可以将OpenStack虚拟机和云硬盘中的数据备份到像NAS这样的脱离OpenStack之外的设备中,保证数据安全;租户备份功能已经基本实现,可以备份整个租户的所有云硬盘,以及云主机,从而提高客户的整体备份效率;完全支持OpenStack Keystone v3版本。
Cloudkitty项目提供了多种灵活的计费模型,可满足实际应用场景的各种计费需求。Ocata版本中的Cloudkitty项目主要是使计费查询API更加精细化,并更新了Collector模块,提升了用户体验,有望在全球最大的能源管理企业中部署实践。