本篇文章給大家分享的是有關(guān)docker容器和虛擬機(jī)的區(qū)別是什么,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
目前成都創(chuàng)新互聯(lián)已為1000多家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站托管維護(hù)、企業(yè)網(wǎng)站設(shè)計、漣源網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
docker容器和虛擬機(jī)的區(qū)別是什么?傳統(tǒng)的虛擬化是在硬件物理資源的基礎(chǔ)上,虛擬出多個OS,然后在OS的基礎(chǔ)上構(gòu)建相對獨(dú)立的程序運(yùn)行環(huán)境。而Dokcer則是在OS的基礎(chǔ)上進(jìn)行虛擬,顯然Dokcer更輕量,因此其資源占用、性能消耗相比傳統(tǒng)虛擬化都有很大優(yōu)勢。
結(jié)構(gòu)方面區(qū)別
虛擬機(jī)實(shí)現(xiàn)資源隔離的方式,是利用Hypervisor虛擬化服務(wù)器的CPU、內(nèi)存、IO等設(shè)備。
而docker容器就簡單得多,Docker引擎可以看成Linux的namespace、cgroup和鏡像管理文件系統(tǒng)的封裝,Docker并沒有和虛擬機(jī)一樣利用一個完全獨(dú)立的操作系統(tǒng)實(shí)現(xiàn)環(huán)境隔離,利用的是目前l(fā)inux內(nèi)核本身支持的容器方式實(shí)現(xiàn)的資源和環(huán)境隔離。
簡單來說,Docker就是利用namespace實(shí)現(xiàn)的系統(tǒng)環(huán)境的隔離,利用cgroup實(shí)現(xiàn)資源限制,利用鏡像實(shí)現(xiàn)根環(huán)境的的隔離。
性能方面區(qū)別
由于Docker有著比虛擬機(jī)更少的抽象層,不需要Hypervisor實(shí)現(xiàn)硬件資源虛擬化,運(yùn)行在Docker容器上的程序直接使用的都是實(shí)際物理機(jī)的硬件資源,減少了加載操作系統(tǒng)內(nèi)核的時間和資源的消耗,因此,在CPU、內(nèi)存等資源利用率上更有優(yōu)勢。
比如,容器啟動時間是秒級,而虛擬機(jī)都是分鐘級,硬盤使用一般為MB計算,而虛擬機(jī)大多是GB級的空間占用,在性能上,容器更接近原生,單機(jī)就能支持上千個,遠(yuǎn)多于虛擬機(jī)的幾十個。
docker設(shè)計小巧,部署遷移快速,運(yùn)行高效,應(yīng)用之間相互獨(dú)立,管理人員可以看到所有容器的內(nèi)容。而虛擬化技術(shù)比較臃腫,不論什么應(yīng)用都需要先創(chuàng)建新的系統(tǒng),并且并非按照應(yīng)用隔離,而是按照系統(tǒng)隔離,管理員無法看到系統(tǒng)內(nèi)部信息。
以上就是docker容器和虛擬機(jī)的區(qū)別是什么,小編相信有部分知識點(diǎn)可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。