0% found this document useful (0 votes)
24 views

Unit - 2 - Virtualization

Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
24 views

Unit - 2 - Virtualization

Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 57

Cloud Computing

Concepts

Virtualization
Definition

Virtualization is an abstraction layer that decouples


the physical hardware from the operating system to
deliver greater IT resource utilization and flexibility .
---->VMWare
Virtualization: A Buzzword
 The term virtualization has become somewhat of a buzzword,
and as a result the term is now associated with a number of
computing technologies including the following:
 Storage Virtualization: the amalgamation of multiple network
storage devices into what appears to be a single storage unit.
 Server Virtualization: the partitioning a physical server into
smaller virtual servers.
 Operating System-level Virtualization: a type of server
virtualization technology which works at the operating system
(kernel) layer.
 Network Virtualization: using network resources through a
logical segmentation of a single physical network.
 Application Virtualization

Buzzword: A word or phrase connected with a specialized field or group that usually sounds important
or technical and is used primarily to impress laypersons.
Motivation

To hide the physical characteristics and irrelevant


details of physical resources from their end users.
Thus, each user gets the illusion of being the lone
user of that physical resource (one-to-many
virtualization). Or multiple physical resources appear
as a single virtual resource to the user (many-to-one
virtualization).
Virtualization
Virtualization
VMware: Add new Machine
Allocating Resources to New Virtual
Machine
One to Many Virtualization
Ex.: Virtualizing an x86 server, where software, called hypervisor, allows
multiple VMs to run on the same physical server. Each VM emulates a
physical computer by creating a separate operating system environment.
The ability to run multiple VMs means that we can now simultaneously
run multiple operating systems on the same underlying physical machine.
Many to One Virtualization

Ex.: Load balancer hides the details about the multiple


physical web servers and simply exposes a single virtual IP
(VIP). The web clients that connect to the VIP to obtain the web
service have the illusion that there is a single web server.
Many physical web servers have been abstracted into one
logical web server.
Virtualization Categories

 Hardware virtualization
 Desktop virtualization
 Other types
 Nested virtualization
Hardware virtualization

 Hardware virtualization or platform virtualization


refers to the creation of a virtual machine that acts
like a real computer with an operating system.

 Software executed on these virtual machines is


separated from the underlying hardware resources.

 For example, a computer that is running Microsoft


Windows may host a virtual machine that looks like
a computer with the Ubuntu Linux operating
system; Ubuntu-based software can be run on the
virtual machine.
Hardware virtualization
(Contd…)
 Host Machine:-In hardware virtualization, the host machine is
the actual machine on which the virtualization takes place.

 Guest Machine:-The guest machine is the virtual machine.

 Hypervisor or Virtual Machine Manager :The software or


firmware that creates a virtual machine on the host hardware.
 The hypervisor manages virtual machine monitors that host virtual
machines
Different types of hardware virtualization

 Full virtualization: Almost complete simulation of


the actual hardware to allow software, which
typically consists of a guest operating system, to
run unmodified.

 Partial virtualization: Some but not all of the


target environment is simulated. Some guest
programs, therefore, may need modifications to run
in this virtual environment.
More about Virtualization
 The usual goal of virtualization is to centralize administrative
tasks while improving scalability and overall hardware-resource
utilization.

 With virtualization, several operating systems can be run in


parallel on a single central processing unit (CPU).

 This parallelism tends to reduce overhead costs and differs from


multitasking, which involves running several programs on the
same OS.

 Using virtualization, an enterprise can better manage updates


and rapid changes to the operating system and applications
without disrupting the user.

 "Ultimately, virtualization dramatically improves the efficiency


and availability of resources and applications in an
organization”.
Hardware Virtualization Vs. Hardware Emulation

 Hardware virtualization is not the same as hardware


emulation.
 In hardware emulation, a piece of hardware imitates
another, while in hardware virtualization, a
hypervisor (a piece of software) imitates a particular
piece of computer hardware or the entire computer.
 Furthermore, a hypervisor is not the same as an
