微軟與VMware全面迎接并拓展Docker容器技術(shù)

責(zé)任編輯:editor007

作者:張銳編譯

2015-08-24 16:53:19

摘自:ZD至頂網(wǎng)

目前軟件容器技術(shù)革命尚處于早期發(fā)展階段,而微軟公司正積極著手運(yùn)用Docker容器機(jī)制及精簡(jiǎn)化操作系統(tǒng)幫助自家Windows Server堆棧同其它平臺(tái)展開(kāi)競(jìng)爭(zhēng)。

目前軟件容器技術(shù)革命尚處于早期發(fā)展階段,而微軟公司正積極著手運(yùn)用Docker容器機(jī)制及精簡(jiǎn)化操作系統(tǒng)幫助自家Windows Server堆棧同其它平臺(tái)展開(kāi)競(jìng)爭(zhēng)。Linux早在起步階段就作為現(xiàn)代分布式應(yīng)用程序的根據(jù)地存在,而包括Docker、CoreOS rkt以及LXC Linux容器在內(nèi)的各類相關(guān)方案皆立足于此。另外,紅帽公司亦在主動(dòng)將自家精簡(jiǎn)型Linux(名為Atomic Host)推向商業(yè)化市場(chǎng),谷歌也拿出了開(kāi)源Kubernetes容器控制系統(tǒng)。

面對(duì)服務(wù)器虛擬化老對(duì)手VMware,微軟方面自然不甘示弱,雙方正爭(zhēng)相為Docker提供支持,同時(shí)推出用于承載容器化應(yīng)用程序的精簡(jiǎn)操作系統(tǒng)。VMware公司目前已經(jīng)有計(jì)劃創(chuàng)建自家精簡(jiǎn)型Linux——名為Photon項(xiàng)目,并有意以開(kāi)源方式幫助其進(jìn)一步擴(kuò)展普及度。另外虛擬巨頭還為其ESXi虛擬機(jī)管理程序設(shè)計(jì)出新的虛擬機(jī)實(shí)現(xiàn)方式,命名為Bonneville項(xiàng)目,旨在對(duì)ESXi虛擬機(jī)加以簡(jiǎn)化、使其呈現(xiàn)出與Docker容器相仿的外觀與運(yùn)作方式。

Photon與Bonneville相結(jié)合將并發(fā)出巨大的能量,微軟公司當(dāng)然很清楚這一點(diǎn)。Photon的內(nèi)存占用量大約為25 MB,相比之下完整安裝的Linux操作系統(tǒng)則擁有高達(dá)3 GB的臃腫體積。微軟目前尚未正式公布其Nano Server規(guī)范,也就是其即將推出的Windows Server精簡(jiǎn)版,但已經(jīng)展示出一臺(tái)擁有160個(gè)計(jì)算核心以及1 TB內(nèi)存的主機(jī)樣品。這臺(tái)主機(jī)能夠在Hyper-V虛擬機(jī)管理程序之上承載多達(dá)1000個(gè)Nano Server實(shí)例,如此出色的容納能力意味著Nano Server確實(shí)是一款具備極端輕量化屬性的系統(tǒng)。(如果大家親自計(jì)算,就會(huì)發(fā)現(xiàn)每個(gè)實(shí)例的內(nèi)存占用量約為1 GB,這完全無(wú)法與25 MB的Photon相提并論。)

VMware公司在x86硬件平臺(tái)之上憑借著強(qiáng)大的服務(wù)器虛擬化技術(shù)將微軟穩(wěn)穩(wěn)壓倒,其目前年?duì)I收高達(dá)60億美元,并在全球范圍內(nèi)擁有超過(guò)50萬(wàn)家客戶以及運(yùn)行在數(shù)百萬(wàn)臺(tái)服務(wù)器之上的5000萬(wàn)套虛擬機(jī)系統(tǒng)。為了保持住如此強(qiáng)勢(shì)的業(yè)務(wù)表現(xiàn),虛擬巨頭自然需要以積極態(tài)度與微軟在這場(chǎng)軟件容器發(fā)展浪潮當(dāng)中展開(kāi)競(jìng)爭(zhēng)。VMware公司目前正著眼于開(kāi)源社區(qū)戰(zhàn)術(shù)及戰(zhàn)略,當(dāng)然也包括Docker及OpenStack等技術(shù)方案,為了幫助企業(yè)客戶群體在無(wú)需更換現(xiàn)有核心VMware技術(shù)產(chǎn)品的前提下享受容器新技術(shù)的種種優(yōu)勢(shì)。微軟方面的思路也是同樣,其早在二十多年前就曾嘗試?yán)肳indows NT Server入住數(shù)據(jù)中心市場(chǎng),且目前仍在繼續(xù)在Docker窗口與精簡(jiǎn)系統(tǒng)領(lǐng)域遵循同樣的發(fā)展戰(zhàn)略。

