kvm和docker之间有什么区别

kvm和docker之间有什么区别,第1张

kvm和docker之间有什么区别

区别:1、启动速度上,Docker是秒级的,kvm是分钟级的;2、与kvm相比,Docker应用的性能高,同时系统的开销小;3、保存状态上,Docker比kvm更为轻便和低成本;4、硬盘使用上,Docker以MB为单位,kvm以GB为单位。

本教程 *** 作环境:linux5.9.8系统、docker-1.13.1版、Dell G3电脑。

Docker简介

Docker 项目的目标是实现轻量级的 *** 作系统虚拟化解决方案。 Docker 的基础是 Linux 容器(LXC)等技术。

在 LXC 的基础上 Docker 进行了进一步的封装,让用户不需要去关心容器的管理,使得 *** 作更为简便。用户 *** 作 Docker 的容器就像 *** 作一个快速轻量级的虚拟机一样简单。

下面的图片比较了 Docker 和传统虚拟化方式的不同之处,可见容器是在 *** 作系统层面上实现虚拟化,直接复用本地主机的 *** 作系统,而传统方式则是在硬件层面实现。

Docker与KVM(传统虚拟机)对比

作为一种新兴的虚拟化方式,Docker 跟传统的虚拟化方式相比具有众多的优势。

1、Docker容器的启动可以在秒级实现,这相比传统的虚拟机方式要快得多。 其次,Docker 对系统资源的利用率很高,一台主机上可以同时运行数千个 Docker 容器。

2、容器除了运行其中应用外,基本不消耗额外的系统资源,使得应用的性能很高,同时系统的开销尽量小。传统虚拟机方式运行 10 个不同的应用就要起 10 个虚拟机,而Docker 只需要启动 10 个隔离的应用即可。

3、 虚拟化技术依赖物理CPU和内存,是硬件级别的;而docker构建在 *** 作系统上,利用 *** 作系统的containerization技术,所以docker甚至可以在虚拟机上运行。

4、虚拟化系统一般都是指 *** 作系统镜像,比较复杂,称为“系统”;而docker开源而且轻量,称为“容器”,单个容器适合部署少量应用,比如部署一个redis、一个memcached。

5、传统的虚拟化技术使用快照来保存状态;而docker在保存状态上不仅更为轻便和低成本,而且引入了类似源代码管理机制,将容器的快照历史版本一一记录,切换成本很低。

6、传统的虚拟化技术在构建系统的时候较为复杂,需要大量的人力;而docker可以通过Dockfile来构建整个容器,重启和构建速度很快。更重要的是Dockfile可以手动编写,这样应用程序开发人员可以通过发布Dockfile来指导系统环境和依赖,这样对于持续交付十分有利。

7、当然KVM对比于容器也有一个比较大的优势就是可以使用不同的 *** 作系统或内核。所以,举例说,你可以使用微软Azure,同时运行Windows Server2012的实例和SUSE Linux企业级服务器的实例。至于Docker,所有容器都必须使用同样的 *** 作系统和内核。

对比总结

特性

Docker容器

KVM虚拟机

启动

秒级

分钟级

硬盘使用

一般为 MB

一般为 GB

性能

接近原生

弱于

系统支持量

单机支持上千个容器

一般几十个

推荐学习:《docker视频教程》

以上就是kvm和docker之间有什么区别的详细内容,

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/710047.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-24
下一篇 2022-04-24

发表评论

登录后才能评论

评论列表(0条)

保存