什么是虚拟机监控程序?

复制 URL

虚拟机监控程序是一种软件,它可以将计算资源(如处理能力、内存和存储)汇集起来,并在 虚拟机(VM)之间重新分配这些资源。这项技术使虚拟化成为可能,这意味着您可以在一台物理机上创建并运行多台虚拟机。

虚拟机监控程序有时也称为虚拟机监控器(VMM)。可以将其视为负责分配构成虚拟机的组件的“主管”。虚拟机监控程序从物理硬件中获取这些资源,并将它们同时提供给多个虚拟机,从而支持创建新的虚拟机和管理现有的虚拟机。运行了虚拟机监控程序的物理硬件称为主机,而使用其资源的虚拟机则被称为虚拟客户机。

虚拟机监控程序的工作原理是什么?

所有虚拟机监控程序都需要一些操作系统级的组件来运行虚拟机,例如内存管理器、进程调度器、输入/输出(I/O)堆栈、设备驱动程序、安全管理器、网络堆栈等。

虚拟机监控程序会为每个虚拟机提供已分配的资源,并管理虚拟机资源与物理资源之间的调度。但实际的计算操作仍然由物理硬件执行,例如,虚拟机监控程序负责管理调度安排,CPU 则按照虚拟机的请求执行 CPU 指令。

多个不同的操作系统可以在同一台物理硬件上同时运行,并通过虚拟机监控程序共享相同的虚拟化硬件资源。这是虚拟化的一个关键优势。如果没有虚拟化,则一个硬件只能运行一个操作系统。 

传统供应商和开源社区提供了多种虚拟机监控程序。 VMware 是一款实现虚拟化的热门产品,可以提供 ESXi 虚拟机监控程序和 vSphere 虚拟化平台。

基于内核的虚拟机(KVM)是一种内建于 Linux® 内核中的开源解决方案。 其他选项包括开源的 Xen 和 Microsoft Hyper-V。 

探索红帽的虚拟化解决方案

有 2 种不同类型的虚拟机监控程序可用于虚拟化:1 类和 2 类虚拟机监控程序。

1 类

1 类虚拟机监控程序,也称为本机或裸机虚拟机监控程序,直接在主机的硬件上运行,以管理客户机操作系统。它可取代主机操作系统,虚拟机监控程序直接将虚拟机资源调度到硬件上。 

这种类型的虚拟机监控程序常用于企业数据中心或其他基于服务器的环境。

KVM、Microsoft Hyper-V 和 VMware vSphere 都是典型的 1 类的虚拟机监控程序。KVM 已于 2007 年合并到 Linux 内核,因此如果您使用的是较新版本的 Linux,就可以直接使用 KVM。 

2 类

2 类的虚拟机监控程序,也称为托管虚拟机监控程序,它在传统操作系统上以软件层或应用的形式运行。

它的工作原理是从主机操作系统中将客户机操作系统抽象出来。虚拟机的资源被调度分配到主机操作系统上,然后由主机操作系统传递给硬件执行。 

2 类虚拟机监控程序更适合希望在私人电脑上运行多个操作系统的个人用户。 

VMware Workstation 和 Oracle VirtualBox 就是典型的 2 类虚拟机监控程序。 

红帽资源

总体而言,容器和虚拟机看起来很相似。它们都是封装型计算环境,其中整合了各种 IT 组件并将其与系统的其他部分隔离开来。重要区别在于它们的扩展方式和可移植性。 

容器是与系统其他部分隔离开的一个或一组进程。容器仅允许进程访问已指定的资源请求。这些资源限制可确保容器能够在有足够容量的节点上运行。

虚拟机包含自己的操作系统(OS),因此可以同时执行多个需要占用大量资源的功能。由于虚拟机的可用资源多得多,因此它们可以抽象、分离、复制和模拟整个服务器、操作系统、台式机、数据库和网络。 

虚拟机监控程序还允许您在虚拟机中运行多个操作系统,但容器只能运行一种类型的操作系统。例如,运行在 Linux 服务器上的容器只能运行 Linux 操作系统。 

尽管有时候容器会被当做虚拟机监控程序的替代品,但这并不完全准确,因为容器和虚拟化可满足不同的需求。

继续阅读

虚拟机可以提供一个与系统其余部分隔离开的环境。这样,无论虚拟机内部运行什么,都不会干扰主机硬件上运行的其他内容。

由于虚拟机是隔离的,因此即使虚拟机受到威胁,整个系统也不会受到影响。 

然而,如果虚拟机监控程序本身遭到黑客攻击,则可能会导致它管理的所有虚拟机出现问题,从而使每个虚拟机中的数据面临风险。 

安全协议和要求可能会因虚拟机监控程序的类型而异。

虚拟机监控程序能为您的虚拟化平台打下扎实基础。红帽® 一直致力于为虚拟化开发提供支持,帮助改进 KVM 虚拟机监控程序。自从 KVM 和 oVirt 两个社区成立以来,我们也一直积极投身于社区贡献。

红帽 OpenShift® 虚拟化红帽 OpenShift 的一项特色功能,使 IT 团队能够将虚拟机(VM)引入容器化工作流。通过在容器中运行虚拟机,团队可以在单个平台上与容器并行部署和管理虚拟机。如此一来,企业能够充分利用虚拟化方面的现有投资,同时获享现代应用平台的简易性和高效性。

通过使用免费且直观的迁移工具,可以将现有虚拟机从其他平台迁移到 OpenShift 应用平台。生成的虚拟机将与容器一并在相同的红帽 OpenShift 节点上运行。

探索我们的虚拟化解决方案

中心

红帽官方博客

获取有关我们的客户、合作伙伴和社区生态系统的最新信息。

所有红帽产品试用

我们的免费试用可让您亲身体验红帽的产品功能,为获得认证做好准备,或评估某个产品是否适合您的企业。

扩展阅读

如何选择虚拟化平台

通过了解虚拟化概念,有助于您选择一款理想的虚拟化平台来管理虚拟机(VM)。

什么是 KubeVirt?

KubeVirt 是一个开源项目,让用户能够使用 Kubernetes 作为底层编排平台来运行、部署和管理虚拟机(VM)。

什么是实时迁移?

实时迁移是指在不中断虚拟机(VM)访问的情况下,将虚拟机从一台主机移动到另一台主机。

虚拟化 相关资源