0% found this document useful (0 votes)
10 views29 pages

Understanding Virtualization in Cloud Computing

The document provides an overview of virtualization as a key component of cloud computing, detailing its characteristics, techniques, and advantages. It discusses various virtualization methods, including hardware-assisted, full, paravirtualization, and application-level virtualization, along with their applications in cloud environments. Additionally, it highlights the pros and cons of virtualization, emphasizing its role in enhancing security, resource management, and cost efficiency while also addressing potential performance issues.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views29 pages

Understanding Virtualization in Cloud Computing

The document provides an overview of virtualization as a key component of cloud computing, detailing its characteristics, techniques, and advantages. It discusses various virtualization methods, including hardware-assisted, full, paravirtualization, and application-level virtualization, along with their applications in cloud environments. Additionally, it highlights the pros and cons of virtualization, emphasizing its role in enhancing security, resource management, and cost efficiency while also addressing potential performance issues.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Unit I - Virtualization

CLOUD COMPUTING
Course Code: BTCOC702

Harishchandra Akarte
Assistant Professor
Department of Computer Engineering
Dr. Babasaheb Ambedkar Technological University, Lonere
Introduction

• Virtualization is one of the fundamental components of Cloud Computing


• It allows the creation of a secure, customizable, and isolated execution
environment to run applications.
• This term is often synonymous with hardware virtualization, which plays a
fundamental role in efficiently delivering Infrastructure-as-a-Service solutions
for Cloud computing.
Virtualization technologies have gained a renewed interest recently due to the
confluence of different phenomena:
a) Increased Performance and Computing Capacity
b) Underutilized Hardware and Software Resources
c) Lack of Space
d) Greening Initiatives
e) Rise of Administrative Costs
Characteristics of Virtualized environments
• Creation of a virtual version of
something Virtual Image Applications Applications
Guest
• Hardware
• Software environment
• Storage
• Network
• Three major components: Virtual Hardware Virtual Storage Virtual Networking
Virtualization Layer
• Gest Software Emulation

• Host
• Virtualization layer

Fig.: Virtualization Reference Model


Host Physical Hardware Physical Storage Physical Networking
• The guest represents the system component that interacts with the virtualization layer rather than
with the host as it would normally happen.
• The host represents the original environment where the guest is supposed to be managed.
• The virtualization layer is responsible for recreating the same or different environment where the
guest will operate.
• An operating system and installed applications on top of virtual hardware which is controlled and
managed by the virtualization layer, also called virtual machine manager.
• The profitable use of virtualization and make it possible to fully exploit the advantages have
always been characteristics of virtualized solutions;
• Increased Security
• Managed Execution
a) Sharing
Virtual
b) Aggregation Resources

c) Emulation
Aggregatio
d) Isolation Sharing
n
Emulation Isolation Virtualization

• Portability
Physical
Resources
Fig.: Functions Enabled
by Managed Execution
• Increased Security
• This level of indirection allows the virtual machine manager to control and filter the activity of the
guest, thus preventing some harmful operations from being performed.

• Managed Execution
a) Sharing: Virtualization allows the creation of a separate computing environment within the same host.
b) Aggregation: It is not only possible to share the physical resource among several guests, but
virtualization also allows the aggregation, which is the opposite process.
c) Emulation: Guests are executed within an environment that is controlled by the virtualization layer,
which ultimately is a program.
d) Isolation: In this, virtualization allows with a complete separate environment, in which they are
executed.

• Portability
• Portability applies in different ways, according to the specific type of virtualization considered.
Taxonomy of virtualization Techniques
How it is Virtualization
done? Technique Model

• Virtualization covers a wide Emulation Application

range of emulation techniques


Execution
that are applied to different Environmen
Process
High-Level VM
Programming
Level Language
t
areas of computing.
Storage Multiprogrammi Operating
Virtualizatio ng System
n
Networ Hardware-assiste
k d
Virtualization

Full
Virtualization
System Level Hardware

…. Paravirtualization

Partial
Virtualization
Execution Virtualization
• The techniques whose aim is to emulate an execution environment that is separate from the one
hosting the virtualization layer.
• Execution virtualization can be implemented directly on top of the hardware, by the operating
system, an application, or libraries dynamically or statically linked against an application image.
1. Machine Reference Model
2. Hardware-Level Virtualization
3. Hardware Virtualization Techniques
4. Operating System Level Virtualization
5. Programming-Language-Level Virtualization
6. Application-Level Virtualization
1. Machine Reference Model
Virtualizing an execution environment at different levels of the computing stack requires a
reference model that defines the interfaces between the levels of abstractions, which hide
implementation details.
Applications Applications
Model of hardware – Instruction Set Architecture
API
API calls
Application Binary Interface (ABI) separates Libraries Libraries