emulator; both are computer programs that imitate
hardware, but their domain of use in language
differs.
Virtualization Categories
Virtualization Concept
Server Virtualization
 Low-level software (hypervisor or VMM) allows
multiple operating systems to run concurrently on a
single host computer.

 To successfully virtualize the system and enable


multiple VMs to run concurrently on the same host,
hypervisors dynamically partition and share the
available physical resources, such as CPU, memory,
and I/O devices.

 The functionality of the hypervisor varies greatly


based on the architecture and implementation.
Why Server Virtualization?
 Underutilized servers
 The software running on servers often needs no more
than 10 to 20 % of the processing power of the server.
 Virtualization allows multiple independent environments
to coexist on the same physical server, which
significantly drives up the utilization of servers, making
more efficient use of the company’s investment in
servers.

 Shift toward greener IT


 An idle or near-idle server consumes a significant
amount of base power. So, a single server with 50
percent utilization consumes much less power (by
extension produces much less heat) than five servers
running at 10 percent utilization.
Approaches to Server Virtualization
 Hosted Virtualization
 The hypervisor runs as an application on the host
operating system. Then multiple guest operating
systems could run as VMs on top of this hypervisor
(also referred as Type 2 Hypervisors).
 Ex. : Microsoft Virtual Server, VMware Workstation,
Microsoft Virtual PC, and Parallels Workstation etc.

 Bare-Metal Virtualization
 Hypervisor runs directly on the host’s hardware.
Multiple guest operating systems could then run on top
of this hypervisor (also referred as Type 1 Hypervisor)
 Ex: Citrix XenServer, VMware ESXi, Linux KVM, and
Microsoft Hyper-V etc.
Approaches to Server Virtualization
 Type 1 hypervisors are typically more efficient because they
have direct access to the underlying hardware and can deliver
superior performance as compared to their Type 2
counterparts.
 Type 2 hypervisors support a wider range of platforms and I/O
devices, because they run on top of a standard operating
system such as Microsoft Windows or Red Hat Linux.
Components of Server Virtualization

 CPU virtualization

 Memory virtualization

 I/O virtualization
1: CPU Virtualization
 X86 operating systems are
designed to run directly on the
bare-metal hardware, so they
naturally assume they fully
‘own’ the computer hardware.
 The x86 architecture offers
four levels of privilege
known as Ring 0, 1, 2 and 3 to
operating systems and
applications to manage access
to the computer hardware.
The term x86 usually
 User level applications typically
represented any 8086
run in Ring 3, the operating compatible CPU. Today,
system needs to have direct however, x86 usually implies
access to the memory and a binary compatibility also
hardware and must execute its with the 32-bit instruction set
of the 80386
privileged instructions in Ring
0.
Challenge: CPU Virtualization
 Virtualizing the x86 architecture requires placing a
virtualization layer under the operating system
(which expects to be in the most privileged Ring 0)
to create and manage the virtual machines that
deliver shared resources.

 Challenge is some sensitive instructions can’t


effectively be virtualized as they have different
semantics when they are not executed in Ring 0.
X86 Virtualization Layer
With x86 computer virtualization, a virtualization
layer is added between the hardware and operating
system
Techniques

 Full virtualization using binary translation

 OS assisted virtualization or paravirtualization

 Hardware assisted virtualization (first generation)


Full virtualization
 Complete simulation of the underlying hardware.

 Full virtualization requires that every salient feature of the


hardware be reflected into one of several virtual machines
 including the full instruction set, input/output operations,

 interrupts, memory access.

 Any software capable of execution on the raw hardware can be run


in the virtual machine and, in particular, any operating systems.
 Full virtualization is the only option that requires no hardware
assist or operating system assist to virtualize sensitive and
privileged instructions.
 The hypervisor translates all operating system instructions on the
fly and caches the results for future use, while user level
instructions run unmodified at native speed.
Full Virtualization
 This approach translates kernel code
to replace nonvirtualizable
instructions with new sequences of
instructions that have the intended
effect on the virtual hardware.
 Meanwhile, user level code is directly
executed on the processor for high
performance virtualization.
 VMM provides each Virtual Machine
