首先放一張圖,對虛擬機器和容器做乙個整體的對比。
隨著伺服器的能力和容量的逐漸增加,而乙個機器上只能一次執行一種作業系統。因此虛擬機器應時而生,在物理伺服器的上層執行軟體模擬特定的硬體系統。hypervisor位於硬體和系統之間,是建立虛擬機器必須的乙個部分。
每個虛擬機器中都執行著乙個系統。安裝不同系統的虛擬機器可以在同乙個伺服器上執行。例如,乙個unix系統和linux系統的虛擬機器可以在同乙個伺服器上執行,並且每個虛擬機器可以擁有乙個比較大的容量。
作業系統的虛擬化在過去越來越受歡迎,這就意味著當乙個伺服器的執行環境移動到另乙個伺服器的執行環境時,軟體也可以正常的執行。容器提供了可以在乙個伺服器上把各個執行環境(作業系統)隔離開的一種方法。
容器位於硬體和作業系統的上方,這個作業系統可以是linux,也可以是windows。每個容器都共享主機作業系統的核心通常還包括檔案的庫。共享的元件是只能進行讀取的,每個容器都可以通過特定的方法進行掛載寫入。這就使得容器特別的『』輕『』,容器的大小一般以m(兆)為單位,只需要幾分鐘就可以啟動完成,而虛擬機器常常需要幾分鐘再能啟動完成。
容器的好處就在於它的啟動速度和『』輕『』的特點。容器可實現「可共享」,可用於各種公共和私有雲部署,通過快速打包應用程式及其依賴的環境來加速開發和測試。另外,容器可以減小運營的開銷。
由於容器是共享主作業系統的核心,因此就無法在伺服器上執行與主伺服器不同的作業系統,也就是說不能再linux的伺服器上執行windows。
虛擬機器和容器在很多方面上都有所不同,但主要是因為容器提供了一種虛擬化作業系統的方法,以便在單個作業系統例項上執行多個工作負載。而使用虛擬機器,硬體進行虛擬化,以執行多個作業系統。
根據需求的不同,也就在容器和虛擬機器之間進行取捨。
docker容器和虛擬機器的區別
各種虛擬機器技術開啟了雲計算時代 而docker,作為下一代虛擬化技術,正在改變我們開發 測試 部署應用的方式。那虛擬機器與docker究竟有何不同呢?首先,大家需要明確一點,docker容器不是虛擬機器。2014年,當我第一次接觸docker的時候,我把它比做一種輕量級的虛擬機器。這樣做無可厚非,...
容器和虛擬機器
說明 容器和虛擬機器都依賴於宿主機才能執行。宿主機可以是筆記本,是資料中心的物理伺服器,也可以是公有雲的某個例項。假設宿主機是一台需要執行 4 個業務應用的物理伺服器。在虛擬機器模型中,首先要開啟物理機並啟動 hypervisor 引導程式。一旦 hypervisor 啟動,就會占有機器上的全部物理...
虛擬機器和容器比較
容器相比虛擬機器更輕量 一 虛擬機器 二 容器 一 本質上的區別 vm vmware 在宿主機器 宿主機器作業系統的基礎上建立虛擬層 虛擬化的作業系統 虛擬化的倉庫,然後再安裝應用 container docker容器 在宿主機器 宿主機器作業系統上建立docker引擎,在引擎的基礎上再安裝應用。那...