由于Google早早的對(duì)容器進(jìn)行抽象,可以預(yù)見,即使脫離Docker生態(tài)圈,kubernetes依然有其市場,而且主要是大型容器和虛機(jī)部署的市場。
再說Mesosphere。2016年上半年遲鈍的Mesosphere終于意識(shí)到Docker的野心和意圖,開始嘗試脫離Docker,在新的Mesos Containerizer中支持脫離Docker Daemon建立容器,為下一步支持Rocket/RunC做準(zhǔn)備。
Mesosphere相當(dāng)于而言是比較不敏感的,一直跟著Docker跑,即使在Docker要做Swarm時(shí),而且Docker已經(jīng)做了Swarm仍然不敏感,終于Docker已經(jīng)明確的對(duì)Mesosphere通過發(fā)行版賺錢表示了明顯的不滿,可以理解,Docker自己花這么多資源做出一個(gè)Docker和相應(yīng)生態(tài),還沒開始賺錢,搭車的先賺錢了,換誰誰也不樂意。2016年2月Docker發(fā)布DDC(Docker DataCenter)和報(bào)價(jià),已經(jīng)非常明確了Docker要進(jìn)入企業(yè)級(jí)市場。
2016年上半年遲鈍的Mesosphere終于意識(shí)到Docker的野心和意圖,開始嘗試脫離Docker,在新的Mesos Containerizer中支持脫離Docker Daemon建立容器,為下一步支持Rocket/RunC做準(zhǔn)備。
Docker進(jìn)入企業(yè)級(jí)市場,第一個(gè)碾壓的就是Mesosphere。一方面Docker通過收購Conductant獲得Aurora,未來必定會(huì)合并到DDC中,DDC完全可以覆蓋Mesosphere的DCOS在Docker集群管理上的功能,而且Docker還有一招,未來只提供Swarm的API,封閉或是大幅改變Docker API,那么Mesos就只能調(diào)Swarm的API,Swarm本來就和Mesos有很大的重疊,如果Mesos再通過Swarm去管理Docker集群,那Mesos的價(jià)值可能小于功能重疊帶來的復(fù)雜性。當(dāng)然Docker是否會(huì)祭出這個(gè)大招讓我們拭目以待,雖然在Docker的新的架構(gòu)圖已經(jīng)有此規(guī)劃。
在這種生態(tài)環(huán)境下,用戶的選擇是最難的,已經(jīng)選擇了Docker+Mesos的用戶,必然會(huì)面臨未來繼續(xù)走Docker+Mesos的路,還是壯士斷腕,切換到正宗的Docker DDC,但DDC還不成熟,目前階段還不適合選擇。
而Docker+Mesos是注定未來很難升級(jí),越往后越邊緣化。
再看Redhat,2014年的時(shí)候看到Docker火起來,Redhat見異思遷,馬上拋棄自己的OpenShift V2的整體架構(gòu),包括拋棄原有應(yīng)用容器Gear,全面采用Docker替代Gear,同時(shí)用kubernetes替代原有的容器管理。如此革命式的改造,完全不考慮前后的兼容性。
這導(dǎo)致已經(jīng)部署在OpenShift V2的應(yīng)用遷移到OpenShift V3非常困難,雖然提供了一個(gè)遷移工具,但是Redhat自己都不敢用,到目前為止,Redhat的OpenShift公有云還是OpenShift V2,在給客戶推銷OpenShift V3的時(shí)候自己不從V2升級(jí)到V3,一定是難度極大,否則拼了命也要升級(jí),”自己的狗糧自己得吃”。
Redhat在OpenShift V3技術(shù)架構(gòu)的選擇顯得魯莽,核心技術(shù)是Docker和kubernetes,而Redhat對(duì)這兩個(gè)技術(shù)都沒有掌控,一旦Docker的發(fā)展或是kubernetes的發(fā)展和自己的戰(zhàn)略目標(biāo)不一致,可能還得推倒重來,又是一次”見異思遷”,目前就實(shí)際的遇到了這個(gè)問題,Docker要發(fā)展自己的DDC,和kubernetes競爭,而kubernetes已經(jīng)對(duì)容器進(jìn)行了抽象,不再支持Docker的特定功能,Docker和kubernetes已經(jīng)處于分道揚(yáng)鑣的階段,未來只會(huì)越走越遠(yuǎn),而Redhat“只能眼睜睜的看著你卻無能為力”,即無法說服Docker,也無法影響Google。
另外,既然Docker要進(jìn)入企業(yè)級(jí)容器集群管理市場,那OpenShift就必然和Docker存在競爭,Docker因?yàn)榻^對(duì)的掌控了Docker容器,在競爭中有天然的優(yōu)勢,這種優(yōu)勢隨著Docker的升級(jí)和DDC的升級(jí)會(huì)與日俱增。到底是選擇正宗(奧迪)還是山寨(奧拓),客戶也容易陷入困惑。
七、開源技術(shù)也需要商業(yè)的成功
開源不等于免費(fèi),開源是一種商業(yè)模式,一個(gè)開源組織和開源項(xiàng)目要想生存下去,最重要的基礎(chǔ)就是普遍被使用,不然很快就會(huì)被競爭者替代。
一個(gè)軟件被普遍被使用之后,還需要因此衍生出相關(guān)服務(wù),團(tuán)隊(duì)可以通過這些服務(wù)獲得比較好的收入,商業(yè)模式就成型了,沒有商業(yè)的支持的開源是很難成為一個(gè)成熟、商業(yè)可用的技術(shù)。就拿Linux來說,Redhat和Suse Linux作為比較成功的Linux商業(yè)化,通過發(fā)行版和技術(shù)支持獲得了商業(yè)成功,反過來推動(dòng)了Linux的發(fā)展。Linux持續(xù)有開源路線和商業(yè)路線,商業(yè)客戶需要商業(yè)的版本和支持,有Redhat和Suse等提供。開源的Linux如CentOS,CoreOS等。
反面的例子就是OpenSSL,去年暴露出“心臟出血“漏洞,大家發(fā)現(xiàn)就一個(gè)人在維護(hù)在OpenSSL,也沒人捐錢,Theo de Raadt-- OpenBSD項(xiàng)目的創(chuàng)始人說OpenSSL的代碼”令人作嘔“,主要原因就是沒有商業(yè)的支持。這不最近又爆出新型高危漏洞。