System calls User


The OS layer and applications and libraries. ABI
User
ISA
ISA
Operative System Operative System
Application Programming Interface (API)
IS
ISA A
Interfaces applications to libraries and/or the
Hardware Hardware

underlying OS.
2. Hardware-Level Virtualization
Guest
In memory
A virtualization technique that provides an representation

abstract execution environment in terms


Virtual Image
of computer hardware, on top of which a Storage
guest OS can run. VMM Host emulation

In this mode, guest is represented by


operating system, the host by the physical
Virtual Machine
computer hardware, the virtual machine
by its emulation, and virtual machine binary translation
instruction mapping
manager by the hypervisor. interpretation
……

The hypervisor is generally a program, or


a combination of software and hardware,
Host
that allows the abstraction of the
underlying physical hardware.
• Hypervisor
A fundamental type of element of hardware virtualization is the hypervisor, or Virtual Machine
manager (VMM).
Type I hypervisors run directly on top of the hardware. Therefore they can take the place of
operating systems, interact directly with the ISA interface exposed by the underlying hardware, and
emulate the interface in order to allow the management of guest OS.
Type II hypervisors require the support of an OS to
VM VM VM VM
provide virtualization services. This means that
ISA
they are programs managed by the operating
Virtual Machine Manager
VM VM VM VM
system, which interact with it through ABI, and
ABI ISA
emulate the ISA of virtual hardware for guest OS.
Operative System Virtual Machine Manager
Three properties have to be satisfied;
• Equivalence ISA ISA

• Resource control Hardware Hardware


• Efficiency
Hypervisor Reference Model
3. Hardware Virtualization Techniques
• Hardware-assisted Virtualization
• Hardware provides architectural support for building a virtual machine manager able to run a guest OS in complete
isolation.
• Wide range of virtualization solutions took advantage of different advancements: Kernel-based Virtual Machine(KVM),
VirtualBox, Xen, VMWare, Hyper-V, Sun xVM, Parallels, and others.

• Full Virtualization
• Refers to ability of running a program, most likely an OS, on top of a virtual machine directly and without any
modification, as if it were run a complete hardware.

• Paravirtualization
• This expose a software interface to the virtual machine that is slightly modified from host and aims to provide the
capability to demand the execution of performance critical operation directly on the host.

• Partial Virtualization
• Provides a partial emulation of the underlying hardware, without allowing complete execution of the guest OS in
complete isolation. Address space virtualization used in time-sharing systems is the example of partial virtualization.
4. Operating System Level Virtualization
• Offers the opportunity to create different and separated execution environments for applications that are
managed concurrently.
• Ex.: FreeBSD, IBM Logical Partition(LPAR), Solaris Zones and Containers, Parallels Virtuozzo Containers,
OpenVZ, iCore Virtual Accounts, Free Virtual Private Servers (Free VPS), and others.

5. Programming-Language-Level Virtualization
• This is mostly used for achieving ease of deployment of applications, managed execution, and portability across
different platforms and OSs.
• It consists of the virtual machine executing the byte code of a program, which is the result of compilation
process.
• Main advantage is the ability of providing a uniform execution environment across different platforms.

6. Application-Level Virtualization
• This allows applications to be run on runtime environments which do not natively support all the features
required by such applications.
• Ex. WABI (Windows Application Binary Interface), MacOS CrossOver, Vmware ThinApp, Winelib
• Other types of virtualization
1. Storage Virtualization
• A system administration practice that allows decoupling the physical organization of the hardware from its logical
representation. Storage Area Network (SAN), a network accessible device through a large bandwidth connection to
provide storage facilities.
2. Network Virtualization
• Combines hardware appliances and specific software for the creation and management of virtual network. VLAN is the
aggregation of hosts that communicates with each other as if they were located in same broadcasting domain.
3. Desktop Virtualization
• To provide access to it by using a client-server approach.
• Ex.: Windows Remote Services, VNC, X Server, Sun Virtual Desktop Infrastructure (VDI), Parallel VDI, Citrix
XenDesktop, etc.
4. Application-Server Virtualization
• Collection of application servers that provide the same service as a single virtual application server by using load
balancing strategies and providing a high availability infrastructure for the services hosted in the application server.
Virtualization and Cloud Computing
• It allows for the appropriate degree of V
M
customization, security, isolation, and V V V V V
M M M M M
manageability that are fundamental for
Virtual Machine Manager
delivering IT services on demand.
Server A Server B
• Cloud computing revamps the concept of (running) (running)
Before
desktop virtualization, initially introduced in Migration
the mainframe era.
• The ability to recreate the entire computing V V V
M M M
stack – from infrastructure to application V V V
M M M
services – on demand, opens the path to
Virtual Machine Manager
having a complete virtual computer hosted
Server A Server B
on the infrastructure of provider, and (running) (inactive)
accessed by a thin client over a capable After Migration
internet connection.
Fig.: Live Migration and Server
Consolidation
Pros and Cons of Virtualization

