圖1:從構(gòu)件(Artifact)到應(yīng)用(Application)再到運(yùn)維(Operation)——應(yīng)用程序的開(kāi)發(fā)階段(來(lái)源Wikibon)

可從開(kāi)發(fā)者筆記本上拿到一個(gè)應(yīng)用程序再成為一種常見(jiàn)的開(kāi)發(fā)形式僅僅只是一個(gè)完整應(yīng)用程序開(kāi)發(fā)生命周期的一小部分。Docker(容器的形式)實(shí)質(zhì)上是處理了構(gòu)件到應(yīng)用程序的階段。但將這個(gè)應(yīng)用程序放到功能性運(yùn)營(yíng)上還要費(fèi)一段功夫,不只技術(shù)方面,還要管理開(kāi)發(fā)(Dev)和運(yùn)維(Ops)之間的切換。必須將以下項(xiàng)目從應(yīng)用程序移動(dòng)遷移到運(yùn)維:

1.容器應(yīng)進(jìn)行數(shù)字簽名以確保發(fā)起的有效來(lái)源。

2.容器必須進(jìn)行掃描,確保它們不包含惡意軟件或其它未知安全漏洞。

3.一個(gè)Container Registry(容器注冊(cè))結(jié)構(gòu)必須恰當(dāng),應(yīng)當(dāng)對(duì)所有集中共享的服務(wù)執(zhí)行安全的最佳實(shí)踐。

4.容器環(huán)境必須能將服務(wù)名稱(chēng)和IT地址動(dòng)態(tài)分配到單個(gè)容器。

5.容器環(huán)境必須有一個(gè)服務(wù)發(fā)現(xiàn)型服務(wù),允許容器發(fā)布它們的可用性,并避免在容器文件內(nèi)嵌入服務(wù)名稱(chēng)或IP地址。

6.容器環(huán)境應(yīng)當(dāng)能確認(rèn)容器不僅是單個(gè)“主機(jī)”,而且是“集群”。集群應(yīng)具備簡(jiǎn)單集成負(fù)載平衡或代理服務(wù),避免單一故障點(diǎn)。

7.雖然容器不能維護(hù)本地?cái)?shù)據(jù),但不論是通過(guò)本地存儲(chǔ)服務(wù)還是數(shù)據(jù)庫(kù)服務(wù),容器環(huán)境應(yīng)具備提供永久存儲(chǔ)卷的能力。

8.不論是裸機(jī),虛擬機(jī)或者云資源,容器環(huán)境必須向運(yùn)維提供管理基本計(jì)算資源的能力。

9.容器環(huán)境必須向運(yùn)維提供保護(hù)及升級(jí)基本計(jì)算資源的能力,尤其側(cè)重操作系統(tǒng)的更新和漏洞消除。

329bContainerArch311

圖2:容器技術(shù)堆棧

開(kāi)發(fā)者和運(yùn)維正在如何將應(yīng)用程序模式化

除了這些容器環(huán)境內(nèi)的運(yùn)維要素,有一個(gè)新興技術(shù)細(xì)分市場(chǎng)側(cè)重如何“模式化”應(yīng)用程序環(huán)境。而這經(jīng)常稱(chēng)為“編排(Orchestration)”,與傳統(tǒng)模式部署更新現(xiàn)場(chǎng)資源不同,這些建模技術(shù)(如Kubernetes,Apache Mesos,Apache Aurora等)側(cè)重于描述應(yīng)用程序如何在容器環(huán)境內(nèi)運(yùn)行的確定方式。這些建模結(jié)構(gòu)定義了服務(wù)之間的交互,預(yù)期的性能和預(yù)期的可用性。其實(shí),它們正努力在應(yīng)用和運(yùn)維之間創(chuàng)建一個(gè)協(xié)定(或者一個(gè)“服務(wù)等級(jí)承諾”)。

容器生態(tài)系統(tǒng)的廣泛度正在提高

任何特定時(shí)間,抓拍容器生態(tài)系統(tǒng)都會(huì)導(dǎo)致這樣的logo移動(dòng):

329ccontainerscape

容器遠(yuǎn)景(來(lái)源:CustomerUP)

再過(guò)三個(gè)月,容器會(huì)由于收購(gòu),新初創(chuàng)公司沸騰以及開(kāi)源社區(qū)“下水”,前景一片大好。雖然社區(qū)在嘗試加快腳步,但對(duì)IT企業(yè)而言,理解哪些技術(shù)對(duì)它們業(yè)務(wù)最具意義以及哪些地方可以增值都有些困難。不同于2005-2010年的VMware生態(tài)系統(tǒng),Diane Greene所言:“VMware銷(xiāo)售的每一美元都會(huì)讓出售的硬件和服務(wù)多賣(mài)8-10美元”價(jià)值觀。容器生態(tài)系統(tǒng)始終在嘗試解決如何推進(jìn)有意義的營(yíng)收。該行業(yè)早就看到了較小型企業(yè)從以工具為中心的產(chǎn)品向以解決方案為中心的產(chǎn)品遷移,包括Docker近期推出的數(shù)據(jù)中心。這些新的產(chǎn)品正在努力簡(jiǎn)化部署和容器的操作難題,并且會(huì)對(duì)自身沒(méi)有以平臺(tái)為中心產(chǎn)品的生態(tài)系統(tǒng)公司造成一定影響,這些公司未來(lái)也會(huì)想要集成Docker的平臺(tái)。

結(jié)構(gòu)化VS非結(jié)構(gòu)化平臺(tái)的變革

2015年末,Wikibon認(rèn)為云原生應(yīng)用平臺(tái)市場(chǎng)可能被細(xì)分到結(jié)構(gòu)化和非結(jié)構(gòu)化平臺(tái)。即便是在該報(bào)告發(fā)布的短時(shí)間內(nèi),市場(chǎng)也在不斷演變,雖然結(jié)構(gòu)化平臺(tái)還是老樣子,但非結(jié)構(gòu)化平臺(tái)則逐漸演變?yōu)楦庸潭ㄍ瑫r(shí)保持一定程度的可組合性(Composable)。很多Wikibon確定的非結(jié)構(gòu)化廠商已經(jīng)通過(guò)創(chuàng)新或收購(gòu)開(kāi)始改變。正因如此,我們希望修正對(duì)結(jié)構(gòu)化和“可組合性”平臺(tái)的定義。即便仍然慮及一些平臺(tái)所要求的靈活性,但“可組合性”無(wú)疑更好的反映了平臺(tái)市場(chǎng)面向解決方案的狀態(tài)。

你的運(yùn)維團(tuán)隊(duì)是否對(duì)容器化成竹在胸

過(guò)去6個(gè)月里,許多獨(dú)立的調(diào)查研究認(rèn)可了容器的使用水平,容器也從根本上推動(dòng)了以應(yīng)用程序?yàn)橹行牟捎霉性瀑Y源的團(tuán)隊(duì)。但大多CIO表示它們對(duì)容器化并不感冒。

毫無(wú)疑問(wèn),DevOps,云原生應(yīng)用,微服務(wù)和容器在硅谷和初創(chuàng)公司里變得普遍,但距離企業(yè)公司有多遠(yuǎn)呢?近期DevOps調(diào)查數(shù)據(jù)顯示DevOps正在逐漸靠攏以虛擬機(jī)為中心環(huán)境的企業(yè),但其仍對(duì)容器知之甚少。

分享到

崔歡歡

相關(guān)推薦