docker的应用越来越多,他与虚拟机的核心区别是什么?
收起VMWare/OpenStack的虚拟化技术为我们打开了一扇新的大门,原来我们可以不用如此麻烦的管理物理机,采用虚拟化的技术,同时辅助各种工具,可以更好的实现对资源的管理,提高资源的利用率。当没有容器技术时,为了实现应用的快速发布和运维,会有两个问题:
如果没有虚拟化,容器编排系统Kubernetes直接接入物理机,如果说在私有云情况下还可以通过一系列物理机纳管工具实现灵活的资源分配与回收,那么在公有云场景下,厂商将自己的物理服务器都拿出来供用户自由申请分配,单是想想就能明白,对用户来说成本只会高不低,推广难度自然是很大。当然,为了特定的需求,公有云厂商为用户直接提供特定硬件的服务器,甚至是托管数据中心,是另外一种场景了。
总的来说,虚拟化技术使得数据中心内的管理对象从静态的物理机编程动态的虚拟机,容器技术则是在虚拟化技术基础之上实现应用的打包构建、部署调度和运行,二者绝不是为了解决同一种问题搞出来两种方案,而是互为补充,二者结合起来才使得云计算IaaS/PaaS理念真正落地。