專訪阿里云資深專家易立
集裝箱曾經(jīng)改變?nèi)蛸Q(mào)易的供應鏈,Docker也將改變軟件的供應流程。
4月26日的云棲大會·南京峰會上,阿里云資深專家湯子楠發(fā)布了飛天專有云敏捷版(Apsara Stack Agility),此前美國Docker公司首席執(zhí)行官Ben Golub 在曾在DockerCon 2017上宣布過這個消息。
這是阿里云和Docker公司合作之后的產(chǎn)物,是國內(nèi)第一個支持Docker官方企業(yè)版(Enterprise Edition, EE)的容器類產(chǎn)品,包含從容器的創(chuàng)建到運行以及鏡像的全生命周期管理,可以部署在企業(yè)自有數(shù)據(jù)中心環(huán)境內(nèi),特別適用于企業(yè)專有云及混合云場景。
據(jù)阿里云方面介紹,阿里巴巴集團內(nèi)部運用容器技術(shù)已有六年時間。2016年,阿里電商核心應用的基礎平臺全部轉(zhuǎn)向Docker,并通過天貓雙11進行了技術(shù)驗證。
容器技術(shù)領(lǐng)域,最為著名的公司,無疑為Docker,后者也是一個容器管理引擎。與傳統(tǒng)虛擬機相比,容器技術(shù)是操作系統(tǒng)級別的虛擬化技術(shù),更為輕量。36氪曾經(jīng)介紹過,Docker則是在容器技術(shù)的基礎上額外提供了標準鏡像格式。Docker就像被標準化的容器,相當于云計算領(lǐng)域的“集裝箱”,可以承載后端的各種技術(shù)。
自從2013年開源的Docker項目發(fā)布之后,其以驚人的速度被企業(yè)采用,已成為容器運行的事實標準。據(jù)Docker公司公布的數(shù)據(jù),截止目前為止,Docker Hub上的鏡像下載量,已經(jīng)達到120億次,去年6月份這個數(shù)據(jù)是60億;鏡像總量超過了90萬,去年只有40萬。
國外許多大公司都積極擁抱Docker,包括AWS、IBM、HPE和微軟等。國內(nèi)網(wǎng)易、騰訊、阿里等主流云計算廠商,都提供基于Docker的容器服務。2015年,阿里云就在Docker社區(qū)版的基礎上推出了阿里云容器服務,華大基因、上海證券交易所、中信集團、ofo共享單車、深圳碼隆科技等多家企業(yè)均是容器服務的客戶。去年10月,Docker與阿里云達成合作,將通過后者落地中國。
阿里云非?春肈ocker的前景,認為Docker也將像集裝箱一樣,是改變世界那只箱子。就像集裝箱改變?nèi)蛸Q(mào)易的供應鏈一樣,Docker將改變軟件的供應流程。根據(jù)阿里云去年面向技術(shù)人員所做的調(diào)查,其中超過87%的人表示,有意愿現(xiàn)在使用或者可能在未來六個月內(nèi)使用Docker的架構(gòu)。
據(jù)阿里云資深專家易立介紹,Docker技術(shù)有三方面的優(yōu)勢。
首先是敏捷。由于Docker的輕量級,就意味著同一硬件上可以運行更多的應用,它可以將系統(tǒng)利用率提高5-10倍;而且因為輕量,它的啟動速度非常快,當公司業(yè)務出現(xiàn)峰值時,可以通過容器快速部署。容器技術(shù)也能實現(xiàn)產(chǎn)品的快速迭代,據(jù)調(diào)查,Docker對軟件版本發(fā)布頻率有高達13倍的平均提升。
然后是可移植性。在傳統(tǒng)架構(gòu)下,開發(fā)人員交付應用之后,運維人員需要部署合適的運行平臺。兩個環(huán)境間的差異往往會導致,應用在測試環(huán)境下正常運行,上線之后卻經(jīng)常會出問題。Docker則能把應用和應用環(huán)境一同打包,開發(fā)完成之后,運維人員可以直接使用這個容器來部署代碼。
經(jīng)過容器化的應用可以部署在任何地方,就可以避免原來因為環(huán)境差異帶來的問題,同時也可以無縫遷移云,不用鎖定某個云服務商。用戶在自己的筆記本電腦上開發(fā)了一個應用,容器化之后可以不加修改地發(fā)布到云上。
第三是可控性。容器使得大規(guī);ヂ(lián)網(wǎng)化運維變得可能,原來,企業(yè)的IT系統(tǒng)用久了,經(jīng)過多次版本更新,里面的東西變得不可知,一旦出現(xiàn)問題需要花大量的時間排查。如果用容器化的方式交付應用,則線上每一個版本都可以復現(xiàn),所有的東西都可以回溯。一旦原來的IT人員離職了,其他人也更容易理解應用程序是如何創(chuàng)建和工作的。
此外,易立指出,促進了開發(fā)和運維的一體化之外,Docker還有利于企業(yè)應用的現(xiàn)代化改進。傳統(tǒng)應用往往是單體架構(gòu),如企業(yè)原有的CRM、ERP等大型應用,但隨著新需求增加,更新和修復大型這類應用變得越來越困難;為此出現(xiàn)了微服務架構(gòu),其提倡將大應用拆解分一堆小服務,彼此協(xié)調(diào)提供功能,單個小服務可以獨立部署、測試和運行。云原生的企業(yè)應用的架構(gòu)一般是后者,Docker這套執(zhí)行環(huán)境就非常適配云原生應用。
根據(jù)阿里云去年的調(diào)查,技術(shù)人員使用或考慮使用Docker,大部分出于上述原因考慮。
雖然容器技術(shù)成為主流,將會是未來的趨勢,但目前在國內(nèi)仍未大規(guī)模普及。企業(yè)要使用該架構(gòu),依然需要付出一定的遷移和學習成本,可能還會有一定的安全考慮,這也是影響Docker普及的原因。因此,Docker推出了企業(yè)版處理類似問題。
據(jù)易立介紹,使用Docker架構(gòu)需要對企業(yè)應用容器化,像剛剛說的,云原生應用與Docker非常契合,但不可能所有的應用都是新寫的,有的企業(yè)應用屬于傳統(tǒng)架構(gòu)、沒有微服務,需要對現(xiàn)有系統(tǒng)做改造和遷移。
因此,針對傳統(tǒng)的企業(yè)應用,Docker推出了傳統(tǒng)應用遷移技術(shù),可以一鍵轉(zhuǎn)換虛擬機鏡像,將原來的企業(yè)化應用轉(zhuǎn)化為可以用容器化的方式交付和運維的應用。企業(yè)可以有兩種路徑,可以先將整個大應用容器化,再逐漸轉(zhuǎn)化成微服務架構(gòu);也可以先將企業(yè)拆成微服務架構(gòu),然后容器化。
此前,之前Docker企業(yè)版未落地中國,社區(qū)版由開源社區(qū)來維護,每個月有個更新,三個月發(fā)布一次穩(wěn)定版,這樣的好處是版本演進速度很快,但對企業(yè)而言卻帶來很大的運維壓力,需要經(jīng)常大規(guī)模對Docker版本進行修復和升級,企業(yè)需要有極強的軟件研發(fā)能力,并不是所有的企業(yè)IT部門都有將這種技術(shù)產(chǎn)品化的能力。
全球有不少公開的'Docker鏡像庫,其中Docker Hub是最大的公開倉庫,開發(fā)者可以在上面共享和拉取Docker鏡像,生成容器化的應用。但誰都可以往倉庫推送鏡像,就意味著無法保證安全風險。
針對此,Docker推出了Docker Store,上面的容器鏡像全都由Docker認證,確保安全性,包括通過安全掃描,確定沒有不合規(guī)的代碼;同時通過簽名“密封”鏡像,確保其不可篡改。這就有點像一個容器版的Apps Store,里面所有的鏡像都通過Docker審核。
總而言之,Docker企業(yè)版面向企業(yè)的,是一個完整的場景,而不是一個技術(shù)。它有增強的編排能力,有完整的控制臺界面,里面的操作都可以安全地使用,它在社區(qū)版上增加了面向企業(yè)用戶的管理和安全能力,同時提供了經(jīng)過認證的操作系統(tǒng)、容器和插件。中國Docker企業(yè)版的技術(shù)支持,將會由阿里云和Docker聯(lián)合提供。
說到阿里云跟Docker的合作,包括三個層面:Docker會借助阿里云的云基礎架構(gòu)進入中國,后者將為Docker Hub提供中國運營的基礎服務;阿里云會推動Docker企業(yè)版的落地,聯(lián)合提供銷售和技術(shù)支持;阿里云成為Docker認證的云平臺,Docker的認證插件和認證容器會驗證在阿里云上的穩(wěn)定可運行性,確?蛻粼诎⒗镌粕鲜褂肈ocker的體驗。
目前阿里云提供公共云版、飛天專有云版和飛天專有云敏捷版三種Docker的部署形態(tài),客戶也可以選擇在公共云上使用,也可以自己部署。
自從容器技術(shù)面世之后,其生態(tài)內(nèi)也出現(xiàn)了不少創(chuàng)業(yè)公司,國外涌現(xiàn)不少專注容器基礎服務、網(wǎng)絡、安全、存儲和監(jiān)控等某一細分領(lǐng)域的創(chuàng)業(yè)公司;在國內(nèi),除了阿里云以外,也有大批圍繞Docker技術(shù)提供服務的創(chuàng)業(yè)公司,提供云端的快速部署和管理能力,比如36氪報道過的時速云、數(shù)人云、靈雀云、才云科技、輕元科技。阿里云整合了Docker企業(yè)版的飛天敏捷版,跟他們可能存在一定競爭關(guān)系。
才云科技CEO張鑫曾經(jīng)說過,Docker本身一定不是核心競爭力,而真正的核心是如何能讓用戶或企業(yè)“無痛”地從非Docker的環(huán)境遷移至Docker化的世界,以及如何幫助用戶在新的Docker化的世界里建立一整套的開發(fā)運維體系。
阿里云也表示,企業(yè)需要的,并不僅是Docker這個技術(shù),而是一整套應用的解決方案。用戶最終選擇誰,取決于誰的服務更完整更好。不過,他們認為,國內(nèi)容器市場還在成長階段,他們和這些公司應該是在共同培育市場。
【專訪阿里云資深專家易立】相關(guān)文章: