容器与虚拟机有什么不同?

蓝宝石葡萄2022-07-18  26

容器和虚拟机区别 容器和虚拟机的四大区别

1.容器和虚拟机有一个相似的使命:隔离应用程序及其关联,从而构建一组可以在任何地方运行的自包含单元。此外,容器和虚拟机消除了对物理硬件的需求,使我们能够更有效地使用计算资源,从而提高能效和成本效益。

2.虚拟机将虚拟硬件、内核(即操作系统)和用户空封装在一个新的虚拟机中,可以通过使用hypervisor在物理设备上运行。虚拟机依赖于虚拟机管理程序,而虚拟机管理程序通常安装在“裸机”系统的硬件上,这导致虚拟机管理程序在某些方面被认为是操作系统。一旦安装了管理程序,就可以从系统的可用计算资源中分配虚拟机实例,并且每个虚拟机可以获得唯一的操作系统和负载(应用)。简而言之,虚拟机需要先虚拟化一个物理环境,然后构建一个完整的操作系统,再构建一层运行时让应用运行。

3.对于容器环境,不需要安装主机操作系统,容器层(如LXC或libcontainer)直接安装在主机操作系统(通常是Linux变种)上。在安装容器层之后,可以从系统的可用计算资源中分配容器实例,并且可以在容器中部署企业应用。然而,每个容器化的应用程序将共享相同的操作系统(单主机操作系统)。容器可以被看作是安装了一组特定应用程序的虚拟机。它直接利用主机的内核,抽象层比虚拟机少,重量更轻,启动速度极快。

4.与虚拟机相比,容器具有更高的资源利用效率,因为它不需要为每个应用程序分配单独的操作系统——实例规模更小,创建和迁移速度更快。这意味着单个操作系统可以承载比虚拟机更多的容器。云提供商热衷于容器技术,因为在同一个硬件设备上可以部署更多的容器实例。此外,容器易于迁移,但只能迁移到其他具有兼容操作系统内核的服务器上,这将限制迁移选项。因为容器不像虚拟机那样封装内核或者虚拟硬件,所以每组容器都有自己隔离的user 空 room,这样多组容器就可以运行在同一个主机系统上。我们可以看到,所有的操作系统级架构都可以跨容器共享,唯一需要独立构建的是二进制文件和库。正因为如此,该容器具有极好的轻质特性。

转载请注明原文地址:https://juke.outofmemory.cn/read/792670.html

最新回复(0)