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