关于应用程序的托管和开发,市场中的技术和产品琳琅满目。对比 Docker 和 VM,如何取舍?这主要由自身团队的因素决定,在选择 Docker 的情况下,你需要保证程序可在容器和虚拟机中运行。另外,成本和易用性也是重要考虑因素。
云和混合云自动化为编写和部署代码创造了新的工作流。容器技术与其他先进技术结合,可以有效减少对 Ops 基础设施的依赖。我们将从这些角度出发,对比 Docker 和 VM 的优劣。
虚拟程序托管
在日常软件开发中,我们使用的很多产品都离不开虚拟化技术。借助各种类型的 hypervisor(虚拟机管理器)解决方案,公司能够利用资源池来创建机器,而这些机器以往通常都是单独的硬件设备。VM 结合机器镜像与底层自动化,提供了一种快速可靠的机器创建方式。
用户可以充分利用现有的硬件资源,创建本地云环境所需的资源池。如今,许多生产系统都使用 VM 来处理关键程序。使用虚拟化机器,将可靠的基础设施与更现代化、更集中的管理相结合。
这类基础设施集群更像是裸机操作。每个虚拟机都是自己的实体,可以通过虚拟网络和存储进行分块。在使用 VMware 的情况下,vSphere支持自动化,我们因此能够从脚本或第三方编排软件的接口,创建动态机器。这是团队使用VM和Docker的原因之一。
最近,容器和编排工具备受关注&#x