with all the services of the physical
system, including a virtual BIOS,
virtual devices and virtualized
memory management.
 Combination of binary translation
and direct execution provides Full
Virtualization as the guest OS is fully
abstracted (completely decoupled)
Paravirtualization
 “Para-“ is an English affix of Greek
origin that means "beside," "with,"
or "alongside.”
 Paravirtualization refers to
communication between the guest
OS and the hypervisor to improve
performance and efficiency.
 Paravirtualization involves
modifying the OS kernel to replace
nonvirtualizable instructions with
hypercalls that communicate
directly with the virtualization layer
hypervisor.
 Hypervisor also provides hypercall
interfaces for other critical kernel
operations such as memory
management, interrupt handling
Paravirtualization ( Contd..)
 Paravirtualization cannot support unmodified
operating systems (e.g. Windows 2000/XP), its
compatibility and portability is poor.

 The open source Xen project is an example of


Paravirtualization that virtualizes the processor and
memory using a modified Linux kernel and
virtualizes the I/O using custom guest OS device
drivers.

 While it is very difficult to build the more


sophisticated binary translation support necessary
for full virtualization, modifying the guest OS to
enable Paravirtualization is relatively easy.
Hardware Assisted Virtualization
 Hardware vendors are rapidly
embracing virtualization and
developing new features to
simplify the virtualization
techniques.
 First generation enhancements
include Intel Virtualization
Technology (VT-x) and AMD’s
AMD-V which both target
privileged instructions with a new
CPU execution mode feature that
allows the VMM to run in a new
root mode below ring 0.
 Privileged and sensitive calls are
set to automatically trap to the
hypervisor, removing the need for
2: Memory Virtualization
 It involves sharing the host physical memory and dynamically
allocating it to VMs.
 VM memory virtualization is similar to the virtual memory
support provided by modern operating systems.
Memory Virtualization (Contd…)
 Shadow Page Tables
 The hypervisor maps the virtual memory directly to the
machine memory.
 Whenever the guest operating system changes the
virtual memory to physical memory mapping, the
hypervisor updates the shadow page tables
accordingly, thus enabling a direct lookup.
Memory Virtualization (Contd…)
 Hardware Approach
 Second-generation hardware virtualization
technologies, such as Nested Page Tables from AMD or
Extended Page Tables from Intel, avoid the
bookkeeping overhead of the shadow page table
method, partly by brute hardware force.
 They employ a “super-TLB (translation look-aside
buffer)” that stores both virtual to guest physical
translation and guest physical to machine memory
translation and enables significant performance gains.
3: I/O Virtualization
 Virtualizing the I/O path from the server to
the peripheral device, enabling multiple VMs
to share an I/O device.
I/O Virtualization (Contd…)
 Software IOV
 The hypervisor virtualizes the physical hardware and
presents each VM with a standardized set of virtual
devices.
 These virtual devices effectively emulate well-known
hardware and translate the VM requests to the system
hardware.
 Although software-based methods for IOV typically
provide richer functionality and better manageability,
they exhibit higher CPU utilization and lower
throughput.
I/O Virtualization (Contd…)
 Hardware IOV
 This CPU overhead issue leads to the hardware
approach to IOV, introduced by Intel with VT-d and
AMD with AMD-Vi technologies.
 With these hardware extensions, the hypervisor can
safely assign physical hardware directly to VMs, ending
the need for them to funnel all their I/O through the
host, thus reducing CPU overhead and achieving
native-level I/O performance for VMs.
 This approach needs the I/O device to be shared
among multiple VMs.
Network Virtualization
 Today, networks are everywhere, ranging from small
local-area networks (LAN) all the way to the biggest
network of all: the Internet.

 Network virtualization can be defined as the


application of virtualization concepts to these
networks.

 One to many: It includes logically segmenting a


physical network into multiple virtual networks.

 Many to one: It also includes consolidating


multiple physical networks into one virtual network.
Drivers for Network Virtualization
 Privacy and regulatory compliance
 Privacy concerns are increasing, as is the need for
enterprises to adhere to regulatory compliance.
 Even within the company, there is a need to isolate traffic
