esxi是什么?ESXi通过Hypervisor实现横向扩展,实现一个基础操作系统,让它能够自动配置,远程接收配置信息,从内存运行而不是从硬盘运行。ESXi仍然是一个足够灵活的操作系统,支持不需要额外设施的小巧且随时可用的安装:安装到本地硬盘上,且保留本地保存的状态和用户定义的设置。
ESXi操作系统建立在VMkernel、VMkernel Extensions和worlds三个层次上,能够实现虚拟机环境。
①VMkernel。VMkenel是ESXi的基础,且是为ESXi专门设计的。它是64位的POSIX操作系统的微内核。VMware设计并不是为了打造一个普通的操作系统,而是一个能够作为Hypervisor的操作系统。VMkernel管理物理服务器,协调所有CPU的资源调度和内存分配,控制磁盘和网络的I/O Stack,处理所有设备驱动。
②VMkernel Extensions。除了VMkernel外,还有很多Kernel模块和驱动。这些扩展使得操作系统能够通过设备驱动与硬件交互,支持不同的文件系统,以及允许其他系统调用。
③worlds。VMware把它的可调度用户控件称为worlds。这些worlds允许内存保护、与CPU调度共享,以及定义separation权限基础。worlds有如下3种类型:
a.系统worlds。系统worlds是特殊的内核模式的worlds,能够以系统权限运行进程。例如,idle和helper进程都是以系统worlds运行的。
b.VMM worlds。VMM worlds是用户空间的抽象,它让每个guest操作系统都能够看到自己的x86虚拟硬件。每个虚拟机都运行在由它自己调度的VMM worlds中。它将硬件(包括BIOS)呈现给每个虚拟机,分配必须的虚拟CPU、内存、硬件、虚拟网卡等。
c.用户worlds。用户worlds指所有不需要以系统worlds赋予的权限来执行调用命令的进程。它们可以执行系统调用来与虚拟机或整个系统交互。