VMkernel 是虚拟化的核心和推动力,由 VMware 开发并提供与其他操作系统提供的功能类似的某些功能,如进程创建和控制、信令、文件系统和进程线程。VMkernel控制和管理服务器的实际资源,它用资源管理器排定VM顺序,为它们动态分配CPU时间、内存和磁盘及网络访问。它还包含了物流服务器各种组件的设备驱动器——例如,网卡和磁盘控制卡、VMFS文件系统和虚拟交换机。
2、VMkernel 专用于支持运行多个虚拟机及提供如下核心功能:
u 资源调度
u I/O 堆栈
u 设备驱动程序
3、VMkernel 可将虚拟机的设备映射到主机的物理设备。例如,虚拟 SCSI 磁盘驱动器可映射到与 ESXi 主机连接的 SAN LUN 中的虚拟磁盘文件;虚拟以太网 NIC 可通过虚拟交换机端口连接到特定的主机 NIC。
1.1.1 虚拟机监视器VMM
1、每个 ESXi 主机的关键组件是一个称为 VMM 的进程。对于每个已开启的虚拟机,将在 VMkernel 中运行一个 VMM。虚拟机开始运行时,控制权将转交给 VMM,然后由 VMM 依次执行虚拟机发出的指令。VMkernel 将设置系统状态,以便 VMM 可以直接在硬件上运行。然而,虚拟机中的操作系统并不了解此次控制权转交,而会认为自己是在硬件上运行。
2、VMM 使虚拟机可以像物理机一样运行,而同时仍与主机和其他虚拟机保持隔离。因此,如果单台虚拟机崩溃,主机本身以及主机上的其他虚拟机将不受任何影响。
1.1.1 虚拟机
1、虚拟机是一个由VMkernel控制的软件构造体。所有虚拟机配置信息、状态信息和数据都封装在存储在数据存储中的一组离散文件中。这使虚拟机具有可移动性,并且易于备份或克隆。