關于Docker技術你至少應該知道這九個方面
譯文用于在虛擬化容器中部署和分發(fā)應用程序的Docker開源平臺具有諸多優(yōu)點。本文解釋了企業(yè)應當了解這項流行技術的幾個方面。
Docker容器架構
Docker容器的架構包括裝有主機操作系統(tǒng)的物理機器。主機操作系統(tǒng)上面部署了Docker引擎,引擎有助于構建用來托管運行應用程序的虛擬容器。Docker引擎構建隔離的容器,應用程序就可以部署在這些容器上面。不像典型的虛擬機管理程序解決方案,Docker不需要為每個應用程序構建單獨的虛擬機,也不需要為每個虛擬機安裝來賓操作系統(tǒng)(guest OS)。
在基于虛擬機管理程序的應用程序虛擬化中,虛擬化平臺(比如Hyper-V或VMware)部署在裝有主機操作系統(tǒng)的物理服務器上。虛擬化平臺上構建了虛擬機,每個虛擬機都有獨立的來賓操作系統(tǒng)。應用程序部署在所有這些層上。托管運行那么多的虛擬機(每個虛擬機都有獨立的來賓操作系統(tǒng))讓這種架構對資源的需求量比Docker容器大得多。
容器自動化
Docker容器通常提供了內(nèi)置工具,使容器配置過程實現(xiàn)自動化,為此它可以利用來自任何現(xiàn)有應用程序容器的源代碼。這需要處理服務、依賴項、封裝及更多操作。Docker還提供了一系列廣泛的預先配置的Docker映像,可以幫助企業(yè)組織快速部署應用程序容器。
為了實現(xiàn)同樣這一系列任務,任何虛擬機管理程序解決方案都需要一套復雜的程序,包括將應用程序連同依賴項和工具一同克隆到隔離的程序包中。
計算資源需求
在Docker容器中,應用程序直接建立在Docker引擎上,因而不需要來賓操作系統(tǒng)。這項功能有助于減少托管運行多個來賓操作系統(tǒng)的總體系統(tǒng)要求(比如處理器或內(nèi)存)。這還減少了對計算資源的需求,因而降低了部署成本。不像Docker容器,基于虛擬機管理程序的應用程序需要額外的來賓操作系統(tǒng)以及應用程序?qū)嶋H運行所需要的其他依賴項。
#p#
進程隔離和安全
在Docker容器中,每個應用程序或容器與其他應用程序或容器隔離開來,但它們都使用同一個根(root)。這提供了簡化管理這個優(yōu)點,不過也帶來了幾個缺點。比如說,萬一根受到危及,主機容器就可能面臨險境。相比之下,虛擬機管理程序解決方案提供了多少有點全面的隔離,具體取決于需求。
Docker公司正在竭力解決Docker容器的安全問題。該公司最近與業(yè)內(nèi)專家協(xié)作,并與互聯(lián)網(wǎng)安全中心一起發(fā)布了部署Docker 1.6或更新版技術的安全***實踐。
啟動時間
容器直接建立在Docker引擎上;啟動應用程序所花的時間完全取決于應用程序的類型。底層內(nèi)核已經(jīng)在運行,沒有中間層操作系統(tǒng)(來賓操作系統(tǒng))縮短了容器的啟動時間。在虛擬機管理程序中,系統(tǒng)總的啟動時間包括來賓操作系統(tǒng)的啟動時間和應用程序的啟動時間。
應用程序交付
Docker允許在“Docker化”的容器中跨不同環(huán)境分發(fā)或交付應用程序,所有依賴項綁定為一個程序包。比如說,想把某個應用程序從開發(fā)環(huán)境遷移到測試環(huán)境,然后遷移到生產(chǎn)環(huán)境,整個容器就可以作為一個實體來加以封裝和遷移;應用程序仍與所有的環(huán)境配置綁定起來。這有助于跨不同部門、團隊成員之間或者通過云來遷移應用程序,沒有導致故障的任何風險。
在虛擬機管理程序解決方案中,封裝和遷移應用程序連同所有相關服務和工具總是有可能導致環(huán)境遭到破壞。
#p#
硬件兼容性
借助Docker容器,管理員就能構建應用程序,沒必要考慮來賓操作系統(tǒng)方面的任何依賴項。這使得應用程序具有輕量級、運行快、開銷低的優(yōu)點,同時消除了潛在的平臺兼容性問題。
在虛擬機管理程序解決方案中,每個虛擬機專用的來賓操作系統(tǒng)使得響應起來比Docker容器應用程序成本更高、速度更慢。在特定虛擬機管理程序平臺中構建的任何虛擬機無法在其他虛擬機管理程序平臺上運行。
企業(yè)級功能
雖然許多企業(yè)組織已經(jīng)開始使用Docker容器用于應用程序虛擬化,但這項技術仍缺少一些企業(yè)級虛擬化功能,比如細粒度訪問控制、容器遷移、日志和備份恢復等。而大多數(shù)虛擬機管理程序平臺支持諸如此類的企業(yè)級功能。如果企業(yè)組織在考慮將虛擬化應用程序部署到生產(chǎn)環(huán)境中,建議使用虛擬機管理程序解決方案,就因為這一點:基于Docker的解決方案在提供企業(yè)級功能方面有所欠缺。
供應商
現(xiàn)在有許多供應商提供關于容器技術的產(chǎn)品和服務。從2013年起,負責Docker開源項目的商業(yè)公司Docker, Inc.,開始主導容器虛擬化的市場。最近,包括擁有LXD技術的Canonical以及擁有Rocket技術的CoreOS等其他供應商,也開始進入容器市場。
原文標題:Docker containers 9 fundamental facts