虛擬化技術與容器技術

2021-07-16 06:39:29 字數 1188 閱讀 4234

作為一種部署應用程式的全新方式,容器技術在短時間內獲得了廣泛關注,但是這種技術同樣存在某些限制,並且和虛擬機器存在本質上的不同。

虛擬化技術已經改變了現代計算方式,它能夠提公升系統資源使用效率、消除應用程式和底層硬體之間的依賴關係,同時加強負載的可以移植性和安全性,但是hypervisor和虛擬機器只是部署虛擬負載的方式之一。作為一種能夠替代傳統虛擬化技術的解決方案,容器虛擬化技術憑藉其高效性和可靠性得到了快速發展,它能夠提供新的特性,並且幫助資料中心專家解決新的顧慮。

容器和虛擬機器之間的主要區別在於虛擬化層的位置和作業系統資源的使用方式。

虛擬機器依賴於hypervisor,其通常被安裝在「裸金屬」系統硬體之上,這導致hypervisor在某些方面被認為是一種作業系統。一旦 hypervisor安裝完成, 就可以從系統可用計算資源當中分配虛擬機器例項了,每台虛擬機器都能夠獲得唯一的作業系統和負載(應用程式)。

通常,第一台虛擬機器都將會被用來執行系統管理程式,比如microsoft system center。而之後的虛擬機器可能包含其他企業負載,比如資料庫、erp、crm、郵件伺服器、**伺服器、web伺服器或者其他業務應用。虛擬機器之間是完全隔離的——沒有任何一台虛擬機器知道(或者依賴)相同系統當中的另外一台虛擬機器的存在——惡意軟體、應用程式崩潰和其他問題只能影響一台虛擬機器。虛擬機器從乙個虛擬系統被移動到另外乙個當中,而不用考慮系統硬體和作業系統等因素。

而容器環境的工作方式則有所不同。對於容器環境來說,需要首先安裝主機作業系統,之後將容器層(比如lxc或libcontainer)安裝在主機作業系統(通常是linux變種)之上。在安裝完容器層之後,就可以從系統可用計算資源當中分配容器例項了,並且企業應用可以被部署在容器當中。但是,每個容器化應用都會共享相同的作業系統(單個主機作業系統)。

相比於虛擬機器,容器擁有更高的資源使用效率,因為它並不需要為每個應用分配單獨的作業系統——例項規模更小、建立和遷移速度也更快。這意味相比於虛擬機器,單個作業系統能夠承載更多的容器。雲提供商十分熱衷於容器技術,因為在相同的硬體裝置當中,可以部署數量更多的容器例項。然而,單個作業系統有可能引起影響所有相關例項的單點事故。比如,惡意軟體或者主機作業系統崩潰可能禁用或者影響所有容器。此外,容器易於遷移,但是只能被遷移到具有相容作業系統核心的其他伺服器當中,這樣會無形中減少遷移選擇。

從實際應用的角度來說,容器和虛擬機器可以在同乙個資料中心當中共存,因此這兩種技術被認為是互補的——為現代應用程式架構師和資料中心管理員新增了可用工具集,通過不同的方式為應用負載提供支援。

容器技術與虛擬化技術理解

容器技術與虛擬化技術理解 虛擬化技術 虛擬化技術即通過hypervisor將os執行在物理裝置或是宿主os上,此兩種虛擬化為裸機虛擬化和宿主虛擬化 裸機 虛擬機器直接執行在系統硬體上,建立硬體全 例項,被稱為 裸機 型。裸機型在虛擬化中hypervisor直接管理呼叫硬體資源,不需要底層作業系統,也...

虛擬化技術與容器的優劣

在很久很久以前,開發軟體需要具備一台物理伺服器,在這個物理伺服器上搭建作業系統 linux windows 再在os之上開發管理自己的軟體。這樣做的缺點有 1 因為需要伺服器所以會花費掉一筆巨資,開發成本也就隨之上公升了。2 開發周期長,從購買物理伺服器到os搭建,在到真正開發軟體中途會浪費掉不少時...

Docker 容器化技術介紹(一) 之 虛擬化技術

docker 容器化技術介紹 一 之 虛擬化技術 docker 容器化技術介紹 二 之 docker 簡介 docker 容器化技術介紹 三 之 docker 元件 docker 容器化技術介紹 四 之 docker的安裝與啟動 docker 容器化技術介紹 五 之 docker 映象操作 dock...