下一代云計算模式:Docker掀個性化商業(yè)革命
從2008年開始進入公眾視野,到亞馬遜與微軟于近期獲得1億美元的美國聯(lián)邦管理局云計算合同,云計算整整走過了7年。7年間,以第一代云計算技術(shù)為基礎(chǔ)的移動計算、社交網(wǎng)絡(luò)、大數(shù)據(jù)等新信息技術(shù)在全球商業(yè)領(lǐng)域掀起了一場新商業(yè)運動,這場商業(yè)運動創(chuàng)造出以消費者和用戶為核心的個性化商業(yè)模式。
從去年開始席卷云計算領(lǐng)域的Docker技術(shù)風(fēng)潮,恰恰就是推動企業(yè)走近消費者和用戶的一大步。本文通過深入分析,帶你了解什么是Docker以及Docker將如何改變云計算,進而孵化出能夠工業(yè)化生產(chǎn)個性化產(chǎn)品與服務(wù)的下一代商業(yè)模式。
什么是Docker?
答案是:Docker是下一代的云計算模式。
Docker翻譯成中文是“碼頭搬運工”的意思,那么“碼頭搬運工”搬運的是什么?是標(biāo)準(zhǔn)化的“集裝箱”,這個標(biāo)準(zhǔn)化“集裝箱”里裝的是應(yīng)用程序。“碼頭搬運工”在世界上任何提供了標(biāo)準(zhǔn)化接駁的“碼頭”就可以接收標(biāo)準(zhǔn)化“集裝箱”,然后快速安裝、運行和管理“集裝箱”里的應(yīng)用程序,而提供標(biāo)準(zhǔn)化接駁“碼頭”的就是各類云服務(wù)商。借此,Docker把云計算環(huán)境下的應(yīng)用程序開發(fā)和分發(fā)帶進了工業(yè)化生產(chǎn)的時代,這就是Docker的意義。
在Docker環(huán)境下,程序開發(fā)者按一定的打包標(biāo)準(zhǔn)生產(chǎn)程序,生產(chǎn)出來的標(biāo)準(zhǔn)化程序被裝進標(biāo)準(zhǔn)化的容器(Container)里,也就是“集裝箱”。世界各國的云服務(wù)商都提供了標(biāo)準(zhǔn)化的“碼頭”,可以很容易地接收標(biāo)準(zhǔn)化的容器和里面的應(yīng)用程序,再把這些標(biāo)準(zhǔn)化的應(yīng)用程序以即插即用的方式組裝到自己的個性化解決方案里,然后提供給最終用戶。而與Docker“集裝箱”對應(yīng)的標(biāo)準(zhǔn)化程序架構(gòu),就是大家所熟悉的微服務(wù)。
在Docker時代,第一代云計算中的IaaS層與PaaS層合二為一成為了CaaS(Container-as-a-Service,即容器即服務(wù)),這就是下一代云計算架構(gòu)?;贑aaS的下一代云計算架構(gòu)賦予了企業(yè)強大的工業(yè)化生產(chǎn)通用軟件的能力,再根據(jù)消費者和用戶的個性化需求,快速組裝通用軟件形成個性化的解決方案,這就是下一代的商業(yè)模式。
容器時代的開拓者們
根據(jù)美國市場調(diào)查公司Synergy Research于2015年7月發(fā)布的Q2數(shù)據(jù),全球云服務(wù)市場如今已經(jīng)牢牢被四大廠商所壟斷,AWS亞馬遜云、微軟、IBM和谷歌占據(jù)全球54%的云服務(wù)市場份額,而四大廠商的平均云計算業(yè)務(wù)年增長高達84%,相比之下市場上其它云計算廠商只有33%的年增長。其中AWS亞馬遜云在今年第二季創(chuàng)造了18.2億美元的營收,同比增長81%;而微軟已經(jīng)向其全球數(shù)據(jù)中心投入了150億美元。顯然,作為第一代云計算產(chǎn)業(yè)中的四大廠商,特別是谷歌、亞馬遜和微軟三大公有云已經(jīng)遠遠將其它云服務(wù)商甩到了后面,而這三家自有的海量資金及融資能力則牢牢地建立起了第一代公有云的市場格局。
2014年和2015年初,第一代主流公有云服務(wù)商核心技術(shù)團隊中的華人技術(shù)專家開始不約而同地離開原來的公司,紛紛回到國內(nèi)創(chuàng)業(yè)容器/Docker領(lǐng)域。這其中包括來自微軟Windows Azure核心技術(shù)團隊的靈雀云、來自谷歌廣告業(yè)務(wù)核心技術(shù)部門的數(shù)人云、來自EMC和VMware核心技術(shù)團隊的DaoCloud道客云、來自IBM Bluemix和阿里云盾核心技術(shù)團隊的時速云,以及來自中國移動研究院云計算技術(shù)團隊的Hyper云。
這批創(chuàng)業(yè)公司的共同特點是創(chuàng)始人均來自第一代公有云核心技術(shù)團隊,他們一方面發(fā)現(xiàn)了容器/Docker是下一代云計算的主流趨勢,另一方面他們離開原有公司也是因為第一代公有云已經(jīng)基本成熟。“為什么說云計算人才都在西雅圖?這是因為谷歌、亞馬遜云和微軟都在西雅圖,而云計算的技術(shù)能力主要來自運維的經(jīng)驗,具有運維百萬臺以上服務(wù)器經(jīng)驗的技術(shù)人才只有谷歌、亞馬遜云和微軟三家而已。”靈雀云創(chuàng)始人、原微軟Windows Azure美國核心技術(shù)團隊容器項目負責(zé)人左玥如是表示。靈雀云聯(lián)合創(chuàng)始人、CTO陳愷也來自美國微軟Windows Azure核心技術(shù)團隊并曾負責(zé)Windows Azure的全球調(diào)度系統(tǒng)Fabric Controller,陳愷經(jīng)歷了Windows Azure從無到有、從幾百臺服務(wù)器到如今百萬臺服務(wù)器的全過程。
另一家數(shù)人云的創(chuàng)始人王璞來自美國谷歌廣告業(yè)務(wù)部門核心技術(shù)團隊,他告訴記者全球公有服務(wù)商中擁有服務(wù)器數(shù)量第一的是谷歌,成立于1998年的谷歌在全球運維著上千萬臺服務(wù)器;其次是AWS亞馬遜云和微軟Windows Azure,他們各自擁有和運維著數(shù)百萬臺服務(wù)器;再次是IBM SoftLayer擁有和運維著數(shù)十萬臺服務(wù)器;最后是各個國家的區(qū)域性公有云服務(wù)商,擁有和運維著從數(shù)百臺到數(shù)千臺不等的服務(wù)器,從運維服務(wù)器的規(guī)模就能直接判斷公有云服務(wù)商的運維經(jīng)驗和技術(shù)水平。
進化到容器時代
容器(Container)是什么?這必須提到一個人和一家公司。
這一個人就是著名的微軟第二任也是最后一任首席架構(gòu)師Ray Ozzie。2005年10月,剛加入微軟不久的Ray Ozzie發(fā)布了一份名為“The Internet Services Disruption”(互聯(lián)網(wǎng)服務(wù)時代來臨)的備忘錄,這份備忘錄的主要目的是推動微軟整體向互聯(lián)網(wǎng)服務(wù)轉(zhuǎn)型。在這篇文章中,Ray Ozzie提出著名的由面向服務(wù)軟件架構(gòu)所實現(xiàn)的“無縫用戶體驗”,并將之解析為 “無縫溝通”、“無縫生產(chǎn)力”、“無縫娛樂”、“無縫市場”、“無縫操作系統(tǒng)”、“無縫解決方案”和“無縫IT”,這其中的核心就是“無縫操作系統(tǒng)”、“無縫解決方案”和“無縫IT”。
在“無縫操作系統(tǒng)”、“無縫解決方案”和“無縫IT”實踐方面,谷歌是一個先行者。著名的博主、原亞馬遜中國研發(fā)經(jīng)理、阿里巴巴資深專家陳皓有一個形象的比喻,云計算“就是要夏利車開出奔馳車的感覺”。谷歌就是把“夏利車開出奔馳車”的骨灰級玩家,說它是互聯(lián)網(wǎng)公司和互聯(lián)網(wǎng)技術(shù)的鼻祖都當(dāng)之無愧。王璞介紹說谷歌在全球運維了上千萬臺的服務(wù)器,這個規(guī)模已經(jīng)遠遠超出了很多現(xiàn)有技術(shù)供應(yīng)商的上限,因此谷歌自己發(fā)明了諸多技術(shù)用于管理千萬臺規(guī)模服務(wù)器,“比如谷歌研發(fā)了頂級的網(wǎng)絡(luò)交換機,就連思科都造不出來這樣的網(wǎng)絡(luò)交換機。原因很簡單,因為沒有相應(yīng)的實驗環(huán)境。”谷歌自1998年成立至今已經(jīng)研發(fā)和儲備了很多“核彈級技術(shù)”,但這些技術(shù)絕大多數(shù)都被谷歌封鎖,只能通過谷歌對外發(fā)表的學(xué)術(shù)論文找到蛛絲馬跡。
谷歌為了避免使用市面上昂貴的基于物理機的虛擬化產(chǎn)品,同時也是為了更快、更便宜的發(fā)布自己的軟件和服務(wù),從一開始就研發(fā)了基于容器(Container)的新型虛擬化技術(shù),通過這一技術(shù)簡化了谷歌全部服務(wù)運行所需要的底層操作系統(tǒng)環(huán)境。在2015年8月的CNUTCon全球容器技術(shù)大會上,有超過8年谷歌經(jīng)驗的谷歌云平臺軟件工程師Dawn Chen介紹說,她8年半前加入谷歌的時候,那個時候谷歌剛開始研發(fā)容器技術(shù),當(dāng)時谷歌容器技術(shù)團隊加上她只有兩個人。如今谷歌所有的服務(wù)都運行在容器中,這包括了Gmail、地圖、GFS文件系統(tǒng)、MapReduce等。谷歌現(xiàn)在每秒會啟動大約7000個容器,每周會發(fā)布超過20億個容器。
谷歌實際上通過容器實現(xiàn)了“無縫操作系統(tǒng)”的愿景。稍微了解云計算的人都知道虛擬機在IaaS層的重要性,改變了虛擬機的方式就相當(dāng)于改變了IaaS層的結(jié)構(gòu),這就是為什么說容器是下一代云計算模式的重要原因。容器本質(zhì)上是一種操作系統(tǒng)技術(shù),是基于操作系統(tǒng)的虛擬化技術(shù)?;谌萜鏖_發(fā)的應(yīng)用軟件可以達到“一處開發(fā)、處處運行”的效果,而無關(guān)乎底層到底是什么樣的操作系統(tǒng)或什么樣的IaaS云服務(wù)環(huán)境,這實際上就是“無縫操作系統(tǒng)”的概念,與之相適應(yīng)的就是“無縫解決方案”和“無縫IT”。
Docker一統(tǒng)江湖容器
Container與Docker是兩個英文單詞,Docker相當(dāng)于是標(biāo)準(zhǔn)化了的容器,是容器技術(shù)近30多年歷史發(fā)展出的最新結(jié)果。
作為操作系統(tǒng)級的虛擬化技術(shù),容器技術(shù)本身的歷史最早可以追溯到1982年。當(dāng)時Unix推出的Chroot技術(shù)被公認為操作系統(tǒng)級虛擬化的起源,也就是容器技術(shù)最早的狀態(tài)。隨后,操作系統(tǒng)虛擬化技術(shù)與Linux內(nèi)核及Linux操作系統(tǒng)的發(fā)展就交織在一起。因為操作系統(tǒng)虛擬化主要是針對廉價的X86服務(wù)器,因此英特爾和AMD服務(wù)器芯片技術(shù)的發(fā)展也影響了容器技術(shù)的發(fā)展。
1991年,芬蘭赫爾辛基大學(xué)研究生Linus Torvalds開發(fā)了針對386機器的Linux內(nèi)核。在Linux內(nèi)核的基礎(chǔ)上,不同的廠商開發(fā)了商用化的Linux操作系統(tǒng)。1995年1月RedHat成立了,推出了RedHat Linux即為Linux“發(fā)行版”。隨后,Linux內(nèi)核不斷更新,一直到2007年的時候,發(fā)展比較成熟的容器技術(shù)才進入了Linux內(nèi)核,而這還要利益于2005年前后英特爾和AMD相繼推出的64位服務(wù)器芯片。正因為有了CPU和內(nèi)存芯片容量的大幅提升,才能在一個操作系統(tǒng)中虛擬出多個空間。2008年的時候,LXC也就是Linux容器開源項目成立,容器技術(shù)開始在業(yè)界廣泛使用,而這一年微軟也推出了第一代Windows Azure公有云。
2010年,一家叫作dotCloud的創(chuàng)業(yè)公司在美國成立了,dotCloud早期是基于LXC技術(shù)的PaaS平臺,它的理念是提供跨底層IaaS云、支持多種開發(fā)語言的開發(fā)云平臺。2011年初的時候,dotCloud獲得了1000萬美元的A輪融資。DotCloud 最早運行在AWS的EC2上,但隨著越來越多的公有云服務(wù)商進入,dotCloud的理念很難依靠一家公司專有的技術(shù)實現(xiàn)。于是,dotCloud的創(chuàng)始人在LXC的基礎(chǔ)上,對容器技術(shù)進行了簡化和標(biāo)準(zhǔn)化,命名為Docker后將其開源,同時推出了開放容器計劃(OCI),Docker和Docker開源社區(qū)隨后迅速火起來。2013年10月29日,dotCloud公司更名為Docker公司。隨后,多家廠商開始宣布支持Docker。截止到2015年8月,公共的容器包應(yīng)用程序Registry(由Docker維護)在公共社區(qū)發(fā)行了超過180 000個應(yīng)用程序。
可以說X86架構(gòu)的PC服務(wù)器是異構(gòu)硬件架構(gòu)的贏家,Linux和Windows是異構(gòu)操作系統(tǒng)的贏家,Docker為基于X86服務(wù)器和Linux/Windows操作系統(tǒng)的云數(shù)據(jù)中心提供了統(tǒng)一的虛擬操作系統(tǒng),異構(gòu)架構(gòu)時代開始結(jié)束。
#p#
容器時代已經(jīng)到來
除了創(chuàng)業(yè)公司外,大廠商也不甘示弱,紛紛快速跟進。去年10月份,微軟就宣布了在Windows服務(wù)器實現(xiàn)容器技術(shù)的計劃,宣布了與Docker的合作伙伴關(guān)系,以保證無論是在Linux還是在Windows Server,都可以獲得一個統(tǒng)一、開放的體驗。盡管Linux容器與Windows容器基于不同的操作系統(tǒng)而互不兼容,但容器管理器是統(tǒng)一的。近期,微軟進一步宣布將針對Windows Server 2016發(fā)布Windows Server容器和Hyper-V容器,兩種容器都支持Docker API和Docker客戶端。
另一家受Docker沖擊比較大的VMWare也迫不急待的在VMWare World 2014上就宣布了對Docker的支持。VMware對容器的態(tài)度是積極的,盡管容器和基于物理機的虛擬機VM之間存在著競爭,但VMware仍然致力于擴大與容器生態(tài)合作。在2015年8月底的VMWare World 2015大會上,VMware推出了一系列新的支持Docker的技術(shù),并提出了未來全新的全面支持容器的技術(shù)架構(gòu),讓Docker程序也能運行在虛擬機VM里了。
此外,AWS亞馬遜云從去年11月推出了EC2容器服務(wù)AWS ECS,用戶不再需要安裝、運維、擴展集群管理基礎(chǔ)設(shè)施,而只需進行簡單的 API 調(diào)用就可以啟動和停止支持 Docker 應(yīng)用程序,隨后阿里云等國內(nèi)云廠商也推出了類似的服務(wù)。
國內(nèi)華為一直是各類開源項目、基金會、組織、峰會的活躍贊助商。2015年,華為作為創(chuàng)始成員相繼加入開放容器標(biāo)準(zhǔn)組織OCI及CNCF(Cloud Native Computing Foundation),成為唯一在列的中國公司。華為開源能力中心的高級研發(fā)工程師梁辰曄在2015 CNUT全球容器大會上表示,華為積極參與了開放容器測試項目(OCT),并與OCI組織一起促進開放容器標(biāo)準(zhǔn)的實現(xiàn)和普及。2015年至今,華為在Docker社區(qū)的貢獻排名穩(wěn)居前三位,而目前國內(nèi)最早的Docker社區(qū)maintainer就來自華為。
除了華為、阿里等國內(nèi)云服務(wù)商外,騰訊、百度、阿里、360、京東、搜狐等國內(nèi)互聯(lián)網(wǎng)公司從2011年開始就已經(jīng)開始全面實踐容器技術(shù)了。據(jù)京東云平臺首席架構(gòu)師劉海峰在2015 CNUT全球容器大會上的介紹,京東從2014年10月開始引入Docker,2015年2月對Docker進行戰(zhàn)略立項,2015年618的時候在生產(chǎn)環(huán)境中發(fā)布了11000多個容器實例并接入了1000多個應(yīng)用,從2015年8月開始的新數(shù)據(jù)中心全面采用容器技術(shù)。目前京東已上線Docker實例2萬多,預(yù)計到年底將翻番,屆時京東大部分應(yīng)用程序?qū)⑼ㄟ^Docker的方式發(fā)布。未來京東的Docker愿景是通過Docker管理所有的機器,應(yīng)用程序與物理資源之間完全解耦,實現(xiàn)全自動化的系統(tǒng)維護,研發(fā)人員可以集中精力于新應(yīng)用程序的開發(fā)。
說了這么多,其實對于容器貢獻最大的還是谷歌。Docker技術(shù)就是用谷歌的Go語言編寫的,這是谷歌2009發(fā)布的第二款開源編程語言。谷歌每周發(fā)布2億多的容器,這讓谷歌有能力發(fā)明很多關(guān)鍵性的容器技術(shù)。其中包括容器管理系統(tǒng),這個管理系統(tǒng)的第一個版本被稱為Borg,后續(xù)又發(fā)布了名為Omega的版本。通過這個管理系統(tǒng),可以在谷歌的大規(guī)模集群資源上使用容器技術(shù)。后來業(yè)界根據(jù)谷歌的相關(guān)學(xué)術(shù)論文,模仿Borg開發(fā)出來的Mesos系統(tǒng),正在被Airbnb、Twitter、蘋果Siri等在使用。
個性化商業(yè):未來的企業(yè)都是軟件企業(yè)
財富500強藝康化工有限公司(Ecolab)董事長兼CEO Douglas M. Baker, Jr.在參與普華永道的“2015全球CEO調(diào)查報告”調(diào)研中表示:“任何一家公司都不能想當(dāng)然的認為今天的業(yè)務(wù)能夠保證未來的成功。人們理所當(dāng)然的認為大公司更加安全也更加穩(wěn)定,但過去50年的事實證明了截然相反的結(jié)果。如果企業(yè)不能持續(xù)的快速變化,風(fēng)險只能增加而不是減小。”
變化的能力顯然已經(jīng)成為今后商業(yè)的核心競爭力。而隨著互聯(lián)網(wǎng)產(chǎn)業(yè)的影響力越來越龐大,互聯(lián)網(wǎng)對于傳統(tǒng)行業(yè)的入侵越來越劇烈、越來越深入,特別是中國“互聯(lián)網(wǎng)+”國家戰(zhàn)略的強力出臺,未來的企業(yè)將越來越被互聯(lián)網(wǎng)化。在這樣一個全面互聯(lián)網(wǎng)化的商業(yè)環(huán)境中,未來的企業(yè)將或多或少具備軟件的能力。除了未來企業(yè)的業(yè)務(wù)將部分或全面架構(gòu)在互聯(lián)網(wǎng)上,企業(yè)為消費者和用戶提供個性化服務(wù)也有賴于軟件能力。
如果未來的企業(yè)都是軟件企業(yè)的話, Docker的重要性可想而之。硅谷老牌風(fēng)投機構(gòu) Battery Vetures的技術(shù)專家Adrian Cockcroft在2015年中發(fā)布了一份《2015 年度云之白皮書:業(yè)界里程碑回顧與未來展望》,他曾是美國流媒體服務(wù)商 Netflix 的云平臺架構(gòu)師,也是 eBay Research Labs 的創(chuàng)始成員之一以及Sun Microsystems 杰出工程師和高性能技術(shù)計算部門的首席架構(gòu)師。他認為,Docker會逐漸成長為標(biāo)準(zhǔn)化的生產(chǎn)工具,這也從一個側(cè)面反映出 Docker的高接受度。
Adrian表示,Docker的挑戰(zhàn)是要謹慎管理生態(tài)系統(tǒng),同時快速添加功能以支持生產(chǎn)環(huán)境的部署。目前為止,Docker已經(jīng)阻止了一次生態(tài)系統(tǒng)的分裂。如今,甚至連芯片廠商英特爾公司也跨界加入了Docker的生態(tài)。今年5月,英特爾推出了以容器為中心的OS項目Clear Linux,目前已處于試驗階段,英特爾表明該系統(tǒng)未來可用于生產(chǎn)環(huán)境中。
可以看出,在邁向未來商業(yè)的過程中,將出現(xiàn)越來越多的跨界行為。根據(jù)Thomson Reuters的數(shù)據(jù),在美國僅2014年11月就涌現(xiàn)了10,330起并購或收購,共代表了1.9萬億美元的交易金額。這些并購或收購更多的是為了擴大商業(yè)聯(lián)盟,通過并購或收購具有不同業(yè)務(wù)或能力的公司,創(chuàng)造單一公司所無法實現(xiàn)的商業(yè)價值。普華永道“2015全球CEO調(diào)查報告”顯示,美國約有44%的CEO將在調(diào)研后的12個月內(nèi)啟動新的戰(zhàn)略聯(lián)盟。過去的商業(yè)聯(lián)盟主要是與供應(yīng)商或用戶連接,而在未來越來越多的CEO將選擇與競爭對手、創(chuàng)業(yè)公司或不同領(lǐng)域的公司結(jié)為聯(lián)盟。
當(dāng)然,包括DaoCloud核心團隊成員孫宏亮在內(nèi)的多個Docker技術(shù)專家都在不同場合表示,Docker還在發(fā)展的早期,存在網(wǎng)絡(luò)功能薄弱、安全性、運行傳統(tǒng)業(yè)務(wù)困難等挑戰(zhàn)。正因為這些技術(shù)上的不成熟,于是在美國和中國出現(xiàn)了一批Docker創(chuàng)業(yè)公司,八仙過海、各顯神通,勇于布局下一代云計算以及下一代商業(yè)。
國內(nèi)較早從事容器和Docker研究的浙江大學(xué)軟件工程實驗室(Software Engineering Lab,SEL)云計算團隊組建于2011年,專門搭建、分析和鉆研開源的云計算技術(shù)。浙大SEL團隊在其新出的《Docker—容器與容器云》一書中這樣寫道:“依靠容器技術(shù)支撐的Docker已經(jīng)迅速成為國內(nèi)外各大云計算廠商及開發(fā)者手中的至寶。在一片熱火朝天之中,新的革命已經(jīng)悄然來臨。”(文/ITValue記者吳寧川)
附錄:目前在中國從事Docker創(chuàng)業(yè)的公司
- 靈雀云,創(chuàng)始團隊成員是微軟Windows Azure的元老級核心技術(shù)成員,曾主導(dǎo)全球第一代云計算平臺研發(fā),其CaaS容器即服務(wù)具備企業(yè)級和全球化優(yōu)勢;
- 數(shù)人云,創(chuàng)始團隊成員來自美國谷歌的廣告核心技術(shù)部門,主打Mesos+Docker的CaaS容器即服務(wù),盡管Mesos有不少問題,但也是到目前為止成功在生產(chǎn)環(huán)境中應(yīng)用過的管理工具;
- 時速云,創(chuàng)始團隊成員來自IBM Bluemix和阿里云盾核心技術(shù)團隊,其CaaS容器即服務(wù)帶有對企業(yè)級私有云環(huán)境的技術(shù)優(yōu)勢;
- DaoCloud道客云,創(chuàng)始團隊成員來自EMC和VMware核心技術(shù)團隊,其CaaS容器即服務(wù)主打混合云和持續(xù)集成;
- Hyper,創(chuàng)始團隊成員來自中國移動研究院云計算技術(shù)團隊,其CaaS容器即服務(wù)主打在hypervisor虛擬機上運行Docker引擎,融合了Docker和虛擬機的優(yōu)點。