docker和kvm、xen虚拟化的区别:1、docker比kvm更省资源,可以提供非常接近宿主机的性能,而kvm资源隔离比docker更高,kvm支持的操作系统类型更多;2、docker是容器化,启动可以在秒级实现,比kvm、xen虚拟化快得多。
本教程操作环境:linux7.3系统、docker19.03版、Dell G3电脑。
docker和kvm、xen虚拟化的区别是什么
概括总结型:
docker比kvm更省资源,可以提供非常接近宿主机的性能,而kvm资源隔离比docker更高,kvm支持的操作系统类型更多
在应用方面docker (经得起折腾,部署速度快),在系统方面kvm( 宿主隔离,也支持快照)
分开阐述型:
docker是容器化,启动可以在秒级实现,比传统的虚拟机快得多,Docker 对系统资源的利用率很高,一台主机上可以同时运行数千个 Docker 容器
优势:
高效的利用系统资源
快速的启动时间
一致的运行环境
持续交付和部署
更轻松的维护和扩展
KVM是一个开源的系统虚拟化模块,使用的是liunx自身的调度器管理,用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视频教程》
以上就是docker和kvm、xen虚拟化的区别是什么的详细内容,更多请关注php中文网其它相关文章!