從2008年開始進(jìn)入公眾視野,到亞馬遜與微軟于近期獲得1億美元的美國(guó)聯(lián)邦管理局云計(jì)算合同,云計(jì)算整整走過了7年。7年間,以第一代云計(jì)算技術(shù)為基礎(chǔ)的移動(dòng)計(jì)算、社交網(wǎng)絡(luò)、大數(shù)據(jù)等新信息技術(shù)在全球商業(yè)領(lǐng)域掀起了一場(chǎng)新商業(yè)運(yùn)動(dòng),這場(chǎng)商業(yè)運(yùn)動(dòng)創(chuàng)造出以消費(fèi)者和用戶為核心的個(gè)性化商業(yè)模式。
從去年開始席卷云計(jì)算領(lǐng)域的Docker技術(shù)風(fēng)潮,恰恰就是推動(dòng)企業(yè)走近消費(fèi)者和用戶的一大步。本文通過深入分析,帶你了解什么是Docker以及Docker將如何改變?cè)朴?jì)算,進(jìn)而孵化出能夠工業(yè)化生產(chǎn)個(gè)性化產(chǎn)品與服務(wù)的下一代商業(yè)模式。
什么是Docker?
答案是:Docker是下一代的云計(jì)算模式。
Docker翻譯成中文是“碼頭搬運(yùn)工”的意思,那么“碼頭搬運(yùn)工”搬運(yùn)的是什么?是標(biāo)準(zhǔn)化的“集裝箱”,這個(gè)標(biāo)準(zhǔn)化“集裝箱”里裝的是應(yīng)用程序。“碼頭搬運(yùn)工”在世界上任何提供了標(biāo)準(zhǔn)化接駁的“碼頭”就可以接收標(biāo)準(zhǔn)化“集裝箱”,然后快速安裝、運(yùn)行和管理“集裝箱”里的應(yīng)用程序,而提供標(biāo)準(zhǔn)化接駁“碼頭”的就是各類云服務(wù)商。借此,Docker把云計(jì)算環(huán)境下的應(yīng)用程序開發(fā)和分發(fā)帶進(jìn)了工業(yè)化生產(chǎn)的時(shí)代,這就是Docker的意義。
在Docker環(huán)境下,程序開發(fā)者按一定的打包標(biāo)準(zhǔn)生產(chǎn)程序,生產(chǎn)出來的標(biāo)準(zhǔn)化程序被裝進(jìn)標(biāo)準(zhǔn)化的容器(Container)里,也就是“集裝箱”。世界各國(guó)的云服務(wù)商都提供了標(biāo)準(zhǔn)化的“碼頭”,可以很容易地接收標(biāo)準(zhǔn)化的容器和里面的應(yīng)用程序,再把這些標(biāo)準(zhǔn)化的應(yīng)用程序以即插即用的方式組裝到自己的個(gè)性化解決方案里,然后提供給最終用戶。而與Docker“集裝箱”對(duì)應(yīng)的標(biāo)準(zhǔn)化程序架構(gòu),就是大家所熟悉的微服務(wù)。
在Docker時(shí)代,第一代云計(jì)算中的IaaS層與PaaS層合二為一成為了CaaS(Container-as-a-Service,即容器即服務(wù)),這就是下一代云計(jì)算架構(gòu);贑aaS的下一代云計(jì)算架構(gòu)賦予了企業(yè)強(qiáng)大的工業(yè)化生產(chǎn)通用軟件的能力,再根據(jù)消費(fèi)者和用戶的個(gè)性化需求,快速組裝通用軟件形成個(gè)性化的解決方案,這就是下一代的商業(yè)模式。
容器時(shí)代的開拓者們
根據(jù)美國(guó)市場(chǎng)調(diào)查公司Synergy Research于2015年7月發(fā)布的Q2數(shù)據(jù),全球云服務(wù)市場(chǎng)如今已經(jīng)牢牢被四大廠商所壟斷,AWS亞馬遜云、微軟、IBM和谷歌占據(jù)全球54%的云服務(wù)市場(chǎng)份額,而四大廠商的平均云計(jì)算業(yè)務(wù)年增長(zhǎng)高達(dá)84%,相比之下市場(chǎng)上其它云計(jì)算廠商只有33%的年增長(zhǎng)。其中AWS亞馬遜云在今年第二季創(chuàng)造了18.2億美元的營(yíng)收,同比增長(zhǎng)81%;而微軟已經(jīng)向其全球數(shù)據(jù)中心投入了150億美元。顯然,作為第一代云計(jì)算產(chǎn)業(yè)中的四大廠商,特別是谷歌、亞馬遜和微軟三大公有云已經(jīng)遠(yuǎn)遠(yuǎn)將其它云服務(wù)商甩到了后面,而這三家自有的海量資金及融資能力則牢牢地建立起了第一代公有云的市場(chǎng)格局。
2014年和2015年初,第一代主流公有云服務(wù)商核心技術(shù)團(tuán)隊(duì)中的華人技術(shù)專家開始不約而同地離開原來的公司,紛紛回到國(guó)內(nèi)創(chuàng)業(yè)容器/Docker領(lǐng)域。這其中包括來自微軟Windows Azure核心技術(shù)團(tuán)隊(duì)的靈雀云、來自谷歌廣告業(yè)務(wù)核心技術(shù)部門的數(shù)人云、來自EMC和VMware核心技術(shù)團(tuán)隊(duì)的DaoCloud道客云、來自IBM Bluemix和阿里云盾核心技術(shù)團(tuán)隊(duì)的時(shí)速云,以及來自中國(guó)移動(dòng)研究院云計(jì)算技術(shù)團(tuán)隊(duì)的Hyper云。
這批創(chuàng)業(yè)公司的共同特點(diǎn)是創(chuàng)始人均來自第一代公有云核心技術(shù)團(tuán)隊(duì),他們一方面發(fā)現(xiàn)了容器/Docker是下一代云計(jì)算的主流趨勢(shì),另一方面他們離開原有公司也是因?yàn)榈谝淮性埔呀?jīng)基本成熟。“為什么說云計(jì)算人才都在西雅圖?這是因?yàn)閬嗰R遜云和微軟都在西雅圖,而云計(jì)算的技術(shù)能力主要來自運(yùn)維的經(jīng)驗(yàn),具有運(yùn)維百萬(wàn)臺(tái)以上服務(wù)器經(jīng)驗(yàn)的技術(shù)人才只有谷歌、亞馬遜云和微軟三家而已。”靈雀云創(chuàng)始人、原微軟Windows Azure美國(guó)核心技術(shù)團(tuán)隊(duì)容器項(xiàng)目負(fù)責(zé)人左玥如是表示。靈雀云聯(lián)合創(chuàng)始人、CTO陳愷也來自美國(guó)微軟Windows Azure核心技術(shù)團(tuán)隊(duì)并曾負(fù)責(zé)Windows Azure的全球調(diào)度系統(tǒng)Fabric Controller,陳愷經(jīng)歷了Windows Azure從無(wú)到有、從幾百臺(tái)服務(wù)器到如今百萬(wàn)臺(tái)服務(wù)器的全過程。
另一家數(shù)人云的創(chuàng)始人王璞來自美國(guó)谷歌廣告業(yè)務(wù)部門核心技術(shù)團(tuán)隊(duì),他告訴記者全球公有服務(wù)商中擁有服務(wù)器數(shù)量第一的是谷歌,成立于1998年的谷歌在全球運(yùn)維著上千萬(wàn)臺(tái)服務(wù)器;其次是AWS亞馬遜云和微軟Windows Azure,他們各自擁有和運(yùn)維著數(shù)百萬(wàn)臺(tái)服務(wù)器;再次是IBM SoftLayer擁有和運(yùn)維著數(shù)十萬(wàn)臺(tái)服務(wù)器;最后是各個(gè)國(guó)家的區(qū)域性公有云服務(wù)商,擁有和運(yùn)維著從數(shù)百臺(tái)到數(shù)千臺(tái)不等的服務(wù)器,從運(yùn)維服務(wù)器的規(guī)模就能直接判斷公有云服務(wù)商的運(yùn)維經(jīng)驗(yàn)和技術(shù)水平。
進(jìn)化到容器時(shí)代
容器(Container)是什么?這必須提到一個(gè)人和一家公司。
這一個(gè)人就是著名的微軟第二任也是最后一任首席架構(gòu)師RayOzzie。2005年10月,剛加入微軟不久的RayOzzie發(fā)布了一份名為“TheInternet Services Disruption”(互聯(lián)網(wǎng)服務(wù)時(shí)代來臨)的備忘錄,這份備忘錄的主要目的是推動(dòng)微軟整體向互聯(lián)網(wǎng)服務(wù)轉(zhuǎn)型。在這篇文章中,RayOzzie提出著名的由面向服務(wù)軟件架構(gòu)所實(shí)現(xiàn)的“無(wú)縫用戶體驗(yàn)”,并將之解析為“無(wú)縫溝通”、“無(wú)縫生產(chǎn)力”、“無(wú)縫娛樂”、“無(wú)縫市場(chǎng)”、“無(wú)縫操作系統(tǒng)”、“無(wú)縫解決方案”和“無(wú)縫IT”,這其中的核心就是“無(wú)縫操作系統(tǒng)”、“無(wú)縫解決方案”和“無(wú)縫IT”。
在“無(wú)縫操作系統(tǒng)”、“無(wú)縫解決方案”和“無(wú)縫IT”實(shí)踐方面,谷歌是一個(gè)先行者。著名的博主、原亞馬遜中國(guó)研發(fā)經(jīng)理、阿里巴巴資深專家陳皓有一個(gè)形象的比喻,云計(jì)算“就是要夏利車開出奔馳車的感覺”。谷歌就是把“夏利車開出奔馳車”的骨灰級(jí)玩家,說它是互聯(lián)網(wǎng)公司和互聯(lián)網(wǎng)技術(shù)的鼻祖都當(dāng)之無(wú)愧。王璞介紹說谷歌在全球運(yùn)維了上千萬(wàn)臺(tái)的服務(wù)器,這個(gè)規(guī)模已經(jīng)遠(yuǎn)遠(yuǎn)超出了很多現(xiàn)有技術(shù)供應(yīng)商的上限,因此谷歌自己發(fā)明了諸多技術(shù)用于管理千萬(wàn)臺(tái)規(guī)模服務(wù)器,“比如谷歌研發(fā)了頂級(jí)的網(wǎng)絡(luò)交換機(jī),就連思科都造不出來這樣的網(wǎng)絡(luò)交換機(jī)。原因很簡(jiǎn)單,因?yàn)闆]有相應(yīng)的實(shí)驗(yàn)環(huán)境。”谷歌自1998年成立至今已經(jīng)研發(fā)和儲(chǔ)備了很多“核彈級(jí)技術(shù)”,但這些技術(shù)絕大多數(shù)都被谷歌封鎖,只能通過谷歌對(duì)外發(fā)表的學(xué)術(shù)論文找到蛛絲馬跡。
谷歌為了避免使用市面上昂貴的基于物理機(jī)的虛擬化產(chǎn)品,同時(shí)也是為了更快、更便宜的發(fā)布自己的軟件和服務(wù),從一開始就研發(fā)了基于容器(Container)的新型虛擬化技術(shù),通過這一技術(shù)簡(jiǎn)化了谷歌全部服務(wù)運(yùn)行所需要的底層操作系統(tǒng)環(huán)境。在2015年8月的CNUTCon全球容器技術(shù)大會(huì)上,有超過8年谷歌經(jīng)驗(yàn)的谷歌云平臺(tái)軟件工程師Dawn Chen介紹說,她8年半前加入谷歌的時(shí)候,那個(gè)時(shí)候谷歌剛開始研發(fā)容器技術(shù),當(dāng)時(shí)谷歌容器技術(shù)團(tuán)隊(duì)加上她只有兩個(gè)人。如今谷歌所有的服務(wù)都運(yùn)行在容器中,這包括了Gmail、地圖、GFS文件系統(tǒng)、MapReduce等。谷歌現(xiàn)在每秒會(huì)啟動(dòng)大約7000個(gè)容器,每周會(huì)發(fā)布超過20億個(gè)容器。