微軟與VMware雙方都付出了大量精力,希望能夠在已經(jīng)快速成為容器化系統(tǒng)首選方案的Docker當(dāng)中占據(jù)先發(fā)優(yōu)勢(shì)。值得強(qiáng)調(diào)的是,Docker如今幾乎處于無(wú)可匹敵的狀態(tài),其發(fā)展速度非常驚人,同時(shí)也代表著容器技術(shù)的實(shí)際執(zhí)行標(biāo)準(zhǔn)。

需要注意的是,微軟公司在以超大規(guī)模方式運(yùn)行分布式應(yīng)用程序方面極具實(shí)踐經(jīng)驗(yàn),這主要?dú)w功于微軟旗下的Azure云以及Office 365乃至Xbox Live等作為軟件帝國(guó)組成部分存在的各類服務(wù)。精簡(jiǎn)化Nano Server屬于Windows Server 2016的高壓縮版本,這套公布于今年4月的微軟Docker發(fā)展實(shí)施方案正是整體戰(zhàn)略當(dāng)中的核心元素所在。在Nano Server的支持下,微軟公司只提取了服務(wù)器操作系統(tǒng)中的Server Core,同時(shí)舍棄了大量可有可無(wú)的組件與功能——其中包括32位應(yīng)用支持、Minimal Server Interface與整套圖形化用戶界面堆棧、Windows Installer Service以及本地與遠(yuǎn)程桌面協(xié)議登錄功能。為了強(qiáng)調(diào)其小巧體積,微軟曾在今年春季提到Nano Server只相當(dāng)于Windows Server VHD虛擬磁盤(pán)鏡像體積的7%,其受攻擊面與重啟數(shù)量則分別較后者低92%與80%。

Nano Server的技術(shù)預(yù)覽版已經(jīng)公布了一段時(shí)間,但在于本周發(fā)布的Windows Server 2016第三套技術(shù)預(yù)覽版中,微軟公司第一次展示了如何利用Windows Server Containers實(shí)現(xiàn)Docker。微軟方面在Windows Server 2016當(dāng)中嵌入了與Linux平臺(tái)相同的Docker引擎守護(hù)進(jìn)程,并在Windows內(nèi)核中添加了多項(xiàng)功能作為支持。為了防止混淆,我們需要強(qiáng)調(diào)一點(diǎn):這并不代表Windows能夠運(yùn)行基于Linux的Docker鏡像。其實(shí)際含義在于,Windows用戶能夠像在Linux平臺(tái)上一樣使用完全相同的Docker容器創(chuàng)建及運(yùn)行流程。再說(shuō)得直白一點(diǎn),Docker并不會(huì)意識(shí)到或者在乎自身到底是運(yùn)行在Windows還是Linux系統(tǒng)平臺(tái)上,但其代碼仍然能夠正常實(shí)現(xiàn)。

微軟公司需要修復(fù)約18萬(wàn)行Windows Server代碼才能完成這一浩大的系統(tǒng)瘦身工程,而這僅僅是整套系統(tǒng)代碼庫(kù)中的一小部分。微軟方面還在Windows Server內(nèi)核當(dāng)中添加了低級(jí)資源隔離抽象機(jī)制,相當(dāng)與谷歌用于幫助Linux社區(qū)開(kāi)發(fā)所提供的namespaces與cgroups,為了保證Docker容器能夠運(yùn)行在Windows平臺(tái)之上。軟件巨頭也調(diào)整了多款自家Visual Studio工具(包括內(nèi)部與在線版本),這樣它們就能夠創(chuàng)建出ASP.NET應(yīng)用程序并將其運(yùn)行在立足于Azure公有云的Windows Server Containers(微軟版本的Docker容器方案)當(dāng)中。這些窗口可以通過(guò)Docker客戶端加以管理,并由Docker或者微軟Windows平臺(tái)上的腳本創(chuàng)建方案PowerShell進(jìn)行創(chuàng)建。

微軟公司作出承諾,表示W(wǎng)indows Server 2016的未來(lái)技術(shù)預(yù)覽版本將利用Hyper-V Containers機(jī)制實(shí)現(xiàn)Docker支持能力,其能夠在精簡(jiǎn)化Hyper-V虛擬機(jī)當(dāng)中運(yùn)行Docker容器。