between different user groups, such as engineering,
marketing, legal, HR, or finance.

 Underutilized networks and network services


 Even networks face the trend of ever-powerful network
boxes, which are underutilized.
 In the pre-virtualization era, multiple physical networks
would be present in the same enterprise, and in such cases
if the enterprise desired to acquire a new firewall
appliance, it had to purchase a separate appliance for each
physical network.
Drivers for Network Virtualization
(Contd…)
 Network management complexity
 Virtualization abstracts away the physical details of the
network device, the network administrator has to deal
only with managing the network at a logical level.
 With the capability to combine multiple physical network
devices into a single network device, virtualization can
help reduce the number of network points that have to
be managed.

 Security
 Virtualization reduces the number of configuration points
in the network, which in turn lowers the complexity and
the probability of miss-configuration, ultimately leading
to successful enforcement of the desired security policy.
Logical Segmentation: One to Many
 A single physical network is logically segmented
into multiple virtual networks.

 Each virtual network could correspond to a user


group, providing the necessary traffic isolation and
access restrictions for that group.

 At the same time, network services from a common


physical service node are shareable across virtual
networks.
Logical Segmentation (Contd…)
Network Consolidation: Many to One

 Many-to-one virtualization is exhibited when multiple physical


networks (or network devices) are combined together into a
single logical network (or network device).

 Cisco’s Virtual Switching System (VSS), allowing two network


switches to be managed and monitored as a single logical switch.

 Such consolidation facilitates a single point of management and a


simplified network, resulting in improved operational efficiency.
Storage Virtualization
 The process of combining multiple physical storage
devices into logical storage devices.

 Block storage Virtualization


 Refers to the abstraction of physical storage such that it may
be accessed without regard to the physical location or
structure of the storage.
 It is often referred to as storage virtualization, and is used by
databases that need block-level access to data.
 The data disks for block virtualization will typically reside on
storage-area networks (SAN).

 File storage virtualization


 Provides abstraction for data accessed at the file level from
the physical location where the files are stored.
 This type of storage virtualization is targeted for applications
that access data as files rather than as blocks.
 The files are typically stored on network attached storage
(NAS) file systems.
How Storage Virtualization Works
 Storage virtualization works through mapping.

 The storage virtualization layer creates a mapping from


the logical storage address space (used by the hosts) to
the physical address of the storage device.

 Such mapping information, also referred to as


metadata, is stored in huge mapping tables.

 When a host requests I/O, the virtualization layer looks


at the logical address in that I/O request and using the
mapping table translates the logical address into the
address of a physical storage device.

 The application is unaware of this mapping that


happens beneath the covers.
How Storage Virtualization Works (Contd…)
Implementation techniques of Storage
Virtualization
 Array-Based Storage Virtualization
 The virtualization layer resides inside a storage array
controller, and multiple other storage devices, from the
same vendor or from a different vendor, can be added
behind it.
 That controller, called the primary storage array
controller, is responsible for providing the mapping
functionality.
 The primary storage array controller also provides
replication, migration, and other storage management
services across the storage devices that it is
virtualizing.
Implementation techniques of Storage Virtualization (Contd…)

 Network-Based Storage Virtualization


 The virtualization layer resides on a networked device
sitting in the SAN, such as an appliance or a network
switch.
 It provides true virtualization, abstracting a variety of
storage devices, which can be managed from a single
management interface.
 Ways of implementing:
 Symmetric or in-band
 Asymmetric or out-of-band
 Hybrid split-path
Network-Based Storage Virtualization
 Symmetric or in-band
 The virtualization device is sitting in the path of the I/O
data flow.
 Hosts send I/O requests to the virtualization device,
which perform I/O with the actual storage device on
behalf of the host.
 Caching for improving performance and other storage
management features such as replication and
migration can be supported.
 One possible restriction is that the virtualization device
risks being the performance bottleneck because all I/O
passes through it
Network-Based Storage Virtualization (Contd…)

 Asymmetric or out-of-band
 The virtualization device in this approach sits outside
