1.2. Red Hat Virtualization Host

一个 Red Hat Virtualization 环境包括一个或多个用来运行虚拟机的主机(在本文档中,我们把它称为虚拟主机或主机)。主机为虚拟机提供运行环境的物理硬件系统。
Red Hat Virtualization Host(RHVH)运行一个专门为虚拟主机所创建的定制操作系统。
Red Hat Enterprise Linux 主机则是运行在一个标准的 Red Hat Enterprise Linux 操作系统上。在操作系统安装完成后,这个系统需要做进一步的配置,来使它可以作为一个运行虚拟机的主机。
以上两种形式的主机都以相同的方式和虚拟环境中的其它项进行交流,因此我们把它们都统称为主机
主机的构架

图 1.2. 主机的构架

Kernel-based Virtual Machine(KVM
Kernel-based Virtual Machine(KVM)是一个可加载的内核模块,它通过使用 Intel VT 或 AMD-V 硬件扩展来提供虚拟化的功能。KVM 本身运行于内核空间,而在它上面运行的虚拟机服务会作为独立的 QEMU 进程在用户空间中运行。KVM 允许主机把它的物理硬件资源分配给虚拟机。
QEMU
QEMU 是一个多平台的、提供全仿真功能的“仿真器(emulator)",它会仿真包括一个或多个处理器以及外设在内的整个系统(如一台 PC)。QEMU 可以被用来运行不同的操作系统,或用来进行系统代码故障排除。QEMU、KVM 和带有适当虚拟化扩展功能的处理器组合在一起可以提供虚拟化功能。
Red Hat Virtualization Manager 主机代理 - VDSM
在 Red Hat Virtualization 环境中,VDSM 被用来启动虚拟机和存储设备上的操作。另外,它还被用来处理不同主机间的通讯。VDSM 会监控主机的资源(如内存、存储和网络),并管理各种任务,如虚拟机创建、数据统计和日志收集等。每个主机上都会运行一个 VDSM 服务来通过端口 54321(这个端口值可以被重新配置)接收 Red Hat Virtualization Manager 所发出的管理命令。
VDSM-REG

VDSM 使用 VDSM-REG 在 Red Hat Virtualization Manager 上注册所有主机。VDSM-REG 需要使用端口 80443 来提供它本身的信息,以及主机的信息。

libvirt
libvirt 被用来协调虚拟机以及和虚拟机相关的虚拟设备的管理。当 Red Hat Virtualization Manager 发出一个操作虚拟机的命令时(如启动虚拟机、停止虚拟机、重启虚拟机),VDSM 会调用相关主机上的 libvirt 来执行这个命令。
Storage Pool Manager(SPM)
Storage Pool Manager(SPM)是分配给一个数据中心中的某个主机的角色。作为 SPM 的主机(我们称它为 SPM 主机)全权负责数据中心中的所有与存储域相关的变化(如创建、删除和修改虚拟磁盘镜像、快照和模板)。同时,它还负责为在 Storage Area Network(SAN)中的稀疏块设备分配存储资源的任务。SPM 的角色可以在同一个数据中心的不同主机间进行迁移,因此同一个数据中心中的所有主机都必须可以访问在这个数据中心中定义的所有存储域。
Red Hat Virtualization Manager 会确保 SPM 一直处于有效的状态。如果 SPM 所在的主机出现问题,Manager 会把 SPM 角色分配给数据中心中的另外一个主机。
虚拟机操作系统
操作系统以及在它上面运行的应用程序可以在不进行任何修改的情况下在 Red Hat Virtualization 环境中的虚拟机上安装并运行,它们与运行在物理机器上的程序没有任何区别。
红帽还提供了一组增强的设备驱动程序,使用它们可以更块、更有效地访问虚拟设备。另外,您还可以在虚拟机上安装 Red Hat Virtualization Guest Agent,它可以为管理控制台提供更多的虚拟机信息。