0% found this document useful (0 votes)
21 views19 pages

Cloud Resource Virtualization: Sanjay Chakraborty

The document discusses cloud resource virtualization, explaining its definition, benefits, and the complexities of resource management in computing environments. It highlights the role of Virtual Machine Monitors (VMMs) in creating isolated virtual machines and the differences between full and paravirtualization. Additionally, it emphasizes the environmental advantages of virtualization, such as reduced energy consumption and CO2 emissions.

Uploaded by

abc8942033
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)
21 views19 pages

Cloud Resource Virtualization: Sanjay Chakraborty

The document discusses cloud resource virtualization, explaining its definition, benefits, and the complexities of resource management in computing environments. It highlights the role of Virtual Machine Monitors (VMMs) in creating isolated virtual machines and the differences between full and paravirtualization. Additionally, it emphasizes the environmental advantages of virtualization, such as reduced energy consumption and CO2 emissions.

Uploaded by

abc8942033
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
You are on page 1/ 19

CLOUD RESOURCE VIRTUALIZATION

Sanjay Chakraborty
Introduction
• Wikipedia says “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”.
• Concept is not new.
Multi Programming – Each Process thinks it has complete
control on all of the resources.
• Virtual Memory
• CPU Sharing
Resource Management & Virtualization
• Resource management for a community of users with a wide range of
applications running under different operating systems is a very difficult
problem. Resource management becomes even more complex when
resources are oversubscribed and users are uncooperative. In addition to
external factors, resource management is affected by internal factors,
such as the heterogeneity of the hardware and software systems, the
ability to approximate the global state of the system and to redistribute
the load, the failure rates of different components, and many other
factors.
• The traditional solution for a data center is to install standard operating
systems on individual systems and rely on conventional OS techniques to
ensure resource sharing, application protection, and performance
isolation.
• The alternative is resource virtualization.
Virtualization - Why Virtualize?

• Reduce Real Estate Needs


• Increase Up Time
• Reduce CO2 Emissions, Power and Cooling Requirements
• Increase Flexibility
• Reduce Overall Costs
Similarities and Differences with
Multiprogramming
• Multi Programming
i. CPU is shared among processes.
ii. Memory is shared using Page Tables.
iii. Process knows it is being managed- uses system calls.

• Virtualization
i. CPU is shared among OSs.
ii. Memory is shared using more level of indirections. Multiple Page
tables.
iii. OS may or may not know that it is being managed
Traditional Server Vs. Virtual Server
Massively Virtualized Model - Cloud
Virtualization Interface
1. Multiplexing: create multiple virtual objects from one
instance of a physical object. For example, a processor is
multiplexed among a number of processes or threads.
2. Aggregation: create one virtual object from multiple physical
objects. For example, a number of physical disks are
aggregated into a RAID disk.
3. Emulation: construct a virtual object from a different type of
a physical object. Example, a physical disk emulates a Random
Access Memory.
• For example, a VMM would control I/O operations to two
virtual disks implemented as two different set of tracks
on a physical disk. New services can be added without
the need to modify an operating system.
Layering and virtualization
Virtual machine monitors (VMM)
• A Virtual Machine Monitor (VMM) also called hypervisor is the software that
securely partitions the resources of computer system into one or more virtual
machines.
• A guest operating system is an operating system that runs under the control of a
VMM rather than directly on the hardware.
• The VMM runs in kernel mode while a guest OS runs in user mode.
• VMMs enforce isolation among these systems(security).
• The events occurring in one VM do not affect any other VM running under the
same VMM.
• The movement of a server from one platform to another, the so-called live
migration.
• A VMM virtualizes the CPU and the memory. For example, the VMM traps
interrupts and dispatches them to the individual guest operating systems; if a
guest OS disables interrupts, the VMM buffers such interrupts until the guest OS
enables them. The VMM maintains a shadow page table for each guest OS and
replicates any modification made by the guest OS in its own shadow page table;
this shadow page table points to the actual page frame and it is used by the
hardware component called the Memory Management Unit (MMU) for dynamic
address translation.
Virtual machines(1)

• A Virtual Machine (VM) is an isolated environment that appears to be a


whole computer, but actually only has access to a portion of the computer
resources. Example-Virtual machines have been around since early 1970s
when IBM released its VM 370 operating system.

• Process VM is a virtual platform created for an individual process and


destroyed once the process terminates.

• A system VM supports an operating system together with many user


processes. When the VM runs under the control of a normal OS and
provides a platform-independent host for a single application we have an
application virtual machine, e.g., Java Virtual Machine (JVM).
Classification of Virtual machines(1)
Classification of Virtual machines(2)
Performance and security isolation

• Performance isolation is a critical condition for Quality of Service (QoS)


guarantees in shared computing environments.

• Operating systems use the process abstraction not only for resource
sharing but also to support isolation. Unfortunately, this is not sufficient
from a security perspective, once a process is compromised it is rather
easy for an attacker to penetrate the entire system. On the other hand,
the software running on a virtual machine has the constraints of its own
dedicated hardware; it can only access virtual devices emulated by the
software. This layer of software has the potential to provide a level of
isolation nearly equivalent to the isolation presented by two different
physical systems. Thus, the virtualization can be used to improve security
in a cloud computing environment.
Full virtualization and paravirtualization
• There are two basic approaches to processor virtualization: full
virtualization when each virtual machine runs on an exact copy of the
actual hardware. Ex-VMware VMMs are example of full virtualization; and
paravirtualization when each virtual machine runs on a slightly modified
copy of the actual hardware. Ex- Xen and Denali are based on
paravirtualization.
• The reasons why paravirtualization is often adopted are: (i) some aspects
of the hardware cannot be virtualized; (ii) to improve performance; (iii) to
present a simpler interface.
• Full virtualization requires a virtualizable architecture; the hardware is
fully exposed to the guest OS which runs unchanged and this ensure that
this direct execution mode is efficient. On the other hand,
paravirtualization is done because some architectures such as x86 are not
easily virtualizable. Paravirtualization demands that the guest OS be
modified to run under the VMM; also the guest OS code must be ported
for individual hardware platforms.
Full virtualization and paravirtualization
Virtualization - Green Focus

The Reality:
• Most servers only use 5-15% of their capabilities on average, while
consuming 60-90% of their peak power.

The Solution - Virtualization:


o Use one server to host multiple applications.
o Reduce energy consumption
o Reduce CO2 emissions

Running fewer, highly utilized servers frees up space and


power. Less space and power is better for environment and
saves money.
The darker side of virtualization
THANK YOU

You might also like