AWS與Elastic之戰(zhàn),云巨頭真的會(huì)扼殺開(kāi)源嗎?
日期:2021-09-04

我們思考這樣一件事兒,開(kāi)源是云計(jì)算所依賴的重要技術(shù)來(lái)源,而云計(jì)算正在成為企業(yè)IT的重要甚至主導(dǎo)力量,那么,開(kāi)源軟件的前景如何呢?

幾乎任何AWS的新服務(wù)都會(huì)在全球范圍內(nèi)產(chǎn)生巨大的連鎖反應(yīng),最近,AWS決定發(fā)布自己的開(kāi)源版Elasticsearch,Elasticsearch是做數(shù)據(jù)分析的開(kāi)源軟件,能用來(lái)搭建搜索引擎,常用于企業(yè)數(shù)據(jù)分析尤其是日志分析的場(chǎng)景。


https://www.elastic.co/

Elasticsearch由一家叫Elastic的上市公司維護(hù),最近,AWS開(kāi)源專家Adrian Cockcroft把Open Distro for Elasticsearch描述為一個(gè)發(fā)行版,注意,不是一個(gè)分支而是發(fā)行版,這一動(dòng)作引起了Elastic的不滿,這是開(kāi)源項(xiàng)目的公司與云服務(wù)摩擦的又一個(gè)典型事件。

2009年,Elasticsearch作為開(kāi)源項(xiàng)目發(fā)布,2012年,Elastic公司成立并推出基于Elasticsearch的商業(yè)服務(wù),如今市值約為6多億美元。

像Elastic這樣的開(kāi)源商業(yè)公司通??刻峁I(yè)服務(wù)而生存的,如果有企業(yè)想用Elasticsearch,但是企業(yè)自己人又不太會(huì)用這個(gè),雇人搞這個(gè)又不太劃算,總之就是沒(méi)辦法維護(hù)這個(gè)東西,要知道,把開(kāi)源的東西用在生產(chǎn)環(huán)境下其實(shí)很麻煩的,于是,Elastic這樣的公司就靠提供服務(wù)掙錢,當(dāng)然,也會(huì)有一些基于開(kāi)源項(xiàng)目的專有軟件,一般商業(yè)版都會(huì)更好用一些。

像AWS這樣的云計(jì)算公司提供的服務(wù)中其實(shí)有很多流行的開(kāi)源項(xiàng)目,而且,通常都是用戶需要的,也不違背開(kāi)源軟件的要求。2015年,AWS首次推出基于Elasticsearch的服務(wù),但有明眼人發(fā)現(xiàn),去年開(kāi)始,Elastic開(kāi)始將專有代碼跟開(kāi)源代碼混在一起,一般用戶根本區(qū)分不出來(lái)。

AWS架構(gòu)戰(zhàn)略副總裁Adrian Cockcroft指出,ElasticSearch的開(kāi)發(fā)文檔中根本沒(méi)說(shuō)清楚哪些是專有的,哪些是開(kāi)源的,企業(yè)開(kāi)發(fā)人員一不小心就用到或者修改了專有代碼。

這個(gè)問(wèn)題很嚴(yán)重,因?yàn)?,一旦像AWS這樣的云服務(wù)商托管了這樣的項(xiàng)目,可能就得吃官司罰錢了。另一方面,因?yàn)檫@些代碼是一家公司專有的,很難保證這些代碼會(huì)一直持續(xù)維護(hù)更新。

而且,因?yàn)镋lastic植入的專有代碼覆蓋很多基本的功能,比如身份驗(yàn)證,從技術(shù)方面來(lái)看,想以開(kāi)源的方式安全使用這個(gè)項(xiàng)目,那就必須得自己實(shí)現(xiàn)這些功能。


https://opendistro.github.io/for-elasticsearch/

于是,AWS與Expedia和Netflix一起,創(chuàng)建了一個(gè) Open Distro for Elasticsearch(開(kāi)放的Elasticsearch發(fā)行版),這是一個(gè)Apache授權(quán)的開(kāi)源發(fā)行版,AWS承諾會(huì)繼續(xù)給這個(gè)項(xiàng)目做貢獻(xiàn)。初始的版本主要就是補(bǔ)充一些Elasticsearch缺少的關(guān)鍵功能,比如安全、事件監(jiān)控預(yù)警還有SQL語(yǔ)句的支持等等。

Elastic的CEO在自己的博客里寫道,在此之前,AWS的人找到Elastic希望獲得一些優(yōu)惠待遇,但是被拒絕了,然后就自己搞了個(gè)版本,我們承諾對(duì)所有的開(kāi)發(fā)者一視同仁。

面對(duì)媒體的詢問(wèn),Elastic的人則表示,他們已經(jīng)說(shuō)清楚了Elasticsearch代碼的類型,所有專有代碼都在“x-pack”目錄里,以防止混淆,每個(gè)源文件的開(kāi)頭都會(huì)寫清楚,這個(gè)代碼是Apache 2.0授權(quán)的還是Elastic授權(quán)的。

很多人都在說(shuō),AWS的云服務(wù)有很多都建立在開(kāi)源項(xiàng)目之上,這些開(kāi)源項(xiàng)目可以輕松成為AWS的創(chuàng)收項(xiàng)目,但是又不用非得給開(kāi)源社區(qū)做貢獻(xiàn),這收獲跟付出根本不成比例,于是,從去年開(kāi)始,一些公司改了開(kāi)源許可的條款,以阻止AWS這樣的云計(jì)算公司把開(kāi)源軟件變成云服務(wù)。

這些做法其實(shí)源于對(duì)AWS的恐懼,擔(dān)心不斷增長(zhǎng)的力量對(duì)云計(jì)算市場(chǎng)的控制力,確實(shí)有一些原來(lái)運(yùn)行著開(kāi)源的Elasticsearch的公司,原本也享受著Elastic的服務(wù),而現(xiàn)在都跑在AWS上了,而且,一旦用上云之后,用戶會(huì)發(fā)現(xiàn)AWS版用起來(lái)更簡(jiǎn)單。

不難理解為什么AWS想讓Elastic提供一些基本服務(wù),也不難理解為什么Elastic不想調(diào)整戰(zhàn)略以適應(yīng)AWS。此前,Azure和GCP(谷歌云)都與Elastic有過(guò)相關(guān)商業(yè)合作,但AWS并沒(méi)有類似的想法。

開(kāi)源企業(yè)軟件在過(guò)去十幾年為IT行業(yè)的繁榮鋪平了道路,許多新的公司能通過(guò)貢獻(xiàn)社區(qū)創(chuàng)建自己的技術(shù)架構(gòu),就不用重復(fù)造車了,每當(dāng)有錢的大公司解決了技術(shù)難題后,別的許多公司都能從中受益。

很多人開(kāi)始擔(dān)心,云計(jì)算會(huì)不會(huì)讓我們重回專有軟件的世界?

但是,如果開(kāi)源開(kāi)發(fā)者不能組建獨(dú)立的公司來(lái)將代碼變成錢,很快,很多流行的開(kāi)源項(xiàng)目都會(huì)變成云巨頭們的服務(wù),從歷史的走向來(lái)看,有些趨勢(shì)是不可避免的,開(kāi)源技術(shù)服務(wù)公司和云計(jì)算公司其實(shí)都是在顛覆傳統(tǒng)專有軟件和硬件廠商。

而現(xiàn)在,由于重要的開(kāi)源項(xiàng)目被企業(yè)把控,或者說(shuō)開(kāi)源項(xiàng)目服從于一些公司的發(fā)展規(guī)劃,最后可能會(huì)導(dǎo)致延續(xù)十多年來(lái)的企業(yè)技術(shù)創(chuàng)新步伐陷入停滯。大型公司也由于缺少競(jìng)爭(zhēng),滿足于現(xiàn)狀止步不前而遭到唾棄,初創(chuàng)公司生存的土壤也可能會(huì)被破壞殆盡。

工程管理暢銷書作者Camille Fournier寫道:“我對(duì)那些在創(chuàng)始DNA中沒(méi)有開(kāi)源的公司能否長(zhǎng)期為社區(qū)做最好的事情持懷疑態(tài)度,我擔(dān)心云只會(huì)讓我們回到專有軟件的世界”。

歷史的車輪會(huì)倒退嗎?