虚拟机管理器需要了解的相关信息

虚拟化的核心是一种众所周知但很少讨论的技术,称为虚拟机管理器。虚拟机管理器是一种软件层,允许单个硬件托管多个单独的虚拟计算机。它还有助于管理这些虚拟计算机,但在讨论虚拟机管理器如何工作、虚拟机管理器的类型以及这项技术的优点之前,应该先了解一些基本的定义,我们将从一项与虚拟机管理器紧密相关的技术开始——虚拟化。

什么是虚拟化?

虚拟化是“虚拟”资源形式的产物,如服务器、桌面、操作系统、存储空间、网络或文件。使用虚拟化,传统计算可以被转换,因为这些资源可以根据客户或组织的需要进行伸缩。虚拟化已经存在了几十年,现在被分为三种不同的类型:操作系统虚拟化、硬件虚拟化和服务器虚拟化。虚拟化用于将工作负载、系统和多个操作环境合并到一个物理系统上。底层的硬件本质上是分区的,每个分区作为一个独立的的虚拟计算机运行——他们都有自己的操作系统。这就是虚拟机管理器的作用。

什么是虚拟机管理器呢?

分区的功能,具体而言就是从底层计算机硬件转移并隔离这些不同的操作系统和应用程序,这就是虚拟机管理器的功能。因此,可以说虚拟化是由虚拟机管理器的功能启用的。这意味着底层硬件(又称主机)可以独立地操作并运行一个或多个虚拟计算机(又称为客户机)。虚拟机管理器还通过在这些独立的虚拟计算机之间分配内存分配、CPU使用网络带宽等硬件资源来帮助管理这些独立的虚拟机。它通过创建抽象的硬件资源库,然后将他们分配给虚拟计算机而实现这一点。当用户请求时,还可以停止和启动虚拟计算机。虚拟机管理器的另一个主要组成部分是确保所有虚拟计算机与其他的虚拟计算机保持分离——因此,当一个虚拟计算机中的某一台出现问题时,其他的不会受到影响。最后,虚拟机管理器还可以处理虚拟计算机之间通过虚拟网络进行的通信——使 VMs能够彼此连接。

要了解管理程序是如何工作的,了解虚拟机管理器的类型很重要。它们是如何工作的?有什么区别吗?有两种类型的虚拟机管理器,它们也被称为本机或裸机虚拟机管理器(类型1)以及托管虚拟机管理器(类型2)。

类型一 虚拟机管理器:

类型一虚拟机管理器直接主机的硬件上运行,不需要底层操作系统的干预。这意味着虚拟机管理器可以直接访问硬件,不需要与操作系统和驱动程序竞争。类型一被认为是用于企业计算的最佳且最高效的管理程序。直接分配资源的能力使这些虚拟机管理器具有更强的可伸缩性,但优势远不止这些:

物理资源的优化:组织经常通过为不同的应用程序购买单独的独立服务器来快速消耗资金——这是一项耗时且占用数据中心空间的工作。使用类型一虚拟机管理器,可以利用服务器硬件,节省数据中心的成本和资源,并降低能源使用。

更大的资源分配:大多数类型一虚拟机管理器允许管理员根据应用程序的优先级手动设置资源分配。许多类型一虚拟机管理器还根据需要自动分配资源,使资源管理成为一个动态和定制的选项。

类型一虚拟机管理器最著名的例子是VMware的ESXi和Microsoft的Hyper-V。

类型二虚拟机管理器

这些虚拟机管理器一般构建在操作系统之上。由于它依赖于主机的底层操作系统(与类型一形成直接对比),因此被称为“托管的虚拟机管理器”。虚拟机管理器作为操作系统中的应用程序运行,然后直接在主机上运行。类型2虚拟机管理器支持多个客户机,但不允许直接访问主机硬件及其资源。现有的操作系统管理了CPU的内存、网络资源和存储的调用。所有这些都会造成一定的延迟。然而,这只是更复杂以及高性能场景的情况。类型2虚拟机管理器仍然受到家庭和检测实验室的欢迎。此外,类型2虚拟机管理器也有自己的优点,比如:类型2虚拟机管理器的设置和管理要更简单,因为已经有了可以使用的操作系统,不需要专门的管理,兼容多种硬件。

类型二虚拟机管理器的例子包括Oracle Solaris Zones、用于x86的Oracle VM服务器、Oracle VM Virtual Box、VMware工作站、VMware Fusion等等。

KVM

KVM(以内核为基础的虚拟计算机)是一个流行且独特的虚拟机管理器——因为它具有类型1和类型2虚拟机管理器的特征。这种开源的虚拟化技术内置在Linux中,它将Linux变成了虚拟机管理器。KVM是Linux代码的一部分,可以从每一个Linux的创新或进步、特性和修复中获益,不需要额外的工作。

KVM将Linux转换为类型1(本机/裸机)虚拟机管理器,这是一个安全的选项,它提供了大量的存储、硬件支持、内存管理、VM的实时迁移(无服务中断)、可伸缩性、调度和资源控制、低延迟以及应用程序的优先级。KVM还创建了更安全、更独立的虚拟计算机,同时确保继续以最佳性能运行。在和我们一起注册Linux VPS主机计划时,KVM将自动成为所创建包的一部分。更多相关阅读 怎样在CentOS 7上安装KVM,并创建虚拟机