容器領域趨勢分析:多點開花,Docker不再一家獨大
譯文就在去年的10月份,大家似乎都鐘愛Docker。你要是以為Docker就是容器領域的唯一玩家,那也情有可原。
Docker本身其實只是在2014年下半年才備受關注,Docker 1.0在之前的6月份***亮相。但在6月份到10月份這短短幾個月的時間里,Docker人氣一路飆升,紅帽在新的RHEL 7版本中增添了支持Docker的功能,IBM公開擁抱Docker和容器,亞馬遜推出了EC2容器服務,連公認的競爭對手VMware也在當年8月宣布支持Docker。
雖然Docker和容器化目前還無法代替完全成熟的服務器虛擬化,尤其是在管理基礎設施方面,但像Kubernetes Docker管理系統(tǒng)這些開源選擇方案還是讓人看到了希望:容器技術有望在將來滿足企業(yè)的更高級要求。
容器競爭白熱化
但是雖然2014年下半年支持Docker及容器化的聲勢越來越大,但現(xiàn)在Docker的處境也未必是人見人愛。很快就會有許多競爭對手挑戰(zhàn)Docker在容器領域一家獨大的霸主地位,與之一較高下。
我們在談論誰呢?首先是CoreOS,這種開源輕型操作系統(tǒng)基于Linux內核,是為了給部署的集群系統(tǒng)提供基礎設施而設計的。CoreOS的老板Alex Polvi對于Docker技術邁進的方向似乎一點也不滿意。
他在一篇博文中說:“Docker在2013年初***展示在我們面前時,‘標準容器’這個想法惹人注目,立即引起了人們的注意。”
Polvi繼續(xù)說:“可遺憾的是,一種簡單的可重復使用的組件影響不了整個系統(tǒng)的運作方式。Docker現(xiàn)在在開發(fā)啟動云服務器的工具、用于集群的系統(tǒng)以及一系列廣泛的功能,比如構建映像、運行映像、上傳、下載及最終甚至覆蓋網(wǎng)絡,它們都編譯成一個整體的二進制代碼,在你的服務器上主要作為root來運行。”
他補充說,從安全和可組合性的角度來看,他認為,Docker的流程模型存在根本性的缺陷,因為一切都是通過集中式守護程序來運行的。
隨后Polvi直指問題的核心:“我們應該不要再談論什么Docker容器,而是開始談論Docker平臺。Docker容器沒有成為我們之前設想的那個簡單的可組合的構建模塊。我們仍信奉Docker當初提出的容器的最初前提,所以我們在對此做一番工作。”
Rocket,一種新的容器運行時環(huán)境
他在這方面所做的工作就是,構建一種新的容器運行時環(huán)境,名為Rocket,以此替代Docker運行時環(huán)境。他表示,它在設計時就著眼于可組合性、安全性和速度。原型已經(jīng)在Github上發(fā)布。
Docker***執(zhí)行官Ben Golub很快對CoreOS宣布Rocket作出了回應。雖然希望能探討Rocket項目提出的一些技術觀點,他還是采用了頗具外交辭令的說法:
“雖然我們并不同意一些觀點以及選擇宣布Rocket的時機(就在阿姆斯特丹召開DockerCon大會的前夕),我們還是希望我們都能繼續(xù)以什么對用戶和開發(fā)人員最有利作為開發(fā)產品的指導方針。”
而Rocket不是Docker的唯一替代容器。這個領域還有多得多的競爭對手。
微軟通過Drawbridge支持Docker容器
微軟已經(jīng)宣布,它將在其Azure基礎設施即服務(IaaS)系統(tǒng)中支持Docker容器;等自己的平臺即服務(PaaS)支持Linux后,可能還會在其PaaS上支持Docker。微軟還在致力于開發(fā)自己的容器技術,眼下這項技術名為Drawbridge。該容器技術可能會在不遠將來的某個時候出現(xiàn)在Windows Server和Azure中。的確,Azure的***技術官Mark Russinovich已證實,公司已經(jīng)在內部使用Drawbridge。
另外還有Spoon提供的另一種Windows可能。微軟解釋:“Spoon讓你可以將應用程序及其依賴項包裝到一種名為容器的輕型、隔離的虛擬環(huán)境。隨后,容器化應用程序可以在安裝有Spoon的任何Windows機器上運行,不管底層基礎設施怎樣。這就消除了安裝、沖突、故障和缺失的依賴項。”
Spoon容器建立在Spoon虛擬機的基礎上,而Spoon虛擬機是一種應用程序虛擬化引擎,它為操作系統(tǒng)的諸多核心對象提供了輕型名稱空間隔離機制,比如文件系統(tǒng)、注冊表、進程、網(wǎng)絡和線程子系統(tǒng)等對象。
Canonical發(fā)布自己的容器系統(tǒng)
另外還有不甘落后的Canonical,該公司已宣布了自己的容器系統(tǒng),名為LXD,面向其Ubuntu Linux發(fā)行版。該公司表示,LXD還將與OpenStack集成起來。(Docker建立在Linux容器即LXC上,LXD的名稱由此而來。)
Canonical這樣解釋其新項目:“LXC將是客戶端,LXD將是服務器。開發(fā)人員如今之所以喜歡LXC,是因為它為他們提供了幾乎即時的輕型容器,他們因此可以在里面運行一系列廣泛的Linux操作環(huán)境。在將來,開發(fā)人員可以在想要創(chuàng)建并拆除這些環(huán)境的所有機器上運行LXD,并且從網(wǎng)絡上任何地方,使用LXC來驅動這個過程。”
另外請別忘了Flockport,它大力支持LXC用于容器化。Flockport這樣解釋:“LXC是一項為用戶提供輕型Linux容器的容器技術,而Docker是一種基于容器的單一應用程序虛擬化引擎。它們聽起來似乎相似,但其實全然不同。”
容器領域的整個形勢讓人不由地聯(lián)想到了五六年前的服務器虛擬化領域。Docker在2014年大受歡迎,在2015年勢必會迎來更迅猛的發(fā)展,進一步成熟起來,但是Docker肯定不會是未來容器領域的唯一玩家。
一旦市面上出現(xiàn)了某種優(yōu)秀的技術,大家都想?yún)⑴c其中,包括微軟,微軟早晚會介入。而如果這意味著選擇、甚至競爭,那么自然是多多益善。
英文原文鏈接:http://www.webopedia.com/Blog/docker-not-the-only-container-option.html