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