新聞中心
docker為什么“輸”給了Kubernetes?
作者:核子可樂 2021-09-14 08:50:38
云計算 Docker 如今的體量與當(dāng)初的潛在愿景相比實在太過渺小,本文將帶你了解 Docker“落得如此田地”的原因和真相的細(xì)節(jié)。

Docker 如今的體量與當(dāng)初的潛在愿景相比實在太過渺小,本文將帶你了解 Docker“落得如此田地”的原因和真相的細(xì)節(jié)。
Docker 還活著。盡管它近兩三年的境況并不理想,但它還在苦苦掙扎,試圖找到自己的商業(yè)價值。就在上周,Docker 宣布更改 Docker 軟件的許可條款。在不久的將來,為大企業(yè)工作的 Docker Desktop 專業(yè)用戶需要付費訂閱才能繼續(xù)使用。
與此同時,Docker 還推出了一項專門針對企業(yè)的新訂閱計劃,即 Docker Business。新條款于 8 月 31 日生效,但 Docker 給出了截至 2022 年 1 月 31 日的寬限期,以便開發(fā)人員遵守新服務(wù)協(xié)議并在有需要的時候購買付費訂閱。
不出所料,Docker 的舉措引發(fā)了開發(fā)者的討論。雖然許多人表示理解 Docker 新訂閱背后的考慮,但也表達了他們的不滿。批評主要分兩類,有些人認(rèn)為 Docker 的決定開創(chuàng)了有潛在“危險”的先例,未來它可能會增加訂閱成本。不過,其他人表示,這種觀點并沒有考慮到團隊如果不得不依賴“維護不善”的開源軟件時,會產(chǎn)生更高的成本。
另一方面,人們最擔(dān)心的是企業(yè)內(nèi)部采購流程的難度,這可能會“勸退”開發(fā)者繼續(xù)使用 Docker,自然而然地,不少人開始探索替代方案,包括 Minikube、Canonical 的 MicroK8s 等。
至于開發(fā)者和企業(yè)會不會覺得 Docker Desktop 的替代方案更方便,又或者選擇支付訂閱計劃所需的少量費用從而保持現(xiàn)有工作流程不變,還有待觀察。
Docker 的商業(yè)嘗試無可厚非,但更遺憾的是,Docker 從未成功將技術(shù)創(chuàng)新轉(zhuǎn)化為可持續(xù)的商業(yè)模式,還被迫在 2019 年 11 月將企業(yè)業(yè)務(wù)出售給 Mirantis。
今天,廣受歡迎的開源編排工具 Kubernetes 已經(jīng)取代了 Docker 為自己設(shè)計的利潤核心 Swarm 企業(yè)容器編排工具。于是,Docker 苦心經(jīng)營多年的利潤還是“泡了湯”,之后只能半死不活地掙扎求存。但是,真實的故事要比這復(fù)雜得多。近日,外媒 InfoWorld 采訪了數(shù)位前任及現(xiàn)任 Docker 員工、開源貢獻者、客戶及行業(yè)分析師,試圖從這個分崩離析的故事中找尋真相。
“每件事都只能淺嘗輒止”
嚴(yán)重依賴巨額風(fēng)險投資、競爭格局不斷變化加上各大云巨頭都想分一杯羹,Docker 這家年輕企業(yè)面臨的壓力實際遠(yuǎn)遠(yuǎn)超過大多數(shù)人的想象。
Docker 從 2014 年左右開始認(rèn)真考慮將自身的容器市場領(lǐng)先地位轉(zhuǎn)化為可變現(xiàn)商業(yè)戰(zhàn)略。2014 年與 2015 年,該公司分別用一部分風(fēng)險投資收購了 Koality 與 Tutum,同時也推出了 Docker 企業(yè)支持計劃的首個迭代版本。
這些投資后來催生出了 Docker Hub 等產(chǎn)品——大家可以把它理解成是 Docker 鏡像的 GitHub(目前仍然存在)——最終又成就了 Docker Enterprise。但這些產(chǎn)品一直沒能真正受到企業(yè)客戶的認(rèn)可,他們通常樂于同更成熟的合作伙伴攜手,或者是自主構(gòu)建而非直接采購解決方案。因此 Docker 只能繼續(xù)努力開發(fā)客戶真正想要的產(chǎn)品組合。
Docker 創(chuàng)始人 Solomon Hykes(于 2018 年 3 月宣布從 Docker 離職)在接受采訪時指出,“我們一直拿不出優(yōu)秀的商業(yè)產(chǎn)品,原因是我們始終無法集中注意力。我們對每件事都只能淺嘗輒止。單是維持開發(fā)者社區(qū)的增長并構(gòu)建一款偉大的商業(yè)產(chǎn)品就已經(jīng)夠難了,當(dāng)時我們還需要同時開發(fā)三到四款。很遺憾,我們在這方面投入了大量精力和金錢,但沒能在任何一條道路上走到終點?!?/p>
事后來看,Hykes 認(rèn)為 Docker 不應(yīng)該急于開發(fā)產(chǎn)品,而最好能更多傾聽客戶的意見。Hykes 感嘆道,“我本來沒必要急著擴大商業(yè)產(chǎn)品的規(guī)模,反倒該用更多資金從社區(qū)中收集洞察見解,并建立起一支理解需求、有能力解決需求的團隊。我們在 2014 年曾經(jīng)面對轉(zhuǎn)折點,但我們覺得自己等不及了,所以在急切當(dāng)中做出了決定。實際上并沒那么急?!?/p>
也有人認(rèn)為 Docker 過早把好東西免費發(fā)布了出來。今年年初,谷歌的 Kelsey Hightower 在采訪中表示,“他們相當(dāng)于是免費推出了自己最有份量的王牌。他們已經(jīng)解決了問題,而且是全面解決:設(shè)計鏡像、構(gòu)建鏡像、存儲鏡像、運行鏡像。之后還剩什么?沒有空間了呀?!?/p>
Hykes 并不同意這樣的觀點。“我認(rèn)為這說法不對。一般來講,核心開源產(chǎn)品先要創(chuàng)造巨大的增長,之后才能找到可行的商業(yè)化機會。很多企業(yè)都成功實現(xiàn)了 Docker 的商業(yè)化,只是 Docker 自己沒有。Docker 中的很多東西都可以成功商業(yè)化,只是 Docker 自己沒做成?!?/p>
例如,Red Hat 與 Pivotal(現(xiàn)屬于 VMware)都是 Docker 的早期合作伙伴。他們將 Docker 容器集成至自己的商業(yè) PaaS 產(chǎn)品(分別是 OpenSHift 與 Cloud Foundry)當(dāng)中,并為開源項目做出了貢獻。
如今回憶起來,Hykes 還覺得他混淆了“社區(qū)與生態(tài)系統(tǒng)”這兩個概念。Red Hat 根本“不是社區(qū)中的一部分,他們也從來不真正在乎 Docker 到底能不能成功。我們錯誤地希望讓 Red Hat 成為社區(qū)中的一部分。回想起來,這樣的伙伴關(guān)系永遠(yuǎn)不可能給 Docker 帶來助益?!?/p>
因此,旅游科技企業(yè) Amadeus 等早期客戶從 2015 年起轉(zhuǎn)向 Red Hat,借此填補 Docker 留下的企業(yè)應(yīng)用空白。其云平臺負(fù)責(zé)人 Edouard Hubin 表示,“我們直接從先驅(qū)用戶轉(zhuǎn)型為 Red Hat 的主要合作伙伴。我們在這種模式下使用 Docker 開源版本,并由 Red Hat 為我們提供容器技術(shù)支持。容器化是顛覆虛擬化的重大技術(shù)變革的第一步,而真正改變了企業(yè)游戲規(guī)則的是容器編排解決方案。很明顯,Docker 沒能壓制住 Kubernetes,最終被迫陷入極為困難的局面?!?/p>
Docker 公司前 CEO(2013 年至 2017 年)Ben Golub 則表示,“正所謂「神仙打架、凡人遭殃」。我們都知道,這場風(fēng)暴的中心其實并不在于 Docker,而是各大云服務(wù)商之間的慘烈搏殺。他們都想把 Docker 拉向自己的方向,而選擇忠于我們最初設(shè)立的價值觀與業(yè)務(wù)根基簡直像是在鋼絲上跳舞。”
這位前任 CEO 指出,隨著 Docker 的不斷發(fā)展,這一切因素都自然而然造成一種“緊張”的氛圍。Golub 回憶道,“我們希望建立起偉大的社區(qū)并通過開發(fā)者產(chǎn)品獲利,同時還希望打造一款出色的運營商產(chǎn)品,幫助客戶大規(guī)模構(gòu)建并部署容器。雖然愿景在此,但我們很快意識到自身必須迅速擴大規(guī)模,而且拿不出太多時間來平衡社區(qū)發(fā)展與商業(yè)企業(yè)轉(zhuǎn)型這兩條路線……作為一家初創(chuàng)企業(yè),我們每天在匆忙中做出上百個決定,之后就是祈禱自己能少犯點錯。”
與 Kubernetes 談不攏的合作:自負(fù)與傲慢
縱觀整個發(fā)展歷程,Docker 做出了很多令其追悔莫及的決定,但其中最嚴(yán)重的一個當(dāng)數(shù)拒絕接受 Kubernetes 作為首選新興容器編排工具。面對這位新朋友,Docker 擺出了敵對的架勢、一意孤行地推進自己的專有 Docker Swarm 編排工具。
事實上,Docker 公司在 2014 年本來有機會與谷歌 Kubernetes 團隊開展密切合作,并在過程當(dāng)中把控整個容器生態(tài)系統(tǒng)。
Docker 最早一批員工、也是效力時間最長的 Jér?me Petazzoni 表示,“我們最大的錯誤就是錯過了 Kubernetes。當(dāng)時我們正處于集體心態(tài)膨脹的狀態(tài),我們認(rèn)為 Kubernetes 太復(fù)雜了,Swarm 一定能獲得成功。這種錯誤判斷也最終讓我們陷入了集體失敗?!?/p>
據(jù)多位親歷者證實,雙方在谷歌舊金山辦公室內(nèi)展開的緊張討論中包含眾多技術(shù)細(xì)節(jié),兩邊對于容器編排的具體實現(xiàn)方法也都有著明確而強烈的己見。
Kubernetes 聯(lián)合創(chuàng)始人、現(xiàn)任 VMware 公司副總裁 Craig McLuckie 表示,他曾提出將 Kubernetes 捐贈給 Docker,但雙方未能達成協(xié)議。他在采訪中提到,“兩邊確實有點互相看不起的意思。我們從 Docker 那邊感受不到任何開發(fā)經(jīng)驗,感覺上這群年輕的暴發(fā)戶根本不理解分布式系統(tǒng)的管理秘訣?!逼渌趫鋈耸恳蔡岬接懻摲諊⒉徽剑?dāng)時的主要訴求就是尋找聯(lián)合開發(fā)的可能性。但無論如何,兩邊團隊未能達成任何統(tǒng)一的意見,于是最終分道揚鑣。谷歌則在 2014 年的夏季推出了 Kubernetes。
Hykes 也承認(rèn),當(dāng)時 Docker 與谷歌團隊之間的關(guān)系非常緊張?!坝心敲匆豢蹋覀兊淖载?fù)占據(jù)了上風(fēng)。谷歌擁有很多既聰明又富有經(jīng)驗的人才,但 Docker 這位局外人卻被勝利沖昏了頭腦。我們沒在谷歌工作過、也沒上過斯坦福大學(xué)、更沒有計算機科學(xué)博士學(xué)位。有些人不想讓對方來瞎摻和,于是這就成了一場自我之戰(zhàn)、「反智」之戰(zhàn)。最終,Docker 與 Kubernetes 團隊之間充滿意義的合作就這樣胎死腹中了?!?/p>
Docker 公司最早的一批員工、前業(yè)務(wù)發(fā)展與技術(shù)聯(lián)盟副總裁 Nick Stinemates 表示,“我們本可以讓 Kubernetes 成為 GitHub 之上頭頂 Docker 名號的一流 Docker 項目。事后看來,Swarm 的上市時間太晚,最終引發(fā)了無法挽回的失敗?!?/p>
“一方面是我們太過自負(fù),另一方面則在于 Kubernetes 幾位聯(lián)合創(chuàng)始人 Joe Beda、Brendan Burns 以及 Craig McLuckie 的尖銳態(tài)度——他們對于服務(wù)層級 API 的需求有著毫不讓步的堅持,但 Docker 在技術(shù)上卻并不太關(guān)注單一 API。所以我們雙方根本無法達成一致?!盨tinemates 說道。
無論如何,Kubernetes 最終贏得了容器編排之戰(zhàn)。
但 Craig McLuckie 也強調(diào),他“不知道 Kubernetes 會發(fā)展到今天這個程度。事后分析太容易了,但人在局中時確實沒辦法看得那么清楚。”
高層的裂隙
在 2015 年以 10 億美元的“獨角獸”估值完成 9500 萬美元的巨額 D 輪融資之后,Docker 終于走到了炒作周期的頂峰。
Stinemates 表示,“這輪融資給 Docker 設(shè)下了極高的發(fā)展期望,也暴露出我們這家企業(yè)即將面臨的一系列根本難題。我認(rèn)為當(dāng)時擔(dān)任公司 CEO 的 Ben Golub 有很多想法跟 Hykes 不同,而且大家都知道兩個人出現(xiàn)了意見分歧。董事會大量參與、努力安撫創(chuàng)始人的情緒,同時也給了 CEO 足夠的回旋余地,希望推動公司走向成功。如果由 Hykes 決定,那么他會堅持以社區(qū)為導(dǎo)向的路線創(chuàng)造病毒式傳播。而在 Ben 看來,越早轉(zhuǎn)向商業(yè)運營就越能掌握主動權(quán)。這種緊張的局勢,導(dǎo)致我們在兩條路上都沒能走到底?!?/p>
這種態(tài)勢最終催生出兩個 Docker:面向開發(fā)人員、廣受歡迎的命令行工具兼開源項目 Docker 社區(qū)版,以及面向希望大規(guī)模采用容器的企業(yè)客戶的商業(yè)工具套件 Docker 企業(yè)版。遺憾的是,公司的行動太慢了,沒辦法把二者明確拆分開來并分別提供發(fā)展資源。
到 2018 年,裂隙開始顯現(xiàn)。Docker 公司逐漸無法在日益不滿的開源社區(qū)及強大的合作伙伴,與要求在生產(chǎn)環(huán)境中運行容器的苛刻企業(yè)客戶之間找到可行的路線。
不久之后的 2018 年 3 月,Hykes 離開了自己一手創(chuàng)立的公司。他在一篇博文中寫道,“作為創(chuàng)始人,我當(dāng)然有著復(fù)雜的情緒。任何一位創(chuàng)業(yè)者都希望自己的公司能夠在自己離去時仍能獲得成功。我的這一天也終于到來,沒想到是以這樣苦樂參半的方式。對創(chuàng)始人來說,放棄一生追逐的夢想確實是種煎熬?!?/p>
如今回望過去,Hykes 倒是超脫了出來?!拔乙庾R到自己并不屬于這家公司,繼續(xù)留下也沒有什么建設(shè)性貢獻,所以我離開了……我已經(jīng)失去了創(chuàng)業(yè)的樂趣,所以要么留下當(dāng)個 CEO、要么直接告別更好?!?/p>
面對日益嚴(yán)重的資金問題,Docker 公司輪換了新的 CEO——Ben Golub 于 2017 年 5 月讓位于給前 SAP CEO Steve Singh;2019 年 6 月,前 Hortonworks CEO Rob Bearden 又從 Singh 手中接過權(quán)柄。
現(xiàn)在 Docker 的定位是什么
在初始投資者 Insight Venture Partners 與 Benchmark Capital 3500 萬美元的現(xiàn)金支撐之下,如今 Docker 的“殘軀”正在七年資深人士 Scott Johnston 的領(lǐng)導(dǎo)下,由 Docker Engine 容器運行時、Docker Hub 鏡像庫以及 Docker Desktop 軟件苦撐著。
Johnston 在采訪中表示,自己正努力“像激光般聚焦開發(fā)者的實際需求”,希望以此幫助 Docker 公司回歸本源?!拔覀冋J(rèn)為 Docker 公司比以往任何時候都更強大,憑借的是三個核心:以客戶為中心、統(tǒng)一的上市規(guī)劃與更具生態(tài)系統(tǒng)友好度的商業(yè)模式?!?/p>
Johnston 決心不再重蹈過往的覆轍,專注為企業(yè)內(nèi)的核心軟件開發(fā)者受眾提供價值。
Johnston 認(rèn)為,“Docker 2.0”的增長機會在于為安全、經(jīng)過驗證的鏡像提供新的開發(fā)者工具與可信內(nèi)容,同時為以容器技術(shù)為基礎(chǔ)的新興計算模型(例如無服務(wù)器、機器學(xué)習(xí)及物聯(lián)網(wǎng)工作負(fù)載)持續(xù)提供推動力。
更重要的是,Docker 仍然是行業(yè)標(biāo)準(zhǔn)的容器運行時,目前 Docker Desktop 擁有 300 萬的可觀裝機量。此外,在 Stack Overflow 的《2021 年開發(fā)者調(diào)查》報告中,49% 的受訪者表示自己經(jīng)常使用 Docker Desktop 工具。
盡管如此,人們對 Docker 的未來仍然不太看好。Stinemates 坦言,“直白一點的話,我會質(zhì)疑如今的 Docker 還算不算真的存在。從職業(yè)角度來看,這真的很可悲。我再也沒遇到過能像 Docker 那樣令人興奮、充滿活力而且時刻創(chuàng)造出火花的企業(yè)?!?/p>
Hykes 則總結(jié)道,“公平地說,Docker 沒能把自己的業(yè)務(wù)潛力轉(zhuǎn)化成實際價值……至少目前還沒有。但我很高興 Docker 在經(jīng)歷了這么多年的坎坷之后再次抓住了建立業(yè)務(wù)的機會。這證明了 Docker 項目的品牌和底子都很厚實?!?/p>
名稱欄目:Docker為什么“輸”給了Kubernetes?
轉(zhuǎn)載源于:http://fisionsoft.com.cn/article/dpespis.html


咨詢
建站咨詢
