物理机、虚拟机、容器的区别是什么?

物理机

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

在物理机之上,这就是虚拟机。

注意:物理机就是普通的主机。笔记本电脑,台式电脑都可以叫物理机。

虚拟机

虚拟机,与现在流行的“云计算”的概念的有着紧密联系,虚拟机的概念在IaaS层,即基础设施即服务部分,可以自行学习一下。为了让全人类能够像使用自来水、电一样使用计算资源,我们需要在几百上千台物理机上部署虚拟化软件,如vmware等等,使得

他们的表现就像一台巨大的计算机。同时它还具有灵活性和解耦性,你可以在一台物理机上部署10台虚拟机,使得一台物理机的表现就像10台性能略差的服务器,当你不需要他们时,你又可以随时的回收资源重新分配。

注意:虚拟机是建在物理机上的。相当于你有了几个电脑

容器

容器,也是虚拟层的概念,相对虚拟机而言,容器更加轻量级。虚拟机中需要模拟一台物理机的所有资源,比如你要模拟出有多少cpu、网卡、显卡等等,这些都是在软件层面通过计算资源实现的,这就给物理机凭空增加了不必要的计算量。容器仅仅在操

作系统层面向上,对应用的所需各类资源进行了隔离。这也是为何微服务、PaaS和Docker最近如此火爆的原因,资源消耗少,迁移部署简单,成本低。尤其是CNCF提供的一系列工具,更是把容器技术推动到了浪潮之巅。

注意:容器可以建在物理机和虚拟机上。一个物理机可以建很多个容器。每个容器都是一个小系统。。比虚拟机消耗更少

other

你去京东或者淘宝上,买cpu、显卡啊,硬盘啊,组装起来,开机装上Windows也好,Linux也好。

这就是一台物理机,硬件>你使用的系统。

然后,假设你装的Windows,你需要一台Linux来跑你的代码也好,学习也好,你需要安装一个虚拟化工具(如Windows自带的HV或者vmware),这样你就能启动一个Linux起来。

硬件>windows>linux,Linux就是虚拟机。

然后就到容器,这里就需要更加深一层的知识。从上面的架构来看,Windows就是hostOS,linux属于GuestOS,而容器则是取代了本来属于GuestOS的位置(既上图中的Linux)。

那么虚拟化工具就从vmware变成docker。虚拟机和容器的区别,最重要就是在损耗上面,容器管理一般不建议把一些不必要的功能放进去,所以容器启动的时候,基本是保持,一个应用启动一个容器,这样启动速度和消耗都会很小。

但是虚拟机则会把很多服务附带进去。所以启动速度和损耗都比较大一点

                   

 

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...