CY12-Q1 OpenStack, OpenNebula,Eucalyptus,CloudStack社区活跃度比较
CY12-Q1 OpenStack, OpenNebula,Eucalyptus,CloudStack社区活跃度比较
CY12-Q1 Community Analysis — OpenStack vs OpenNebula vs Eucalyptus vs CloudStack
本文是对《虚拟化管理软件比较 -- 综合篇》、《开源IaaS软件的比较 — 构架、功能、社区、商业及其他》和《Eucalyptus, OpenStack, OpenNebula社区活跃度比较》的补充和更新。
This blog entry is an amendment and update to my previous blog entries on related topics, which were written in Chinese.
本文的目的是通过论坛和邮件列表的原始数据对OpenStack、OpenNebula、Eucalyptus和CloudStack项目的社区活跃度进行分析和比较。主要的原始数据是自2009年来这四个项目的官方论坛和邮件列表每个月所产生的讨论主题数、帖子数、以及参与讨论的总人数(邮件地址或者用户账号)。为了获取这些数据,我写了一个Java程 序自动地从这四个项目的网站下载了所有的论坛和邮件列表信息,并且从这些信息中分析提取出我所需要的数据。程序提取的数据被导入MySQL数据库中以便进行统计分析,统计分析的结果通过LibreOffice生成分析图表。
The objective of this article is to compare the OpenStack, OpenNebula, Eucalytpus and CloudStack user and developer communities, base on the communications between community members in the form of mailing lists or pubic forum discussions. The data being discussed include the total number of topics (threads), messages (posts), and participants (unique email addresses or registered members). To obtain the above-mentioned data, a Java program was written to retrieve all the forum posts and mailing list messages into a MySQL database for further processing. The analysis results were presented in the form of graphs generated by LibreOffice.
与Eucalyptus项目相关的论坛数据来自http://open.eucalyptus.com/forum,在此次分析中仅采用Eucalyptus General和Eucalyptus Support两个论坛的数据;与OpenStack项目相关的邮件列表数据来自http://www.openstack.org/community/,在此次分析中仅采用Developer List的数据;与OpenNebula项目相关的邮件列表数据来自http://www.opennebula.org/community:mailinglists,在此次分析中仅采用Users、Ecosystem和Interoperability邮件列表的数据;与CloudStack项目相关的数据是其邮件列表(http://www.cloudstack.org/discuss/mailing-lists.html)和技术论坛(http://www.cloudstack.org/forum/1-main-forum.html)的总和,但是在邮件列表部分仅包括User/Admin和Development两个部分的数据。忽略其他论坛或者邮件列表数据的原因包括(1)它们的性质更接近于官方公告而非社区讨论;(2)相关讨论的主题数、帖子数、总人数过少,基本上不会影响分析结果;或者(3)自动生成的VCS日志信息并不代表真实的社区活动。
Eucalyptus related data were obtained from http:/open.eucalyptus.com/forum. In this study we only utilize the data from “Eucalyptus General” and “Eucalyptus Support ” sub-forums. OpenStack related data were obtained from http://www.openstack.org/community/. In this study we only utilize the data from the Developer List. OpenNebula related data were obtained from http://www.opennebula.org/community:mailinglists. In this study we only utilize the data from Users, Ecosystem, and Interoperability lists. CloudStack related data were obtained from http://www.cloudstack.org/discuss/mailing-lists.html and http://www.cloudstack.org/forum/1-main-forum.html, but among all the mailing lists only the User/Admin and Development mailing lists were included in this analysis. The reasons to ignore other forums or mailing lists include (1) the content of the specific forum or mailing list appears to be public announcements rather than community discussions, (2) the number of topics, messages, and participants is too small to have any impact on the conclusion, and (3) aumatically generated VCS logs does not represent real community activities.
图1 和图2分别是OpenStack, OpenNebula,Eucalyptus和CloudStack四个项目自2009年来每个月所产生的讨论主题数和帖子数。可以看出,2011年1 月之前,与Eucalyptus和OpenNebula项目相关的讨论相对较多,刚刚问世不久的OpenStack和CloudStack项目并没有受到开发者的重视。2011年1 月之后,与OpenStack和CloudStack项目相关的讨论逐渐增多。OpenStack项目于2011年6 月到9 月间全面超越Eucalyptus和OpenNebula项目,CloudStack项目则于同一时间段达到与Eucalyptus和OpenNebula同等水平。2011年9 月之后,与Eucalyptus、OpenNebula、CloudStack项目相关的讨论主题数和帖子数基本上在同一个水平上,与OpenStack项目相关的讨论主题数比前两者高出30%左右,与OpenStack项目相关的帖子数则比前三者高出150%左右。
Figure 1 and 2 represent the monthly number of topics (threads) and posts (messages) since 2009. Before January 2011, there were a lot of discussions on Eucalyptus and OpenNebula, while the new-born OpenStack and CloudStack were bearly mentioned. Starting from January 2011, OpenStack and CloudStack related discussions began to grow. OpenStack gradually exceeded Eucalyptus and OpenNebula during June~Setptember 2011, and CloudStack climed to the same level as Eucalyptus and OpenNebula during the same period. After September 2011, the monthly number of topics and messages were very close for Eucalyptus, OpenNebula and CloudStack. In terms of monthly number of topics, OpenStack is about 30% higher than the other three. In terms of monthly number of messages, OpenStack is about 150% higher than the other three.
通常来讲,一个讨论主题得到的回复数越多,表明该主题的讨论越深入。一个论坛或者邮件列表如果只有主帖而没有回复,说明这个社区的参与程度很低。因此,平 均意义上的“讨论帖子数/讨论主题数”则反映了一个社区的参与程度,这里我们暂且称之为参与度(Participation Ratio)。图3 展示了这四个社区自2009年来每个月的“讨论帖子数/讨论主题数”。可以看出,OpenNebula、Eucalyptus和CloudStack三个社区的参与度基本上是接近的。OpenStack社区的参与度从2010年6 月项目开始之日起就高于其他三个社区社区。除了个别异常月份之外,OpenStack社区的参与度通常是其他三者的两倍甚至是更高。
Generally speaking, the number of replies to a specific topic represents the attention being received, and the depth of discussion for that particular topic. When the number of master posts (the original post that started a particular topic) is more than the number of replies, it is safe to conclude that the participation of the forum or mailing list is very low. Therefore, the ratio between “the number of posts” and “the number of topics” represents the participation rate of an online community. In this study we call this ratio the Participatin Ratio.
Figure 3 shows the monthly participation ratio of OpenStack, OpenNebula, Eucalyptus and CloudStack communities since 2009. It can be seen that the participation ratios of OpenNebula, Eucalyptus and CloudStack were very close. The participation ratio of OpenStack is much higher than the other three since the very beginning in June 2010. Except for a couple of months, the participation ratio of OpenStack is usualy 100% higher than the other three, or even more.
图4 所示为OpenStack,、OpenNebula、Eucalyptus和CloudStack四个项目每个月参与论坛或者邮件列表讨论的总人数。 在2011年1 月之前,OpenNebula和Eucalyptus社区的参与讨论人数远多于OpenStack和CloudStack社区。2011年1 月至6 月间,OpenStack和CloudStack项目的参与讨论人数逐步攀升,而OpenNebula和Eucalyptus社区的参与讨论人数开始出现下降趋势。目前OpenStack项目的每月参与讨论人数比OpenNebula和Eucalyptus社区高2 倍左右,CloudStack项目的每月参与讨论人数则于OpenNebula和Eucalyptus社区持平。
Figure 4 shows the monthly number of participants for OpenStack, OpenNebula, Eucalyptus and CloudStack communities. Before January 2011, the monthly number of participants of OpenNebula and Eucalyptus were much higher than OpenStack and CloudStack. During January~June 2011, the OpenStack and CloudStack numbers continued to grow, while the OpenNebula and Eucalyptus numbers were declining. Currently the monthly number of participants for OpenStack is 3 times as big as that of OpenNebula and Eucalyptus, the monthly number of of participants for CloudStack is at the same level as OpenNebula and Eucalyptus.
累计社区人口(简称社区人口)指的是曾经通过论坛或者邮件列表参与过讨论的用户和开发者总数。(不包括在论坛或者邮件列表中注册但是从未公开参与讨论的社区成员。)这些人或多或少地使用过相关产品,但是并不代表他们目前还是活跃用户,一个新版本的发布,或者一次市场推广活动,都有可能将他们中的一部分重新激活。图5 所示为OpenStack、OpenNebula、Eucalyptus和CloudStack四个项目的社区人口增长趋势。具有18个月先发优势的OpenNebula和Eucalyptus项目在社区人口上领先于发力较晚的OpenStack和CloudStack项目。目前,OpenStack、OpenNebula、Eucalyptus和CloudStack项目的社区人口分别为700, 850,1950和650。从本图所示的社区人口增长趋势来看,OpenNebula和Eucalyptus项目的社区人口增长已经放缓,而OpenStack和CloudStack项目的社区人口增加正在加速。值得注意的是,尽管目前OpenStack和CloudStack两个项目的社区人口增长很快,目前均已已经发展了21个月的OpenStack和CloudStack项目,其社区人口(分别是700和650)远小于Eucalyptus项目在21个月时的社区人口(2010年9月,1100)。如果这四个项目在社区经营方面都没有发生大的变化的话,OpenStack和CloudStack项目的社区人口将在6~9 个月之后超越OpenNebula社区。OpenStack和CloudStack项目的社区人口如果要超越Eucalyptus社区,保守地估计还需要18~24个月的时间。
Accumulated Community Population refers to the total number of users and developers who have participated in forum or mailing list discussions. (This number does not include those who have registered into discussion forums or mailing lists but have never participated in any open discussions.) These are people who have tested or used a specific product for a while, but not necessary currently an active user. A new product release, or a promotion event, might be able to reactivate some of them. Figure 5 shows the commuhity population growth of OpenStack, OpenNebula, Eucalyptus and CloudStack since 2009. With 18 months of first-mover advantages, the community population of Eucalyptus and OpenNebuls is bigger than that of OpenStack. Currently, the community population numbers for Eucalyptus, OpenNebula and OpenStack are 1950, 850, 700 and 650 respectively. According to Figure 5, the population growth of Eucalyptus and OpenNebula is slowing down, while the population growth of OpenStack and CloudStack are accelerating. It should be mentioned that although OpenStack and CloudStack are currently growing at a faster pace, their current community populations (21 months, 700 and 650 members respectively) are much less than the community population of Eucalyptus at the same age (September 2010, 1100 members). Assuming that none of the three projects take significant changes in community management, the community population of OpenStack and CloudStack will exceed that of OpenNebula in 6~9 months. A connservative estimation is, it will take 18~24 months for OpenStack and CloudStack to surpass Eucalyptus in community population.
图6 所示为OpenStack,、OpenNebula、Eucalyptus和CloudStack四个项目每个月新增加的社区人口数量。目前Eucalyptus和OpenNebula社区的每月新增人口数在25上下,OpenStack和CloudStack社区的每月新增人口数在65上下。
Figure 6 shows the monthly population growth for OpenStack, OpenNebula, Eucalyptus and CloudStack. Currently the monthly population growth for OpenNebula and Eucalyptus is about 25, while it is about 65 for OpenStack and CloudStack.
图7 是图4 与图6的重新组合。其中,实线部分表示的是每个月参与论坛或者邮件列表讨论的人数,虚线部分表示的是每个月新加入论坛或者邮件列表的人数。可以看出,OpenNebula、Eucalyptus和CloudStack社区的新增加人数占当月活跃用户的50%上下,而OpenStack社区的新增加人数仅占当月活跃用户的25%左右。这个数据表明OpenStack社区比OpenNebula、Eucalyptus和CloudStack社区具有更高的粘性,因为有更高比例的老用户选择留下来了。
Figure 7 is a combination of Figure 4 and Figure 6. The solid lines represent the monthly participants, while the dash lines represent the monthly new members. For OpenNebula, Eucalyptus and CloudStack communities, around 50% of their monthly participants are new members. For OpenStack community, around 25% of its monthly participants are new members. This indicates OpenStack community is more “sticky” than OpenNebula, Eucalyptus and CloudStack communities, because more existing users choosed to stay.
基于如上七张图表,不难看出OpenStack社区具有最强的成长性, 是当今基础构架服务领域的热点。CloudStack社区的成长性次之,但是其粘性比OpenStack社区稍差。OpenNebula社区的成长相对平稳,短期内也看不出有衰退的趋势。Eucalyptus社区已经呈现出明显的衰退趋势,但是其先发优势所造成的影响依然在发挥作用。
Based on the above-mentioned 7 figures, we can see that the OpenStack community is growing at the fastest pace, and attracted the most attention in the area of IaaS. The CloudStack community ranks #2, because its “stickiness” is not as good as OpenStack. The OpenNebula community is growing steadly, without any sign of recession in the near future. The Eucalyptus is showing obvious signs of recession, but its first-mover advantage is still taking effect.
那么,OpenStack赢了吗?从短期来讲,OpenStack社区每个月的讨论主题数比竞争对手高30%、讨论消息数比竞争对手高150%、社区参与程度比竞争对手高100%,活跃用户数比竞争对手高250%。如果我们考虑到在这些数字的背后是OpenStack十倍于竞争对手的广告、公关、宣传和结盟活动,也许OpenStack社区应该有更佳的表现才能够达到相对合理的性价比。从长期来讲,已经发展了21个月的OpenStack社区,其社区人口仅仅是Eucalyptus社区21个月时的60%,可见OpenStack项目的传播和被接受速度是小于Eucalyptus项目早期的传播和被接受速度的。
So, has OpenStack win? From a short term perspective, OpenStack-related monthly number of threads is 30% higher than competitors, monthly number of messages is 150% higher than competitors, monthly number of active users is 250% higher than competitors. If we remember that OpenStack’s investment in advertising, public relationship, marketing, and partnership is 10 times bigger than its competitiors, it would be reasonable to expect a better ROI。From a long term perspective, the OpenStack community has been around for 21 months, and its population is only 60% of the Eucalyptus community at its 21 months. It is obvious that OpenStack is being propagated and accepted at a slower pace than Eucalyptus at its early stage.
那么,Eucalyptus输了吗?从目前的数据来看,Eucalyptus除了先发优势之外似乎已经一无所有。如果我们记得Eualyptus上一次正式发布的开源版本是2011年5 月的2.0.3的话,就不难理解Eucalyptus社区目前的冷清局面。要知道,竞争对手OpenStack在2011年2 月、4 月和9 月分别发布了Bexar、Cactus和Diablo三个版本,下一个版本Essex即将于2012年第二季度发布。正是这种瀑布开发和快速发布使得用户和开发者始终处于激动的状态,从而造就了OpenStack社区的黏性和成长性。事实上,在Eucalyptus社区发展的初期,依靠的也是瀑布开发和快速发布赢得的用户和开发者(Eucalyptus分别于2010年8 月、2010年11月、2011年1月和2011年5 月发布连续2.0、2.0.1、2.0.2和2.0.3四个版本)。如果Eucalyptus能够回到过去的开发和发布模式上来(如果Eucalyptus还愿意坚持开放源代码路线的话),它所拥有的先发优势(接近2000人的社区人口)就会再次体现出来。
Then, has Eucalyptus lose? It seems that Eucalyptus has nothing left except for its first-mover advantage. If we could remember that the latest community edition of Eucalyptus was 2.0.3 released in May 2011, it would not be difficult to understand the why the Eucalyptus community is recessing. Remember, OpenStack released Bexar, Cactus, and Diablo in Feb, Apr and Sep 2011, and the Essex release is coming very soon. This waterfall development model, along with quicker/smaller releases, keep users and developers excited, which resulted in the stickiness and growth of the user/developer community. In fact, Eucalyptus also used this method to gain users and developers in the old time (Eucalyptus 2.0, 2.0.1, 2.0.2 and 2.0.3 was released in Aug 2010, Oct 2010, Jan 2011 and May 2011). If Eucalyptus would come back to its old strategy (If Eucalyptus is still willing to continue its open source strategy), its first-mover advantage (community population: 1950) will certainly bring fruitful return.
最后补充一句,一直闷声不响暗中发力的OpenNebula和CloudStack项目,值得各位云计算领域从业人员的认真关注。
As an end note, the OpenNebula and CloudStack projects deserve some serous attention from users and developers working on cloud computing.
“如果Eucalyptus能够回到过去的开发和发布模式上来(如果Eucalyptus还愿意坚持开放源代码路线的话),它所拥有的先发优势(接近2000人的社区人口)就会再次体现出来。”这2000人的社区人口,怕是有不少非活跃的用户,恐怕很难再被激活吧
根据我之前做社区的经验,发布一个新的版本,是能够有效地激活相当数量的老用户的。Eucalyptus目前有接近2000人的社区人口,哪怕只是激活其中的5%,就是100个用户,相当于OpenStack社区人口的15%。从这点上来看,先发优势还是非常有用的。
It would be interesting to see the CloudStack data as part of this analysis… especially given the CloudStack Apache announcement today.
Hi Chip, thank you so much for the comments. I will add CloudStack and others into the comparison in CY12-Q2.
IaaS容量毕竟有限,与刚起步时的Eucalyptus社区相比目前已经同时存在数个类似项目,几分天下已成定局,但既然都是选择开源的路线,社区的活跃与发展不容忽视,蒋兄的文章对国内相关企业在做开源产品选型时会起到很大的帮助。
试用过OpenStack和CloudStack,后者尤其坑。
前者也太过复杂,说真的,纯从代码/软件上的质量/易用性,我更喜欢Ganeti,可惜Ganeti难以独立出来做商业支持吧……
[…] 本文是对《CY12-Q1 OpenStack, OpenNebula,Eucalyptus,CloudStack社区活跃度比较》一文的补充和更新。对本文内容感兴趣的读者,可以通过电子邮件或者新浪微博(@qyjohn_)与我联系。 […]
[…] article is an update version of my previous article CY12-Q1 Community Analysis — OpenStack vs OpenNebula vs Eucalyptus vs CloudStack. Readers who are intested in further discussions please contact me via email at the above-mentioned […]
[…] article is an update version of my previous article CY12-Q1 Community Analysis — OpenStack vs OpenNebula vs Eucalyptus vs CloudStack. Readers who are intested in further discussions please contact me via email at the above-mentioned […]