Virtualization
Virtualization
1
VIRTUALIZATION
Machine Stack showing
virtualization opportunities • Creation of a virtual version of hardware
using software.
Application • Runs several applications at the same time
on a single physical server by hosting each
of them inside their own virtual machine.
2
HYPERVISOR
• Hypervisor plays an important role in the virtualization scenario by virtualization of
hardware. It provides support for running multiple operating systems concurrently
in virtual servers created within a physical server.
• The virtualization layer is the software responsible for hosting and managing all
VMs. The virtualization layer is a hypervisor running directly on the hardware.
3
SERVER WITHOUT VIRTUALIZATION
4
SERVER WITH VIRTUALIZATION
5
HYPERVISOR TYPE
Full virtualization
Multiple Software
Applications
Multiple Software
Applications • Enables hypervisors to run an
unmodified guest operating
Operating System Operating System system (e.g. Windows 2003 or
Virtual Server 1 Virtual Server 2 XP).
• Guest OS is not aware that it is
Hypervisor being virtualized.
Hardware
• E.g.: VMware uses a
combination of direct execution
and binary translation techniques
to achieve full virtualization of
CPU Memory NIC DISK server systems.
6
HYPERVISOR TYPE
7
HYPERVISOR IMPLEMENTATION
APPROACHES
Bare metal Approach
VM VM VM • Type I Hypervisor.
• Runs directly on the system hardware.
• May require hardware assisted
virtualization technology support by
the CPU.
Hypervisor • Limited set of hardware drivers
provided by the hypervisor vendor.
Kernel Driver • E.g.: Xen, VMWare ESXi
Hardware
8
HYPERVISOR IMPLEMENTATION
APPROACHES
Hosted Approach
VM VM • Type II Hypervisor.
• Runs virtual machines on top of a
Applications host OS (windows, Unix etc.)
Hypervisor • Relies on host OS for physical
resource management.
• Host operating system provides
drivers for communicating with the
server hardware.
Host Operating System
• E.g.: VirtualBox
Hardware
9
VMWARE ESXI
• Bare Metal Approach.
• Full virtualization.
• Proven technology.
VM VM VM
• Used for secure and robust
infrastructures.
Intel processors. 10
CITRIX XEN SERVER
• Open source; bare metal.
• Offers both Hardware Assisted
Virtualization (HVM) and Para-
Domain
Zero
Virtualization (PV)
VM VM
Guest • Needs virtualization support in
the CPU for HVM.
• Xen loads an initial OS which
Hypervisor runs as a privileged guest called
“domain 0”.
• The domain 0 OS, typically a
Linux or UNIX variant, can talk
Hardware
directly to the system hardware
(whereas the other guests
cannot) and also talk directly to
the hypervisor itself. It allocates
Architecture of Xen
and maps hardware resources
for other guest domains.
11
UBUNTU KVM
Hardware
Architecture of KVM
12