物理機,對應采購的服務器設備,又叫裸設備,bare metal,隨著摩爾定律的增長,單個服務器的性能逐漸提升,物理服務器的性能是如此的高,以致于我們實際使用到的物理機的性能只占了百分之幾甚至更低,為了靈活的部署系統(tǒng)和應用,需要一層虛擬層在物理機之上,這就是虛擬機。
虛擬機,與現(xiàn)在流行的“云計算”的概念的有著緊密聯(lián)系,虛擬機的概念在IaaS層,即基礎設施即服務部分,可以自行學習一下。為了讓全人類能夠像使用自來水、電一樣使用計算資源,我們需要在幾百上千臺物理機上部署虛擬化軟件,如vmware等等,使得他們的表現(xiàn)就像一臺巨大的計算機。同時它還具有靈活性和解耦性,你可以在一臺物理機上部署10臺虛擬機,使得一臺物理機的表現(xiàn)就像10臺性能略差的服務器,當你不需要他們時,你又可以隨時的回收資源重新分配。
容器,也是虛擬層的概念,相對虛擬機而言,容器更加輕量級。虛擬機中需要模擬一臺物理機的所有資源,比如你要模擬出有多少CPU、網(wǎng)卡、顯卡等等,這些都是在軟件層面通過計算資源實現(xiàn)的,這就給物理機憑空增加了不必要的計算量。容器僅僅在操作系統(tǒng)層面向上,對應用的所需各類資源進行了隔離。
這也是為何微服務、PaaS和Docker最近如此火爆的原因,資源消耗少,遷移部署簡單,成本低。尤其是CNCF提供的一系列工具,更是把容器技術推動到了浪潮之巔。