文章摘要:虚拟机云与容器云的区别 容器云和虚拟机的区别
虚拟机云与容器云的区别:1、资源浪费程度不同,虚拟机云提供的虚拟化需要运行整个操作系统,而容器云只是对应用进行 […]
虚拟机云与容器云的区别:1、资源浪费程度不同,虚拟机云提供的虚拟化需要运行整个操作系统,而容器云只是对应用进行虚拟化,因此占用的空间也不一样。2、容器云不能在一台容器化主机上同时运行Windows和Linux应用,而虚拟机云可支持同时运行Windows和Linux应用。
提到容器,我们首先想到的便是docker容器,近几年docker的成功已经让它成为事实上的行业标准。很多云服务商的容器云产品都是基于docker技术研发,容器云与虚拟机的区别可以简单理解为容器与虚拟机的不同。
我们知道,启动Docker容器比启动虚拟机快的多,Docker可以让你像管理虚拟机一样管理CPU,内存,网络和磁盘资源。
Docker是围绕Linux的cgroup来实现的,cgroup的作用就是控制容器可以使用的各种计算机资源,包括cpu,内存,网络和磁盘。
在这一点上,Docker提供了与虚拟机同样的能力,让你可以把计算机的一部分资源分配给一部分用户或者进程,这样他们就不会占用所有的计算资源;同时,Docker又不会像VMware所提供的虚拟化一样带来那么巨大的资源浪费(虚拟机必须运行整个操作系统,而Docker只是对应用进行虚拟化)。
不过,Docker还不会完全替代虚拟机,至少短期内不会。相对于虚拟机,Docker并不是一种非黑即白的替代方案,这主要是因为Docker依赖于底层标准化的操作系统,而虚拟机是当前解决这个问题最好的方式。
但是,这也意味着Docker是依赖于某种操作系统的,所以,你不可能在一台容器化主机上同时运行Windows和Linux应用,你需要至少2台分别运行Windows和Linux的容器化主机才行。
同时,就Docker当前的技术发展情况来看,容器的隔离能力还做得不到和虚拟机同样的级别;因此对于有些多租户的场景来说,Docker可能并不那么适用。