2012Q2:四大開源IaaS社區(qū)活躍度對比
導(dǎo)讀:OpenStack、OpenNebula、Eucalyptus、CloudStack并稱四大開源IaaS平臺,其社區(qū)活躍度不僅反映了開源平臺真實(shí)的活力,也是平臺的核心價值所在。ezCloud的聯(lián)合創(chuàng)始人蔣慶野撰文,通過自己開發(fā)的Java工具,對四大開源IaaS的社區(qū)進(jìn)行監(jiān)控,對討論主題總數(shù)、參與討論人數(shù)等進(jìn)行統(tǒng)計(jì),總結(jié)成圖表并進(jìn)行了分析,對廣大開發(fā)者選擇開放平臺有一定的指導(dǎo)意義。蔣清野的博客全文如下:
本文的目的是通過論壇和郵件列表的原始數(shù)據(jù)對OpenStack、OpenNebula、Eucalyptus和CloudStack項(xiàng)目的社區(qū)活躍度進(jìn)行分析和比較。主要的原始數(shù)據(jù)是自2009年來這四個項(xiàng)目的官方論壇和郵件列表每個月所產(chǎn)生的討論主題數(shù)、帖子數(shù)、以及參與討論的總?cè)藬?shù)(郵件地址或者用 戶賬號)。為了獲取這些數(shù)據(jù),我寫了一個Java程 序自動地從這四個項(xiàng)目的網(wǎng)站下載了所有的論壇和郵件列表信息,并且從這些信息中分析提取出我所需要的數(shù)據(jù)。程序提取的數(shù)據(jù)被導(dǎo)入MySQL數(shù)據(jù)庫中以便進(jìn) 行統(tǒng)計(jì)分析,統(tǒng)計(jì)分析的結(jié)果通過LibreOffice生成分析圖表。
需要指出的是,Eucalyptus項(xiàng)目從4 月份開始用名為Engage的新論壇取代了原有的論壇,同時又開通了獨(dú)立的郵件列表。從討論內(nèi)容上看,Engage論壇側(cè)重于向用戶提供技術(shù)支持,郵件列表側(cè)重于社區(qū)推廣。
CloudStack項(xiàng)目被捐獻(xiàn)給Apache后,也于4 月份啟用了新的論壇和郵件列表。
如上所述舉措,都有可能對社區(qū)活躍度產(chǎn)生一定的影響。


圖1 和圖2分別是如上所述四個項(xiàng)目每個月所產(chǎn)生的討論主題數(shù)和帖子數(shù)??梢钥闯觯谶^去3 個月中,與OpenStack和CloudStack相關(guān)的討論增長迅猛。同時,與OpenNebula相關(guān)的討論有所降溫,而與Eucalyptus相關(guān)的討論開始復(fù)蘇。但是,在本文所涉及的四個項(xiàng)目中,與Eucalyptus相關(guān)的討論數(shù)量是最少的。
需要指出的是,CloudStack項(xiàng)目4 月份的數(shù)據(jù)有點(diǎn)異常,可以認(rèn)為是由于遷移論壇和郵件列表造成的波動。與CloudStack項(xiàng)目相關(guān)的討論在5 月份和6 月份之間的迅猛增長,應(yīng)該是該項(xiàng)目被捐贈給給Apache基金會所帶來的正面反饋。Eucalyptus項(xiàng)目也在4 月份遷移到新的論壇和郵件列表,但是這一遷移并沒有引起社區(qū)活躍度上的波動。這是因?yàn)樵谕粫r期該項(xiàng)目在市場和技術(shù)方面都沒有發(fā)生大的變動。(Eucalyptus于6 月20日宣布合并企業(yè)版和社區(qū)版,徹底開放源代碼,但是社區(qū)的反應(yīng)通常會有一個月左右的滯后期。)
Eucalyptus與CloudStack項(xiàng)目都提供獨(dú)立的論壇和郵件列表。從統(tǒng)計(jì)數(shù)據(jù)來看,Eucalyptus項(xiàng)目的論壇流量占總流量的1/3左右,CloudStack項(xiàng)目的論壇流量占總流量的1/5左右。如果不考慮社區(qū)運(yùn)營的因素,可以認(rèn)為基于郵件列表的社區(qū)形式更容易吸引社區(qū)成員的參與。

