新聞中心
當(dāng)前位置:網(wǎng)站首頁 > 新聞中心
3分鐘讀懂什么是容器
說起 “容器” ,大家的第一反應(yīng)肯定是日常生活中使用的鍋碗瓢盆,或者裝運(yùn)貨物的箱子盒子,用來盛放各種各樣的物品。那么拿港口碼頭來說,每天都要通過船舶向外運(yùn)送大量的貨物。裝貨的時(shí)候肯定不會(huì)直接扔進(jìn)船艙,所以每個(gè)碼頭都會(huì)用大量的集裝箱來運(yùn)載貨物。有了這些集裝箱,貨物不用雜亂無章地堆放在一起,又可以按照分類一層一層地?cái)[放,更易于管理,同時(shí)也方便運(yùn)輸。
那么我們今天說的 “容器” 究竟是什么呢?它的靈感其實(shí)就來源于那些 “集裝箱” 。在說 “容器” 之前,先來簡(jiǎn)單講一下我們很耳熟的 —— “虛擬機(jī)(VM)”,并對(duì)比一下兩者的區(qū)別。
虛擬機(jī)(VM)大家肯定不會(huì)陌生了。顧名思義虛擬機(jī)就是用來模擬計(jì)算機(jī)系統(tǒng)的軟件,讓使用者可以在一臺(tái)計(jì)算機(jī)上運(yùn)行看似多臺(tái)計(jì)算機(jī)的設(shè)備。在一些需要不同類型的硬件或操作系統(tǒng)上運(yùn)行軟件時(shí)虛擬機(jī)是一個(gè)好幫手,這樣就無需使用其他的硬件了。自從虛擬化技術(shù)和云計(jì)算服務(wù)出現(xiàn)以來,大大小小的 IT 公司都將虛擬機(jī)作為降低成本和提高效率的一種方式。但是,虛擬機(jī)會(huì)占用大量系統(tǒng)資源。每個(gè)虛擬機(jī)不僅要運(yùn)行一個(gè)完整的操作系統(tǒng),還需要運(yùn)行操作系統(tǒng)要運(yùn)行的所有虛擬硬件。這樣就會(huì)消耗大量的內(nèi)存和 CPU 資源。與運(yùn)行單獨(dú)的物理計(jì)算機(jī)相比,這樣是比較經(jīng)濟(jì)的;但對(duì)于某些應(yīng)用程序而言卻是很浪費(fèi)的。
這種情況下,就促進(jìn)了容器的發(fā)展。容器(Container)是一種更輕量級(jí),更靈活的虛擬化處理方式,它將一個(gè)應(yīng)用程序所需的一切打包在一起。容器包括所有代碼,各種依賴甚至操作系統(tǒng),這讓應(yīng)用程序幾乎在任何地方都可以運(yùn)行。因此它的誕生,解決了一個(gè)重要問題:如何確保應(yīng)用程序從一個(gè)環(huán)境移動(dòng)到另一個(gè)環(huán)境的正確運(yùn)行。它只是虛擬了操作系統(tǒng),而不像虛擬機(jī)一樣去虛擬底層計(jì)算機(jī)。△ 虛擬機(jī)(VM)與容器(Container)那么對(duì)比虛擬機(jī),容器有哪些特點(diǎn)呢?可移植性:目前容器技術(shù)的現(xiàn)代形式主要體現(xiàn)在應(yīng)用程序容器化(如 Docker)和系統(tǒng)容器化(如 LXC)中。這兩種形式的容器都能讓 IT 團(tuán)隊(duì)從底層架構(gòu)中抽象出程序代碼,從而實(shí)現(xiàn)跨各種部署環(huán)境的可移植性。
輕量級(jí):容器通常位于物理服務(wù)器及其主機(jī)操作系統(tǒng)之上。它可以通過單個(gè)操作系統(tǒng)安裝來運(yùn)行多個(gè)工作環(huán)境。因此容器特別 “輕” —— 它們只有幾兆字節(jié),只需幾秒鐘即可啟動(dòng)。
降低成本:與虛擬機(jī)相比,內(nèi)存,CPU 和存儲(chǔ)效率的提高是容器技術(shù)的關(guān)鍵優(yōu)勢(shì)。由于可以在同一基礎(chǔ)架構(gòu)上支持更多容器,那么這些資源的減少就可以轉(zhuǎn)化為巨大的成本節(jié)省,同時(shí)還可以減少管理開銷?!?虛擬機(jī)和容器的特點(diǎn)對(duì)比
那么容器技術(shù)主要應(yīng)用在哪些場(chǎng)景呢?目前主流的有以下幾種:
1. 提高現(xiàn)有應(yīng)用的安全性和可移植性并節(jié)約成本。每個(gè)企業(yè)的環(huán)境中都有一套較舊的應(yīng)用來服務(wù)于客戶或自動(dòng)執(zhí)行業(yè)務(wù)流程。即使是大規(guī)模的單體應(yīng)用,通過容器隔離的增強(qiáng)安全性、可移植性特點(diǎn)以降低成本。
2. 加速應(yīng)用架構(gòu)現(xiàn)代化進(jìn)程。容器允許開發(fā)人員選擇最適合于每種服務(wù)的工具或技術(shù)棧,隔離服務(wù)以消除任何潛在的沖突,并可以獨(dú)立于應(yīng)用的其他服務(wù)組件,輕松地共享、部署、更新和瞬間擴(kuò)展。
3.優(yōu)化IT基礎(chǔ)設(shè)施。容器有助于優(yōu)化 IT 基礎(chǔ)設(shè)施的利用率和成本,作為一種輕量級(jí)打包和隔離應(yīng)用工作負(fù)載的方法,允許在同一物理或虛擬服務(wù)器上毫不沖突地運(yùn)行多項(xiàng)工作負(fù)載,同時(shí)減少操作系統(tǒng)和服務(wù)器的維護(hù)工作。
|