the data path between the host and storage device.
 This means a special software is needed on the hosts,
which knows to first request the location of data from
the virtualization device and then use that mapped
physical address to perform the I/O.
 It has additional complexity because of the changes
required on the host side.
 Caching is not an option anymore because I/O does not
pass through the mapping device.
Network-Based Storage Virtualization (Contd…)

 Hybrid split-path
 This method uses a combination of in-band and out-of-
band approaches, taking advantage of intelligent SAN
switches to perform I/O redirection and other
virtualization tasks at wire speed.
 Specialized software running on a dedicated highly
available appliance interacts with the intelligent switch
ports to manage I/O traffic and map logical-to-physical
storage resources at wire speed.
 In typical in-band solutions the CPU is susceptible to
being overwhelmed by I/O traffic, but in the split-path
approach the I/O-intensive work is offloaded to
dedicated port-level ASICs (application-specific
integrated circuits) on the SAN switch.
Desktop Virtualization
 Desktop virtualization is the concept of isolating a
logical operating system (OS) instance from the client
that is used to access it.

 Two categories of models:


 Host-based desktop virtualization
 Require that users view and interact with their desktops over
a network by using a remote display protocol.
 Because processing takes place in a data center, client
devices can be thin clients, zero clients, smartphones, and
tablets.
 Client-based desktop virtualization
 Require processing to occur on local hardware.
 The use of thin clients, zero clients, and mobile devices is not
possible.
Host-based desktop virtualization
 Host-based virtual machines
 Each user connects to an individual virtual machine that is
hosted in a data center.
 The user may connect to the same VM every time, allowing
personalization, (known as a persistent desktop) or be given a
random VM from a pool (a non-persistent desktop).

 Shared hosted
 Users connect to either a shared desktop or simply individual
applications that run on a server.
 Shared hosted is also known as remote desktop services or
terminal services.

 Host-based physical machines or blades


 The operating system runs directly on physical hardware located
in a data center.
Client-based desktop virtualization
 OS streaming
 The operating system runs on local hardware, but boots to a
remote disk image across the network.
 This is useful for groups of desktops that use the same disk
image.
 It requires a constant network connection in order to
function; local hardware consists of a fat-client with all of the
features of a full desktop computer except for a hard drive.

 Client-based virtual machines


 A virtual machine runs on a fully-functional PC, with a
hypervisor in place.
 Client-based virtual machines can be managed by regularly
syncing the disk image with a server, but a constant network
connection is not necessary in order for them to function.
Benefits of Virtualization
 Less heat buildup
 Virtualize your servers and you're using less physical hardware.
Use less physical hardware and you generate less heat.
 Reduced cost
 Reduce the amount of hardware used and you reduce your cost.
But the cost goes well beyond that of hardware -- lack of
downtime, easier maintenance, less electricity used.
 Faster redeploy
 With virtualization, the redeploy can occur within minutes.
Virtual machine snapshots can be enabled with just a few
clicks. And with virtual backup tools, redeploying images will be
so fast your end users will hardly notice there was an issue.
 Easier backups
 You can do backups and snapshots of your virtual machines.
These virtual machines can be moved from one server to
another and redeployed easier and faster. Snapshots can be
taken throughout the day, ensuring much more up-to-date data
Benefits of Virtualization
(contd..)
 Better testing
 What better testing environment is there than a virtual one? If you
make a tragic mistake, all is not lost. Just revert to a previous snapshot
and you can move forward as if the mistake didn't even happen.
 No vendor lock-in
 One of the nice things about virtualization is the abstraction between
software and hardware. This means you don't have to be tied down to
one particular vendor -- the virtual machines don't really care what
hardware they run on.
 Better disaster recovery
 Disaster recovery is quite a bit easier when your data center is
virtualized. With up-to-date snapshots of your virtual machines, you
can quickly get back up and running.
 Single-minded servers
 With virtualization, you can easily have a cost-effective route to
separating your email server, your web server, your database server,
etc.
 Easier migration to cloud
 You can deploy VMs to and from your data center to create a powerful
cloud-based infrastructure.

You might also like