通常來講,一個討論主題得到的回復(fù)數(shù)越多,表明該主題的討論越深入。一個論壇或者郵件列表如果只有主帖而沒有回復(fù),說明這個社區(qū)的參與程度很低。因此,平均意義上的“討論帖子數(shù)/討論主題數(shù)”則反映了一個社區(qū)的參與程度,這里我們暫且稱之為參與度(Participation Ratio)。圖3 展示了這四個項(xiàng)目每個月的“討論帖子數(shù)/討論主題數(shù)”。可以看出,在過去3 個月中,OpenNebula、Eucalyptus和CloudStack三個項(xiàng)目的參與度基本上是接近的,并且都有小幅度的爬升。OpenStack項(xiàng)目的參與度是其他三者的2 倍左右。

圖4 所示為這四個項(xiàng)目每個月參與論壇或者郵件列表討論的總?cè)藬?shù)??梢钥闯?,在過去3 個月中,CloudStack項(xiàng)目的討論人數(shù)增長迅猛,OpenStack與Eucalyptus項(xiàng)目的討論人數(shù)穩(wěn)中有升,OpenNebula項(xiàng)目的討論人數(shù)呈緩慢下降趨勢。在本文所涉及的四個項(xiàng)目中,Eucalyptus與OpenNebula項(xiàng)目的討論人數(shù)相對較少,僅僅相當(dāng)于另外兩個項(xiàng)目的1/3。

累計(jì)社區(qū)人口(簡稱社區(qū)人口)指的是曾經(jīng)通過論壇或者郵件列表參與過討論的用戶和開發(fā)者總數(shù)。(不包括在論壇或者郵件列表中注冊但是從未公開參與討論的社 區(qū)成員。)這些人或多或少地使用過相關(guān)產(chǎn)品,但是并不代表他們目前還是活躍用戶,一個新版本的發(fā)布,或者一次市場推廣活動,都有可能將他們中的一部分重新激活。
圖5 所示為這四個項(xiàng)目的社區(qū)人口增長趨勢。Eucalyptus項(xiàng)目的社區(qū)人口依然遙遙領(lǐng)先,大概是其他三個項(xiàng)目的2 倍。成長迅猛的OpenStack項(xiàng)目,其社區(qū)人口首次超過OpenNebula項(xiàng)目。同樣快速成長的CloudStack項(xiàng)目,其社區(qū)人口也已經(jīng)接近OpenNebula項(xiàng)目。

圖6 所示為這四個項(xiàng)目每個月新增加的社區(qū)人口數(shù)量。在過去三個月中,OpenStack項(xiàng)目的社區(qū)人口增長遙遙領(lǐng)先與其他三個項(xiàng)目,CloudStack項(xiàng)目排名第二,Eucalyptus與OpenNebula項(xiàng)目則增長緩慢。
值得注意的是,OpenNebula項(xiàng)目的社區(qū)人口在6 月份出現(xiàn)了零增長。
在《CY12-Q1 OpenStack, OpenNebula,Eucalyptus,CloudStack社區(qū)活躍度比較》一文中,我曾經(jīng)預(yù)測OpenStack和CloudStack項(xiàng)目的社區(qū)人口將在6~9 個月之后超越OpenNebula社區(qū)。由于OpenNebula項(xiàng)目的社區(qū)人口增長過于緩慢,OpenStack項(xiàng)目提前3 個月實(shí)現(xiàn)了這一目標(biāo),CloudStack項(xiàng)目也有望于未來的3 個月內(nèi)實(shí)現(xiàn)這一目標(biāo)。

圖7 是圖4 與圖6的重新組合。其中,實(shí)線部分表示的是每個月參與論壇或者郵件列表討論的人數(shù),虛線部分表示的是每個月新加入論壇或者郵件列表的人數(shù)。OpenStack與OpenNebula項(xiàng)目的新增人口占當(dāng)月活躍用戶的30%左右,CloudStack與Eucalyptus項(xiàng)目大概是50%。如果不考慮社區(qū)人口的規(guī)模的話,可以認(rèn)為OpenStack與OpenNebula項(xiàng)目的粘性大于CloudStack與Eucalyptus項(xiàng)目。

