23.5 Virtual Machine Server
The virtual machine monitor (VMM) runs between the server hardware and
the SUSE Linux operating system kernel. When the computer boots, the VMM
loads first and then starts the VM Server in privileged
mode, which means that the VM Server has ability to create and
control virtual machines and has direct access to the computer hardware.
The VM Server is configured with native device drivers that match the
actual devices in the computer. For example, if the computer has a
physcial e1000 network card, the VM Server is configured to load and run
the SUSE Linux device driver for the e1000.
Virtual machines are defined and stored on the VM Server. The definitions
(called VM definitions) are stored in a
configuration file located at
/etc/xen/vm/vm_name.
The configuration file defines the virtual resources, such as CPU,
memory, network card, and block devices, the operating system sees when
it is installed and booted on the virtual machine.
In both full virtualization and paravirtual modes, a VM’s operating
system uses device drivers to interact with the VMM. In full
virtualization mode, the operating system uses its native OS device
drivers for a standard set of emulated devices, such as an AMD PCNet or
NE2000 network card, an IDE disk drive, and a VGA graphics card. In
paravirtual mode, the VM-aware operating systems include special device
drivers (called Xen drivers) to communicate through
the VMM and VM Server to the physical devices in the computer.
If, for example, a VM’s operating system running in
full-virtualization mode needs to save a file on its virtual 20-GB disk
drive, the operating system passes its request through the device driver
to the VMM. The VMM understands which portion of the 500-GB physical disk
the VM has access to and passes instructions to the VM Server. The VM
Server accesses the disk drive and writes the file to the pre-defined
location on the 500-GB disk.
Depending on your computing needs and available computer resources, any
number of VMs can be created and can simultaneously run on the VM Server.
The operating system of each VM interacts independently with the VMM and
VM Server platform to consume virtual or emulated CPU, memory, block
device, and network resources.
VMs can be viewed and managed from the VM Server desktop.