Introduction to Virtualization
Virtualization Overview
Virtualization is a very important technique and there are many subtle
issues.
Traditional
Architecture Virtual
Architecture
Why Consider Versioning
Applications often need to run on
multiple platforms
Different Operating Systems
Different versions
Applications also have dependencies on
external libraries
Dependencies often have their own
dependencies
Dependencies are often version specific
Managing Versioning
It isn't practical to maintain separate environments
It ties up hardware for each configuration
There can be many possible combinations of operating systems and
dependencies
It is a complex and time consuming process to set up multiple
environments
Version Management in Large Organizations
• Large organizations have complex computing requirements
• Different roles need different configurations
Some roles require only basic configurations
Developers require higher levels of access and a suite of developer tools
• Rolling out new environments, updates, and new software is
complex
• Live demonstrations for meetings raise many issues
Virtual Machines
• Virtual machines are not new
• The 1960s computers used virtualization to allow multitasking
between programs
• Each program appeared to have full access to the machine
• VMware has been a significant player in virtualizing the x86
architecture since 1998
Virtual Machines Advantages
• Virtual machines are a good way of setting up well defined
environments
• You can simply copy the virtual machine; there is no need to
install software on machines
• Several operating systems can be run on the same machine at the same time
• Virtual machines have largely replaced the need for multiple boot machines
Virtualization Software: Type 1 Hypervisor
• Virtualization software is called a Hypervisor. It provides the guest OS with
configurable access to real and emulated hardware
• Type-1 or native or bare metal hypervisors
Run directly on the host hardware
Usually based on a modified Linux kernel
Guest operating systems run as processes on the host
• Usually used on high end servers
Products include Oracle VM Server, Citrix XenServer,
VMware ESX/ESXi, and Microsoft Hyper-V
Virtualization Software: Type 1 Hypervisor
component component
• This diagram shows the Type-1 Application1 Application2
hypervisor in relationship with
component component
two hosted Operating Systems OS1 OS2
and their own isolated programs
— Application 1 component
Hypervisor
and Application 2
component
Hardware
Virtualization Software: Type 2 Hypervisor
• Type-2 or hosted hypervisors
Run as a process on a conventional OS
Often need to map the guest OS hardware calls onto host OS
system calls
• Used on desktop and laptop computers
Products include VMware Player, VMware Workstation, and
Oracle VirtualBox
Virtualization Software: Type 2 Hypervisor
• This diagram illustrates how a type-2
component
Application1
component
Application2
hypervisor works with the hardware,
component component
host Operating System, and guest
OS1 OS2
Operating Systems.
component component
Host Hypervisor
OS
component
Hardware
CPU Visualization
The distinction between type-1 and type-2 hypervisors isn't clear.
• Most modern CPUs support hardware virtualization
Special instructions to facilitate virtualization
Usually disabled in BIOS by default for security reasons
• Hardware virtualization enables host and guest OS to use the actual hardware
• Linux Kernel-based Virtual Machine (KVM) and FreeBSD bhyve are kernel
modules
Effectively convert the host OS into a type-1 hypervisor
Important Virtualization Products
• VMware vCenter and vRealize Suite (many of the third-party tools have similarities to the
vRealize Suite)
• Microsoft System Center Virtual Machine Manager
• Citrix Systems XenCenter
• VMTurbo Operations Manager
• Dell Foglight
• 5Nine Manager for Hyper-V
• Embotics vCommander
• SolarWinds Virtualization Manager
• Splunk Virtualization Monitoring System
• Ipswitch WhatsVirtual
THANK YOU