Download as pdf or txt
Download as pdf or txt
You are on page 1of 40

Virtualization and Cloud Computing

Cloud Computing

1
Virtualization and Cloud Computing

• Virtualization
– Virtualization, in computing, is the creation of a virtual (rather
than actual) version of something, such as a hardware platform,
operating system, a storage device or network resources.
– The ability to run multiple operating systems on a single
physical system and share the underlying hardware resources
– Server virtualization is a technology for partitioning one
physical server into multiple virtual servers. Each of these
virtual servers can run its own operating system and
applications, and perform as individual server.
Virtualization and Cloud Computing
Virtualization and Cloud Computing
Virtualization and Cloud Computing

Terminology
• Host Machine
– The physical hardware/server
• Hypervisor/Virtual Machine Monitor (VMM)
– The virtualization software
– Acts as the true ‘OS’ for the server
• Virtual Machines
– Instances of the virtualized OS
– Sometimes called Guest OS
Virtualization and Cloud Computing

Advantages
• Lower number of physical servers - reduce hardware
maintenance costs
• Deploy multiple operating system technologies on a
single hardware platform
• Easier redundancy and disaster recovery
• Reducing power consumption
• Improving server management
• Easy migration of virtual machines
• Test environments
Virtualization and Cloud Computing

Cloud Computing

1
Virtualization and Cloud Computing

Virtual Resources
• A virtual resource is an abstraction
• The OS implements the abstraction through use of real
resources
• The implementation can be changed without affecting
the application using the virtual resource
• An application can be migrated to any host offering the
same abstraction
Virtualization and Cloud Computing

Types of Virtualization
• Simulation and Emulation
• Full Virtualization
• Para-virtualization
• Hybrid Virtualization
• OS-Level Virtualization
Virtualization and Cloud Computing

Types of Virtualization: Simulation and Emulation


• Simulation
– Simulators copy things from the real world into a virtual
environment to give an idea about how that thing would work.
– It simulates the basic behavior but doesn’t necessarily follow all
the rules of the real environment.
– Running a model of some system to observe its behavior
– We can create a software model of the computer system
Virtualization and Cloud Computing

Types of Virtualization: Simulation and Emulation


• Emulation
– Emulation is the process of implementing the interface and
functionality of one system on a system having a different
interface and functionality
– Emulation is basically a complete imitation of the real thing. It
just operates in a virtual environment instead of the real world.
– Emulation duplicates while simulation replicates a real device.
– Examples:
• QEMU: Open source emulation and virtualization
– CPU hosting is emulation rather than simulation
– QEMU’s software components used in VirtualBox
– QEMU defines formats of disk images—e.g., qcow2
– These are files that represent, e.g., virtual hard disks
Virtualization and Cloud Computing

Types of Virtualization: Full Virtualization


• The functionally provides a complete set of hardware
simulation for guest OS
• The virtual machine simulates hardware to allow an
unmodified "guest" OS to be run in isolation.
• There is two type of Full virtualizations in the enterprise
market.
– Hardware-assisted full virtualization
– Software assisted full virtualization
Virtualization and Cloud Computing

Types of Virtualization: Hardware Assisted Full Virtualization

Applications Applications Applications

Guest OS Guest OS Guest OS


Virtual

(Windows) (Linux) (VMware ESX)


Virtual Machine Virtual Machine Virtual Machine

Virtualization Layer (Hypervisor)


Physical

Hardware
Virtualization and Cloud Computing

Types of Virtualization: Software Assisted Full Virtualization

Applications Applications Applications


Virtual

Guest OS Guest OS Guest OS


(Windows) (Linux) (Mac)
Virtual Machine Virtual Machine Virtual Machine

Virtual Machine Manager


Physical

Host OS

Hardware
Virtualization and Cloud Computing

Types of Virtualization: Full Virtualization


• Types of Hypervisors
– Type 1—Runs directly on computer’s hardware
• VMware ESXi /ESX
• KVM
• Hyper-V
• Xen
– Type 2—Runs as a process within existing operating system
• VMware workstation
• Virtual PC
• VirtualBox
Virtualization and Cloud Computing

Types of Virtualization: Para-Virtualization


• It provides a virtual hardware abstraction that is similar,
but not identical to the real hardware.
• Allow multiple guest OS to run and Xen hypervisor does
the resource allocation.
• VM OS needs modification
• Examples:
– Xen
Virtualization and Cloud Computing

Types of Virtualization: Hybrid Virtualization


• In hardware assisted Full virtualization, Guest operating
systems are unmodified and it involves many VM traps
and thus high CPU overheads which limit the scalability.
• Para-virtualization is a complex method where guest
kernel needs to be modified.
• For better performance, the virtual machine uses para-
virtualization for specific hardware drivers and the host
uses full virtualization for other features
Virtualization and Cloud Computing

Types of Virtualization: OS-Level Virtualization


• Virtualizing a physical server at the operating system
level, enabling multiple isolated and secure virtualized
servers to run on a single physical server.
• Virtualization platform on top of OS offers multiple
containers
• Each container is a virtual OS (or Virtual Private Server)
• Examples
– Linux-VServer
– OpenVZ
Virtualization and Cloud Computing