1. Advantages of Virtualization
1. Managed execution and isolation
2. Building a secure and controllable computing environment
3. Portability and self-containment
4. Reduce the cost of maintenance
5. More efficient use of resources

2. The Other Side of the Coin: Disadvantages


a) Performance Degradation
b) Inefficiency and Degraded User Experience
c) Security Holes and New Threads
Technology Examples

1. Xen: Paravitualization
2. Vmware: Full Virtualization
1. Full Virtualization and Binary Translation
2. Virtualization Solutions
a) End-User (Desktop) Virtualization
b) Server Virtualization
c) Infrastracture Virtualization and Cloud-computing Solutions
3. Observations

3. Microsoft Hyper-V
1. Architecture
a) Hypervisor
b) Enlightened I/O and Synthetic Devices
c) Parent Partition
d) Children Partitions
2. Cloud Computing and Infrastructure Management
3. Observation
VMWARE: FULL
VIRTUALIZATIO
N
the underlying hardware
is replicated and made
available to the guest
operating system, which
runs unaware of such
abstraction layers and does
not need to be modified.
- either in the desktop
environment (Type II
hypervisors),
- or in the server
environment, (Type I
hypervisors).
XEN:
PARAVIRTUALIZA
TION

Fig. Xen architecture and guest OS management


END-USER (DESKTOP)
VIRTUALIZATION

Fig. VMware
workstation
architecture.

Provides two main services:


• It deploys a virtual machine manager that can run in privileged mode.
• It provides hooks for the VMware application to process specific I/O requests eventually by relaying such
requests to the host operating system via system calls.
SERVER
VIRTUALIZATIO
N

Fig. VMware
GSX server
architecture.
MICROSOFT
HYPER-V
ARCHITECTU
RE
Hypervisor
The hypervisor is the component that directly manages the underlying hardware (processors and
memory). It is logically defined by the following components:
• Hypercalls interface - entry point for all the partitions for the execution of sensitive instructions.
• Memory service routines (MSRs) – a set of functionalities that control the memory and its access
from partitions.
• Advanced programmable interrupt controller (APIC) - represents the interrupt controller, which
manages the signals coming from the underlying hardware when some event occurs (timer
expired, I/O ready, exceptions, and traps).
• Scheduler - schedules the virtual processors to run on available physical processors
• Address manager - manage the virtual network addresses that are allocated to each guest OS
• Partition manager - performing partition creation, finalization, destruction, enumeration, and
configurations
The basic features offered by Hyper-V with management capabilities include:
• Management portal for the creation and management of virtual instances
• Virtual to Virtual (V2V) and Physical to Virtual (P2V) conversions
• Delegated administration
• Library functionality and deep PowerShell integration
• Intelligent placement of virtual machines in the managed environment
• Host capacity management
• REFERENCE
• MASTERING CLOUD COMPUTING – RAJKUMAR BUYYA
MULTI CORE PROCESSOR
Attendance system
Cryptography techniques in cloud computing
Chatbots
Online blood bank system
Cloud based bookstore
Cloud deep learning solutions
Cloud iot integrations
Remote controlled smart devices
Rural banking
Serverless applications
Bus ticketing and payment system
Cloud based access control model
Cloud based healthcare facilities
University campus online Automation
Utilising cloud-based data warehousing
Website hosting
Android offloading
Bug tracker
Building environmental sustainability in data centres
Cloud assisted fog computing
Cloud Solutions Architect
Clouds energy efficiency
Data leaks
Encrypted text transfer

You might also like