docker的应用越来越多,与虚拟机的核心区别是什么?

docker的应用越来越多,他与虚拟机的核心区别是什么?显示全部

docker的应用越来越多,他与虚拟机的核心区别是什么?

收起
参与33

查看其它 7 个回答李守超的回答

李守超李守超系统架构师博云

VMWare/OpenStack的虚拟化技术为我们打开了一扇新的大门,原来我们可以不用如此麻烦的管理物理机,采用虚拟化的技术,同时辅助各种工具,可以更好的实现对资源的管理,提高资源的利用率。当没有容器技术时,为了实现应用的快速发布和运维,会有两个问题:

  1. 应用以虚拟机镜像的方式发布:相比于容器镜像,因为要包含内核以及操作系统的文件,所以会大很多。另外镜像构建和编辑的过程不如容器镜像方便。
  2. 服务调度以虚拟机的粒度实现:由于虚拟机内的进程要多很多,一方面会造成资源浪费,另一方面,在评估资源占用率上,虚拟机也没有容器方式更加科学和准确。

如果没有虚拟化,容器编排系统Kubernetes直接接入物理机,如果说在私有云情况下还可以通过一系列物理机纳管工具实现灵活的资源分配与回收,那么在公有云场景下,厂商将自己的物理服务器都拿出来供用户自由申请分配,单是想想就能明白,对用户来说成本只会高不低,推广难度自然是很大。当然,为了特定的需求,公有云厂商为用户直接提供特定硬件的服务器,甚至是托管数据中心,是另外一种场景了。

总的来说,虚拟化技术使得数据中心内的管理对象从静态的物理机编程动态的虚拟机,容器技术则是在虚拟化技术基础之上实现应用的打包构建、部署调度和运行,二者绝不是为了解决同一种问题搞出来两种方案,而是互为补充,二者结合起来才使得云计算IaaS/PaaS理念真正落地。

软件开发 · 2019-05-07
浏览4441

回答者

李守超
系统架构师博云
擅长领域: 云计算云原生容器

李守超 最近回答过的问题

回答状态

  • 发布时间:2019-05-07
  • 关注会员:10 人
  • 回答浏览:4441
  • X社区推广