圖8 所示分別是本文所述四個項(xiàng)目的社區(qū)人口,過去一個季度的活躍用戶數(shù)量,以及過去一個月的活躍用戶數(shù)量??梢钥闯?,雖然Eucalyptus項(xiàng)目的社區(qū)人口最多,但是其活躍用戶很少,與OpenNebula項(xiàng)目在同一水平上。OpenStack項(xiàng)目過去一個季度和過去一個月的活躍用戶分別占社區(qū)人口的55%和28%,CloudStack項(xiàng)目過去一個季度和過去一個月的活躍用戶分別占社區(qū)人口的40%和26%。
OpenStack項(xiàng)目的高速成長應(yīng)該歸結(jié)于其市場推廣手段。盡管在功能上還有所欠缺(Eucalyptus項(xiàng)目和CloudStack項(xiàng)目提供了更加全面的功能),但是其堅(jiān)定而有力的廣告、公關(guān)、宣傳和結(jié)盟活動,已經(jīng)使其在社區(qū)方面占據(jù)了相對有利的位置,為其未來的商業(yè)成功打下了堅(jiān)實(shí)的基礎(chǔ)。
Citrix收購CloudStack之后馬上將其捐贈給Apache基金會,可以說是一次非常成功的市場推廣活動。
Eucalyptus于2011年10月從RedHat那里挖來的社區(qū)副總裁(VP,Community) Greg DeKoenigsburg似乎依然將大部分的精力放在客戶圈而非社區(qū)上。在過去6 個月中,Eucalyptus社區(qū)的表現(xiàn)形式發(fā)生了改變(新的論壇和郵件列表),但是其運(yùn)營狀況與用戶活躍度并沒有發(fā)生明顯的變化。5 月20日Eucalyptus項(xiàng)目宣布合并原來的企業(yè)版和社區(qū)版,所有功能全部以開放源代碼的方式提供給用戶。這一戰(zhàn)略舉措無疑是正確的,但是是否能夠成功地挽回社區(qū),還取決于Eucalyptus是否會在社區(qū)建設(shè)方面有持續(xù)的投入。Marten Mickos在擔(dān)任MySQL公司CEO期間曾指出:“如果要在開源軟件上取得成功,那么你需要服務(wù)于:(1)愿意花費(fèi)時間來省錢的人;和(2)愿意花錢來節(jié)約時間的人。”在一個開放源代碼的生態(tài)系統(tǒng)當(dāng)中,愿意花費(fèi)時間來省錢的人占大多數(shù),但是他們卻是這個系統(tǒng)的中堅(jiān)力量。就目前而言,Eucalyptus比OpenStack更早地獲得了一些商業(yè)合同。問題在于,如果Eucalyptus項(xiàng)目繼續(xù)將80%的時間放在那些愿意花錢來節(jié)約時間的人(客戶)身上,就會失去那些那些愿意花費(fèi)時間來省錢的人(社區(qū))。當(dāng)Eucalyptus項(xiàng)目的社區(qū)規(guī)模和活躍度與競爭對手之間的距離越來越大的時候,即使是現(xiàn)有的客戶也會重新考慮采用替代方案的可能性。
至于OpenNebula項(xiàng)目,現(xiàn)在是考慮尋找一位全職社區(qū)經(jīng)理的時候了。該項(xiàng)目在今年4 月11日發(fā)布了版本3.4(還在5 月3 日發(fā)布了小版本3.4.1),驚人沒有在社區(qū)里激起任何波瀾。在幾乎沒有任何市場宣傳的情況下,OpenNebula項(xiàng)目的活躍社區(qū)規(guī)模始終維持在與Eucalyptus相當(dāng)?shù)乃缴?。OpenNebula項(xiàng)目取得這樣的成績,是因?yàn)樗軌驖M足云計(jì)算實(shí)踐者在功能和支持等方面的需求。如果OpenNebula在此基礎(chǔ)上進(jìn)行類似于OpenStack的市場宣傳,其社區(qū)規(guī)模和活躍度一定能夠有大幅度的提升。