1.4. Hardware Virtualization Layer

This section familiarizes you with the second component of Virtuozzo Hybrid Server—the hardware virtualization layer. This layer provides the necessary environment for creating and managing virtual machines.

1.4.1. Hardware Virtualization Basics

Virtuozzo Hybrid Server is based on the concept of hardware virtualization. Hardware virtualization has a base layer—a hypervisor. This layer is loaded directly on the bare server and acts as an intermediary between the server hardware and virtual machines. To allocate hardware and resources to virtual machines, Virtuozzo Hybrid Server virtualizes all hardware on the server. Once virtualized, hardware and resources can be easily assigned to virtual machines. With its virtual hardware, a virtual machine runs its own complete copies of an operating system and applications.

The following diagram shows the basic architecture of hardware virtualization.

../_images/hardwarevirtualization.png

Specifically, Virtuozzo Hybrid Server uses the KVM/QEMU hypervisor and manages virtual machines via the libvirt API.

Hardware virtualization enables you to:

  • Create multiple virtual machines with different operating systems on a single physical host.

  • Run multiple guest operating systems and their applications simultaneously on a single physical host without rebooting.

  • Consolidate and virtualize the computing environment, reduce hardware costs, lower operating expenses, and increase productivity.

  • Use open APIs and SDK for integration with in-house and third-party applications.

1.4.2. Virtuozzo Virtual Machines

From the standpoint of applications and virtual machine users, each virtual machine (VM) is an independent system with an independent set of virtual hardware. This independence is provided by the Virtuozzo Hybrid Server hardware virtualization layer. The main features of the virtualization layer are the following:

  • A virtual machine resembles and works like a regular computer. It has its own virtual hardware. Software applications can run in virtual machines without any modifications or adjustment.

  • Virtual machine configuration can be changed easily (e.g., adding new virtual disks or increasing RAM).

  • Virtual machines are fully isolated from each other (file system, processes, sysctl variables) and the Virtuozzo Hybrid Server host.

  • A virtual machine can run any supported guest operating system. The guest OS and its applications are isolated inside a virtual machine and share physical hardware resources with other virtual machines.

1.4.2.1. Intel Virtualization Technology Support

Virtuozzo Hybrid Server provides support for Intel virtualization technologies comprising a set of processor enhancements and improving the work of virtualization solutions. Utilizing these technologies, Virtuozzo Hybrid Server can offload some workload to the system hardware, which results in the “near native” performance of guest operating systems.

1.4.3. Virtual Machine Hardware

A Virtuozzo virtual machine works like a usual standalone computer.

By default, virtual machines are created with the following virtual hardware:

  • 1 VirtIO SCSI HDD, expanding

  • 1 CD-ROM (IDE for Windows and Debian guests, VirtIO SCSI for Linux guests except Debian)

  • 1 VirtIO network adapter, bridged

  • 32MB video card

Other hardware added to a default VM may depend on the chosen distribution (see Creating Virtual Machines).

The complete range of virtual hardware a virtual machine can have is provided in the table below.

CPU

Up to 64

RAM

Up to 1 TB

Video adapter

VGA/SVGA video adapter with VBE 3.0

Video RAM

Up to 256 MB of video memory

Floppy disk drive

1.44 MB floppy disk drive mapped to an image file

IDE devices

Up to 4 IDE devices:

  • hard disk drives mapped to QCOW2 image files (up to 16 TB each)

  • DVD drives mapped to ISO image files

SCSI devices

Up to 15 SCSI devices:

  • hard disk drives mapped to QCOW2 image files (up to 16 TB each)

  • DVD drives mapped to ISO image files

VirtIO devices

Up to 15 VirtIO hard disk drives mapped to QCOW2 image files (up to 16 TB each)

Network interfaces

Up to 15 VirtIO (default), Intel 82545EM, or Realtek RTL8029 virtual network adapters.

Serial (COM) ports

Up to 4 serial (COM) ports mapped to a socket, a real port, or an output file

Keyboard

Generic USB or PS/2 keyboard

Mouse

Generic USB or PS/2 wheel mouse

1.4.4. Virtual Machine Files

A virtual machine has at least two files: a configuration file (PVS file) and a hard disk image file (HDD file). It can also have additional files: a file for each additional virtual hard disk and output files for virtual ports. By default, the virtual machines files are stored in the /vz/vmprivate/<UUID> directory on the Virtuozzo Hybrid Server server.

The list of files related to a virtual machine is given in the table below:

File name

Description

.pvs

Virtual machine configuration file. It defines the hardware and resources configuration of the virtual machine. The configuration file is automatically generated during the virtual machine creation.

.sav

Dump file created when you suspend the virtual machine. This file contains the state of the virtual machine and its applications at the moment the suspend was invoked.

.mem

Memory dump file for the suspended virtual machine. For a running virtual machine, it is a temporary virtual memory file.

.hdd

Hard disk image in QCOW2 format. When you create a virtual machine, you can create it with a new virtual hard disk or use an existing one. A virtual machine can have multiple hard disks.

.iso

CD/DVD disc image. Virtual machines treat ISO images as real CD/DVD discs.

.txt

Output files for serial ports. The output .txt files are generated when a serial port connected to an output file is added to the virtual machine configuration.

1.4.5. Support of Virtual and Real Media

This section lists the types of disks that can be used by Virtuozzo virtual machines and provides the information about basic operations you can perform on these disks.

1.4.5.1. Supported Types of Hard Disks

Virtuozzo virtual machines can only use virtual hard disk image files as hard disks.

1.4.5.2. Virtual Hard Disks

The capacity of a virtual hard disk can be set from 100 MB to 16 TB.

Virtuozzo Hybrid Server uses expanding virtual hard disks. The image file of such a disk is initially small in size (smaller than the set virtual disk size) and grows as data is added to the disk in the guest OS.

1.4.5.3. CD/DVD Disc Images

Virtuozzo Hybrid Server can use only CD/DVD disc images that are supported by the guest OS.