用容器or虚拟机?

  • 来源:网络
  • 更新日期:2020-06-11

摘要:容器和虚拟机在应用场景上有一些重叠,但是各自有各自的优势。近一两年来,以容器为代表的云原生技术一直是IT行业的热门话题。随着云原生技术的发展,有些企业跳过IaaS层直接在物

容器和虚拟机在应用场景上有一些重叠,但是各自有各自的优势。近一两年来,以容器为代表的云原生技术一直是IT行业的热门话题。随着云原生技术的发展,有些企业跳过IaaS层直接在物理机上部署容器。容器技术的运用甚至超过云计算,更有甚者引发OpenStack堪忧的说法。现在时常提起容器与虚拟化谁将是市场主流的话题,我们现在还无从知晓答案。

 

 

 

容器与虚拟机之争

 

容器是云原生的关键技术,自然成为当下最受关注的软件技术之一,微服务、DevOps以及CI/CD等都建立在容器之上。作为一种轻量级的虚拟化技术,容器三大核心价值,即敏捷、弹性、可移植性。容器拥有更高的资源使用效率,因为它并不需要为每个应用分配单独的操作系统,因此实例规模更小、创建和迁移速度也更快,特别是随着Kubernetes(K8S)成为容器编排的标准进一步加速了容器的普及。如果说容器为应用的快速开发和弹性奠定了基础,那么K8S就为容器的大规模部署和运维提供了保证。

容器的普及对虚拟机产生了一定的冲击。容器与虚拟机本质上都属于虚拟化技术,所不同的是两者所在层级不同,容器在操作系统至上,与虚拟机相比少了操作系统,不同容器之间能共享操作系统,因此更轻量,启动更快,效率更好。但与虚拟机相比容器的隔离性要差,安全性不如虚拟机,另外虚拟机产品经过较长时间的发展,应用更加完善,相关工具也更为成熟。

 

 

 

 

融合是未来

 

现阶段的市场显现出了一些端倪。VMware宣布其最新一代云平台vSphere 7提供原生管理容器和虚拟机的能力。红帽在其一年一度的Red hat Summit 2020技术大会上宣布推出OpenShift虚拟化的预览版,支持在容器里部署虚拟机。虽然两者的出发点不同,一个是从虚拟机兼容容器,另一个是从容器兼容虚拟机,但殊途同归,两者都能实现容器与虚机的同时管理,用户不用纠结究竟应该部署在虚拟机还是容器部署在裸机上,从而更灵活支持未来的各种应用。

现在看起来,容器与虚拟机之间有和平共存之势。虚拟机更适合应用程序运行时需要所有操作系统资源和功能的场景,如需要多个这样的应该,使用虚拟机更为合适。相比较而言,容器更适合在更少的服务器上运行更多的应用。鉴于此,大部分企业会同时使用两种环境,容器和虚拟化会在相当长时间内共存,特别是有一部分企业已经部署虚拟化技术的情况,未来这两种技术会长期共存,甚至走向融合。