物理机、虚拟机、容器的比较

俗话说,学好虚拟化走遍宇宙都不怕,但对于计算机方面的初学者,肯定很多人都好奇为什么要使用虚拟机和容器,而不是直接使用多进程来运行多个业务。下面Mr chen就带大家一起浅谈浅谈三者的区别。

首先用三张图很直观的表示三者的区别。

一、物理机

物理机、虚拟机、容器的比较_第1张图片

二、虚拟机

物理机、虚拟机、容器的比较_第2张图片

三、容器

物理机、虚拟机、容器的比较_第3张图片

 

物理机,对应采购的服务器设备,又叫裸设备,bare metal,随着摩尔定律的增长,单个服务器的性能逐渐提升,物理服务器的性能是如此的高,以致于我们实际使用到的物理机的性能只占了百分之几甚至更低,为了灵活的部署系统和应用,需要一层虚拟层在物理机之上,这就是虚拟机。

虚拟机,与现在流行的“云计算”的概念的有着紧密联系,虚拟机的概念在IaaS层,即基础设施即服务部分,可以自行学习一下。为了让全人类能够像使用自来水、电一样使用计算资源,我们需要在几百上千台物理机上部署虚拟化软件,如vmware等等,使得他们的表现就像一台巨大的计算机。同时它还具有灵活性和解耦性,你可以在一台物理机上部署10台虚拟机,使得一台物理机的表现就像10台性能略差的服务器,当你不需要他们时,你又可以随时的回收资源重新分配。

容器,也是虚拟层的概念,相对虚拟机而言,容器更加轻量级。虚拟机中需要模拟一台物理机的所有资源,比如你要模拟出有多少CPU、网卡、显卡等等,这些都是在软件层面通过计算资源实现的,这就给物理机凭空增加了不必要的计算量。容器仅仅在操作系统层面向上,对应用的所需各类资源进行了隔离。这也是为何微服务、PaaS和Docker最近如此火爆的原因,资源消耗少,迁移部署简单,成本低。尤其是CNCF提供的一系列工具,更是把容器技术推动到了浪潮之巅。

你可能感兴趣的:(随笔)