What is VMkernel?
VMkernel is a POSIX (Portable Operating System Interface)-like operating system (OS) developed by VMware. It acts as a liaison between virtual machines (VMs) and the physical hardware that supports them, such as ESXi hosts. A VM needs VMkernel to communicate with the ESXi server.
The functionalities of VMkernel
VMware calls VMkernel a microkernel because it runs on bare metal, or directly on VMware ESX hosts. It includes many functions that are also available in other OSes, such as process creation, process control, process threads, signals, file system, etc.
VMkernel is designed to support running multiple VMs. Some of its core functions include:
o device drivers
o resource scheduling
o I/O stacks
It is responsible for allocating resources -- such as memory, storage and CPU -- from the host to the VM, and it schedules CPUs, provides hardware abstraction and other OS services. The VMkernel also controls several special services, such as:
o vMotion
o fault tolerance
o traffic management
o Network File System (NFS)
o iSCSI
VMkernel file system
VMkernel uses a simple in-memory file system to hold the ESXi configuration files, log files and staged patches. It is independent of the VMware Virtual Machine File System (VMFS) where VMs are stored. The system's design is similar to the service console of ESX, where remote command line interfaces (CLIs) provide file management capabilities.
HTTPS get and put commands are used to access to the file system. Users and groups are configured locally on the server, and are controlled by local privileges for authentication and access.
The log files in the file system cannot survive a reboot after the system is shut down. However, users can save all log information on an external system since ESXi can configure a remote syslog server.
VMkernel users and groups
As with other OSes, groups can be used in VMkernel to combine multiple users or to set privileges. Groups provide a way to differentiate between users accessing the system via the Virtual Infrastructure Client or the Virtualization Infrastructure Manager (VIM) API.
However, administrative privileges can -- and should -- be set individually for each user/group. Passwords for users and groups are generated using standard crypt functions.
Ref: https://www.techtarget.com/searchvmware/definition/VMkernel
Comments