Linux-Related Virtualization Projects

Project Type License

QEMU Emulation GPL

VMware Full virtualization Proprietary

Xen Para-virtualization GPL

Linux-VServer Operating system- GPL


level virtualization
Virtualization and Cloud Computing

Cloud Computing

1
Virtualization and Cloud Computing

Linux-Related Virtualization Projects: QEMU


• QEMU supports two modes of operation. The first is the
Full System Emulation mode.
– This mode emulates a number of processor architectures, such
as x86, x86_64, etc.
– Using this mode, you can emulate the Windows operating
systems and Linux on Linux, Solaris, and FreeBSD.
Virtualization and Cloud Computing

Linux-Related Virtualization Projects: QEMU


• QEMU also supports a second mode called User Mode
Emulation.
– In this mode, which can only be hosted on Linux, a binary for a
different architecture can be launched.
– This allows, for example, a binary compiled for the MIPS
architecture to be executed on Linux running on x86.
Virtualization and Cloud Computing

Linux-Related Virtualization Projects: VMware


• VMware is a commercial solution for full virtualization.
• A hypervisor is used between the guest operating
systems and the hardware as an abstraction layer.
• This abstraction layer allows any operating system to run
on the hardware without knowledge of any other guest
operating system.
Virtualization and Cloud Computing

Linux-Related Virtualization Projects: VMware


• The entire virtualized environment is kept as a file,
meaning that a full system (including guest operating
system, VM, and virtual hardware) can be easily and
quickly migrated to a new host for load balancing.
Virtualization and Cloud Computing

Linux-Related Virtualization Projects: Xen


• Xen is a free open source solution for operating system-
level para-virtualization from Xen-Source.
• In para-virtualization the hypervisor and the operating
system collaborate on the virtualization, requiring
operating system changes.
• Xen requires collaboration (modifications to the guest
operating system), only those operating systems that are
patched can be virtualized over Xen.
Virtualization and Cloud Computing

Linux-Related Virtualization Projects: Xen


• From the perspective of Linux, which is itself open
source, this is a reasonable compromise because the
result is better performance than full virtualization.
• But from the perspective of wide support (such as
supporting other non-open source operating systems),
it's a clear disadvantage.
• It is possible to run Windows as a guest on Xen, but only
on systems running the Intel Vanderpool
Virtualization and Cloud Computing

Linux-Related Virtualization Projects: Linux-V Server


• Linux-V Server is a solution for operating system-level
virtualization.
• Linux-V Server virtualizes the Linux kernel so that
multiple user-space environments, known as Virtual
Private Servers (VPS), run independently with no
knowledge of one another.
• Linux-V Server achieves user-space isolation through a
set of modifications to the Linux kernel.
Virtualization and Cloud Computing

Linux-Related Virtualization Projects: Linux-V Server


• Linux-V Server also uses a form of chroot to isolate the
root directory for each VPS.
• Chroot allows a new root directory to be specified, but
additional functionality is required (called a Chroot-
Barrier) so that a VPS can't escape its isolated root
directory to the parent.
• Given an isolated root directory, each VPS has its own
user list and root password.
Virtualization and Cloud Computing

Virtualization Products
• For the Enterprise
– VMware ESX/vSphere, Virtual Center
– Microsoft HyperV
– Xen Server
• For the end user
– VMware
– Virtualbox
– Xen Desktop
Virtualization and Cloud Computing

Major Vendors of Virtualization


• VMWare
– Leading vendor in virtualization technology
– Products: VMWare-ESXi-Server etc
• Microsoft
– Windows Server Hyper-V
• Citrix
– Xen Server(open source)
– Xen Desktop
Virtualization and Cloud Computing

Major Vendors of Virtualization


Virtualization and Cloud Computing

Examples of Productivity Using Virtualization


Virtualization and Cloud Computing

Top 3 Economic Reasons For Virtualization


Virtualization and Cloud Computing

Server, Storage and Network Consolidation


Virtualization and Cloud Computing

Enables the Virtual Datacenter


Virtualization and Cloud Computing

Self‐Healing
Virtualization and Cloud Computing

Self‐Healing

Self Healing.pdf
Virtualization and Cloud Computing

Summary
• Virtualization offers major savings in data center
operations.
• Virtualization makes possible significant reductions in
the costs of managing data centers, with simplification
of systems management tasks.
• Virtualization offers back-up and increased redundancy
for delivery of high performance and high availability
services.
Virtualization and Cloud Computing

Importance of Virtualization in Cloud Computing


• Server virtualization is the engine that drives cloud
computing
– Allows dynamic resource allocation
• Hardware support
– Intel VT (Virtualization Technology) provides hardware to
support the Virtual Machine Monitor layer
• Virtualization is now a well-established technology
Virtualization and Cloud Computing

Importance of Virtualization in Cloud Computing


• Cloud can exist without Virtualization, although it will be
difficult and inefficient.
• Cloud makes notion of “Pay for what you use”, “infinite
availability- use as much you want”.
• These notions are practical only if we have
– Lot of flexibility
– Efficiency in the back-end.
• This efficiency is readily available in Virtualized
Environments and Machines.

You might also like