容器技術(shù)企業(yè)落地的思考與選型
計算的力量,推動著行業(yè),推動著IT移向新的位置。重新定義計算的邊界,我們在歷史的潮流中總是可以看到,新的理念,新的技術(shù),前仆后繼,有的在洪流中揚名立萬,有的則被無情沖刷,有的離目標(biāo)僅咫尺之遙,有的則憑其變革的力量正在接受行業(yè)的檢驗。不管經(jīng)歷如何,技術(shù)都逃不過要走企業(yè)落地的路途。
近年來,以Docker為代表的容器技術(shù),紅得發(fā)紫。其理念之新穎,其生態(tài)之健壯,不斷被業(yè)界所津津樂道。容器技術(shù)基于各種場景的嘗試與實踐,在過去的兩年中,更是層出不窮。一時間,容器甚至被認(rèn)為是未來的基石性技術(shù)。
容器技術(shù)并非新生事物,其中***代表性的Docker,如何在當(dāng)今局勢下,幫助容器技術(shù)在企業(yè)級落地,另外其商業(yè)模式的探究,都將是值得深思的話題。
標(biāo)準(zhǔn)化帶來的價值
《重新定義計算的邊界》一文中,Docker帶來的標(biāo)準(zhǔn)化價值被大談特談,不論是交付的標(biāo)準(zhǔn)化,還是資源的標(biāo)準(zhǔn)化。標(biāo)準(zhǔn)化的價值,無疑是技術(shù)在企業(yè)落地時十分重要的參考因素。技術(shù)標(biāo)準(zhǔn)可以保障技術(shù)在發(fā)展過程中,減少不穩(wěn)定因素,使得技術(shù)本身趨向穩(wěn)定。標(biāo)準(zhǔn)化有利于企業(yè)內(nèi)部有效的技術(shù)管理,極大提高內(nèi)部效率。有效的技術(shù)管理又可以幫助企業(yè)開展技術(shù)創(chuàng)新,提高經(jīng)濟(jì)效益,也可以大大降低非標(biāo)準(zhǔn)化有可能帶來的技術(shù)風(fēng)險,管理成本。
容器技術(shù)帶來的“交付標(biāo)準(zhǔn)化”,幫助企業(yè)在業(yè)務(wù)應(yīng)用開發(fā)、封裝、測試、發(fā)布等方面逐漸形成標(biāo)準(zhǔn),企業(yè)內(nèi)部的應(yīng)用管理效率得到質(zhì)的飛躍。容器技術(shù)帶來的“資源標(biāo)準(zhǔn)化”,直接帶來的效益是基礎(chǔ)設(shè)施資源的優(yōu)化,以及資源利用率的提高。簡化的資源模型,在構(gòu)建企業(yè)數(shù)據(jù)中心時,同時可以兼顧數(shù)據(jù)中心架構(gòu)轉(zhuǎn)向以應(yīng)用為中心。
容器技術(shù)的發(fā)展,隨著OCI(Open Container Initiative)的成立,也意味著容器生態(tài)標(biāo)準(zhǔn)的建立。Linux基金會下OCI標(biāo)準(zhǔn)的建立,使得容器技術(shù)的發(fā)展有據(jù)可循,容器生態(tài)朝著正路發(fā)展。Docker作為當(dāng)前應(yīng)用最廣的容器技術(shù),在OCI成立之初,即將其底層容器管理引擎runC貢獻(xiàn)給OCI,成為當(dāng)前基金會下的唯一容器引擎實現(xiàn),推動著容器生態(tài)的發(fā)展。
企業(yè)IT發(fā)展的動力——競爭
標(biāo)準(zhǔn)化的價值毋庸置疑,技術(shù)在企業(yè)的落地,如果缺少企業(yè)自身的動力,技術(shù)的價值往往會懸在半空。企業(yè)IT發(fā)展的演進(jìn),面對外界技術(shù)的影響,往往呈現(xiàn)不同的立場,尤其是面臨新技術(shù)的決策。新技術(shù)是雙刃劍,一個“新”字即讓企業(yè)百味雜陳,面臨采納,如果新技術(shù)不能使企業(yè)在行業(yè)內(nèi)擁有“競爭優(yōu)勢”,那技術(shù)的落地往往較為悲觀。
“競爭”——市場環(huán)境中亙古不變的話題。不同類型、不同規(guī)模、不同歷史包袱的企業(yè),對待技術(shù)的態(tài)度均存在大大小小的差異。企業(yè)在市場環(huán)境中,敢于嘗試新的技術(shù),并在市場中占有可衡量的競爭優(yōu)勢,那么其他企業(yè)有可能存在的競爭劣勢,自然會迫使企業(yè)自身,嘗試重新找回市場平衡,甚至讓市場的平衡傾向自己。
容器技術(shù),會為企業(yè)帶來這樣的競爭力嗎?企業(yè)與企業(yè)之間,總是呈現(xiàn)不透明的狀態(tài),這種差異也讓技術(shù)走進(jìn)企業(yè)存在一些障礙,但是企業(yè)關(guān)心的共同點,其中很大一點都集中在“提高效率”。效率的競爭,Docker作為容器技術(shù)的代表,如何帶來優(yōu)勢,則至關(guān)重要。如果細(xì)細(xì)探究,不難發(fā)現(xiàn)以下三點優(yōu)勢:
- 容器技術(shù)帶來的資源利用率提高
- Docker帶來的軟件流程優(yōu)化
- Docker帶來的應(yīng)用管理價值
資源利用率在企業(yè)級未必是永恒的真***。如果有一定的規(guī)模效應(yīng),資源利用率的提高,勢必將帶來可觀的資本效率提高。固定資源在企業(yè)內(nèi)部一直是非常重要和敏感的話題。業(yè)務(wù)的增長、負(fù)載的變化,都會帶來資源管理的變動。如果資源利用率大幅提高,以及資源的分配方式足夠靈活,那么容器技術(shù)的競爭力就不難理解,傳統(tǒng)的資源管理痛點也就迎刃而解。
企業(yè)傳統(tǒng)的IT架構(gòu),很有可能在過去的數(shù)十年間,與傳統(tǒng)的商業(yè)化軟硬件緊耦合,比如金融、運營商等行業(yè)。這些架構(gòu)往往與互聯(lián)網(wǎng)公司的云架構(gòu)相去甚遠(yuǎn)。如此一來,這些企業(yè)在與互聯(lián)網(wǎng)企業(yè)的競爭中,將處于明顯的劣勢。Docker在互聯(lián)網(wǎng)行業(yè)的實踐,大量的運用在企業(yè)軟件流程管理的優(yōu)化上。升級應(yīng)用開發(fā)模型,高效封裝軟件,自動化完成測試與構(gòu)建,提高業(yè)務(wù)應(yīng)用的發(fā)布能力,同時借助業(yè)務(wù)系統(tǒng)高效的運營能力,迅速響應(yīng)市場需求的變化,持續(xù)完成迭代。Docker帶來的業(yè)務(wù)持續(xù)迭代,同樣可以很好的支撐傳統(tǒng)企業(yè)的互聯(lián)網(wǎng)業(yè)務(wù),最終形成業(yè)務(wù)的市場競爭力。
過往架構(gòu)之下,業(yè)務(wù)的增長,無可避免的造成管理成本的提高,應(yīng)用的運維成本,資源的運維成本,同樣在內(nèi)。業(yè)務(wù)的復(fù)雜度提高,應(yīng)用的部署管理、應(yīng)用的伸縮管理、應(yīng)用的容錯管理等,都將接踵而至。以Docker為基礎(chǔ)的編排平臺,本職工作即完成此類工作,其自動化能力,大大提高云時代下應(yīng)用的管理效率。這樣的平臺,行業(yè)內(nèi)比較成功的有:Docker、Kubernetes、Mesos等。
容器技術(shù)選型
容器技術(shù)的落地,其商業(yè)化價值思考,一直被企業(yè)圍繞。認(rèn)可其價值,在蓬勃發(fā)展的容器生態(tài)中,自然還逃不脫技術(shù)選型。而如今的容器生態(tài),最為活躍的當(dāng)屬Docker、Kubernetes、Mesos等。
結(jié)合企業(yè)級的場景,面對軟件交付,結(jié)合數(shù)據(jù)中心資源,容器生態(tài)技術(shù)與企業(yè)的現(xiàn)狀如下:
談及容器生態(tài),當(dāng)下很難不談Docker。Docker的價值在于軟件流程管理方面的標(biāo)準(zhǔn)化,以及數(shù)據(jù)中心資源的標(biāo)準(zhǔn)化。企業(yè)在技術(shù)選型時,自然會傾向選擇標(biāo)準(zhǔn)化、同時在企業(yè)IT布局中覆蓋盡可能廣的技術(shù)。作為容器技術(shù)生態(tài)中的主角,Docker自始至終將終止定義為“Build,Ship,Run”,從全球的開發(fā)者切入,完善當(dāng)前行業(yè)軟件封裝的難題。Docker乃至容器技術(shù),開發(fā)者利用其進(jìn)行軟件封裝之后,帶來的流程性標(biāo)準(zhǔn),真正解決行業(yè)軟件交付的多年痛點,同時又促進(jìn)企業(yè)DevOps的踐行。
說到Docker在開發(fā)者生態(tài)中的投入,看下圖即可理解。最近的2年內(nèi),Docker技術(shù)的發(fā)展逐漸從Docker Engine的大量投入開始發(fā)生轉(zhuǎn)變。開發(fā)者生態(tài)的Desktop版和編排生態(tài)的SwarmKit官方有意逐投入大量人力物力。(此圖來自Docker公司Swarm等項目負(fù)責(zé)人陳東洛先生)。
傳統(tǒng)的PaaS平臺,其功能特性專注于軟件的最終發(fā)布與管理,看似極大的便捷了軟件交付,然而軟件的交付往往受制于流程中的短板環(huán)節(jié),傳統(tǒng)PaaS帶來的***環(huán)境效率提升很難提高軟件交付的整體效率。而以Docker為基礎(chǔ)的容器云平臺,恰恰環(huán)環(huán)相扣,形成軟件持續(xù)交付的閉環(huán)。
行業(yè)內(nèi)火熱的Docker、Kubernetes以及Mesos各自的立足點有所差異,各有千秋。若要對比的話,正如上圖所示,更多的是在應(yīng)用的發(fā)布環(huán)節(jié)。平行比較,Docker的Swarm功能,以及Kubenetes的編排,Mesos的調(diào)度管理,很難直接決出個高低。換言之,如果加上企業(yè)級應(yīng)用場景,來輔佐容器技術(shù)選型,則會顯得更有意義。Docker Swarm借助Docker的生態(tài)優(yōu)勢,做應(yīng)用編排,用戶基石穩(wěn)健,社區(qū)完善。Docker的大規(guī)模場景下的運用已經(jīng)受到行業(yè)的檢驗,然而Docker自帶的Swarm編排功能,業(yè)界成功案例,將會成為企業(yè)選型時的考量依據(jù)。Kubenetes擁有互聯(lián)網(wǎng)巨頭Google背書,谷歌內(nèi)部的大規(guī)模運維經(jīng)驗是否能夠在傳統(tǒng)企業(yè)內(nèi)落地,則需要仔細(xì)權(quán)衡。Mesos作為分布式系統(tǒng)的調(diào)度內(nèi)核,在傳統(tǒng)數(shù)據(jù)計算方面,擁有廣泛的經(jīng)驗,上層應(yīng)用框架的普及情況,以及生態(tài)現(xiàn)狀,存在些許的劣勢,相信也是企業(yè)選型時考慮的要素之一。
總結(jié)
容器技術(shù)在企業(yè)的落地,是一個價值普及的過程。標(biāo)準(zhǔn)化與提高效率,是以Docker為代表的容器技術(shù)傳遞的***價值。容器技術(shù)已經(jīng)被認(rèn)為是當(dāng)今IT領(lǐng)域中的一個突破點,新的技術(shù)帶來的影響,從量變到質(zhì)變過程中,創(chuàng)新能力將成為新的企業(yè)機(jī)遇。新的機(jī)遇,新的市場機(jī)會,企業(yè)如何從競爭中脫穎而出,都將逐漸變得清晰。