根據(jù)Azure首席技術(shù)官M(fèi)ark Russinovich在一篇博文中所解釋,Hyper-V容器將擁有自己的Windows內(nèi)核副本以及專屬系統(tǒng)內(nèi)存配額,這意味著其容器化環(huán)境的隔離性要高于Windows Software Containers方案。Windows Software Containers與Hyper-V容器能夠利用同樣的Docker API與Docker客戶端實(shí)現(xiàn)可部署性與可控制性。同樣的,二者在容器化軟件層面的功能性完全相同,但在資源隔離、安全性、啟動(dòng)速度、內(nèi)存占用量以及其它資源需求方面則有所區(qū)別。

Docker扮演著容器技術(shù)之舟上的舵手角色

根據(jù)推測(cè),微軟公司已經(jīng)在以Azure云為平臺(tái)運(yùn)用這兩類容器方案方面積累到了豐富的經(jīng)驗(yàn)。而這也是我們最希望與軟件巨頭進(jìn)行探討的議題方向。我們希望了解微軟方面如何利用這些技術(shù),又如何對(duì)其進(jìn)行內(nèi)部管理。對(duì)于Azure客戶來(lái)說(shuō),微軟公司允許他們使用Mesos、Kubernetes以及Deis工具來(lái)管理Docker窗口,而Azure則可以配合Docker Compose與Swarm容器部署及管理工具。目前DockerHub庫(kù)擁有18萬(wàn)套容器方案,其中大部分面向Linux實(shí)例。我們期待著觀察在Windows Server 2016全面推出之后,Windows容器庫(kù)將迎來(lái)怎樣的發(fā)展速度。目前全球范圍內(nèi)的Windows服務(wù)器部署數(shù)量已經(jīng)達(dá)到數(shù)千萬(wàn)臺(tái),而新版本的出現(xiàn)加上容器機(jī)制的介入相信將讓這一數(shù)字得到進(jìn)一步提升。

Docker支持能力很可能成為微軟推出的,最具市場(chǎng)號(hào)召力與客戶吸引力的Windows Server 2016升級(jí)理由。誠(chéng)然,總會(huì)有一部分客戶需要更高內(nèi)存容量或者更多計(jì)算核心數(shù)量、承載能力更強(qiáng)的虛擬機(jī)管理程序或者其它什么新型方案。但對(duì)于目前的大部分工作負(fù)載實(shí)例來(lái)看,Windows Server 2012的可擴(kuò)展能力已經(jīng)足以應(yīng)對(duì)。因此,如果大家想了解微軟在Docker容器的支持方面會(huì)帶來(lái)怎樣的表現(xiàn),那么這就是最好的Windows Server 2016升級(jí)理由。Docker不僅能夠幫助Windows Server在DevOps微服務(wù)領(lǐng)域保持強(qiáng)大的競(jìng)爭(zhēng)能力,同時(shí)也讓客戶有了遷移至新版本甚至進(jìn)一步擴(kuò)大自身Windows Server部署規(guī)模的理由。或者,至少能夠讓客戶不至于選擇將新型應(yīng)用程序交由Linux系統(tǒng)打理。

VMware公司積極擁抱Docker的理由也是一樣。其ESXi 6.0虛擬機(jī)管理程序的可擴(kuò)展能力已經(jīng)足夠讓絕大多數(shù)客戶滿意,運(yùn)行在其之上的虛擬機(jī)系統(tǒng)亦是同理。而且盡管VMware方面可以用一天時(shí)間來(lái)大談所謂軟件定義數(shù)據(jù)中心概念,但大部分企業(yè)還沒(méi)有準(zhǔn)備好全面接受其NSX網(wǎng)絡(luò)虛擬化以及vRealize云工具。這部分業(yè)務(wù)在VMware現(xiàn)有客戶群體中的占比還非常有限,而且短期內(nèi)這一比例恐怕很難快速增長(zhǎng)。

盡管在VMware看來(lái),讓現(xiàn)有50萬(wàn)家客戶接受NSX網(wǎng)絡(luò)虛擬化方案可能對(duì)業(yè)務(wù)更具推動(dòng)作用,但同樣不可忽視的是,企業(yè)客戶切實(shí)需要以規(guī)?;绞綄F(xiàn)有軟件開(kāi)發(fā)及部署機(jī)制推向Docker。我們認(rèn)為微軟與VMware雙方將致力于交付Docker支持能力,從而維持住現(xiàn)有客戶群體。而且如果他們無(wú)法成功實(shí)現(xiàn)這一目標(biāo),那么Linux社區(qū)將替其代勞,進(jìn)而蠶食二者的市場(chǎng)份額與營(yíng)收空間。

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號(hào)-6京公網(wǎng)安備 11010502049343號(hào)