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

Virtualization

What is virtualization

Creating virtual resources of (disk,operating system, network
resource) from pool of physical resource.

The benefits of pooling resources to allocate them on demand.

It provides manage resources efficiently as mapping of virtual
resource to physical resources is dynamic and facile.

Dynamic : as resource assignment on demand

Facile : allocation can be change instantly
Different type of Virtualization

different type of virtualization

Access : client can request resource from any location.

Application : can have multiple instance of application

CPU : CPU can be virtualized by making different virtual
machines and distribute workload.

Storage : Data is stored across storage devices.


Virtalzation allowed features of cloud computing like service
based (client are abstracted from system implementation)

Scalable and elastic : service can be alterd to incease capacity and
performance on demand

Shared service : resources can be shared

Metered usage : cost of service is based on usage basis.
Load Balancing and Virtualization

The technology used to distribute service request to resources is
reffered as load balancing.

Load balancing is optimization technique, and used to increase
utilization and throughput, reduce response time and avoid
system overload.

Load balancing provides the falult tolerance by using failover
mechanism.

Simple Load balancing Mechanism

Load balancer listen to a network port for service request.

When request arrives , Load balancer user scheduling algorithm
to assign where the request need to be sent.

Can used round robin, weighted round robin, fatest response time
algorithm for scheduling

Session ticket is created by the load balancer so related traffic
from the client can be properly routed to the same resource.


Without persistence a load balancer not able to correctly failover a
request from one resource to another.

Persistence can be achieved using session data stored in database
and replicated across multiple load balancer.

Other method is stored cookies at the client side. It has least
amount of overhead for load balancer.
Advanced Load Balancing

Work load manager consider current utilization of resources ,
response time, work queue length , capacity of resources in order
to assign task to each resource.

Work load manager also have ability to bring standby servers
when ever it required.


Application Delivary Controller(ADC) is combination of load
balancer and application server.

It is a server placed in between router or firewall and server
providing a webservice.

ADC is assigned virtual IP address and maps to server based on
application specific area.

ADC is considered to be an advanced version of load balancer

Taks of ADC are

Data compression, content cashing, security, routing based on
current condition

It focused on two area of technology that is network optimization,
application or framework optimization. E.g ADC may be used to
accelerate ASP.NET or AJAX application.
Load balancing of Google Cloud


Google runs over million of servers world wide, processes a
billion of search request.

Google peroformes several layer of load balancing.

It also use pooling of IP address to distributes its traffic.

Google have several data centers over the world. Some country
have many datacenters. (USA – 12, Netherland – 2, Germany –
3 and many more) according to datacenterknowladge.com in 2008

The country with multiple data center store index replicas and
support network peering relation 

What is Network Peering ?

Peering is a process by which two Internet networks connect
and exchange traffic. It allows them to directly hand off traffic
between each other’s customers, without having to pay a third
party to carry that traffic across the Internet for them


Google maintains a pool of several of Ip addresses.

When search string given to the Google , Google DNS
server examine the pool of address to determine which addresses
are geographical closest to query origin and it uses the round
robin policy to assign and IP address to the request.

Request goes to nearer datacenter, and IP address is for cluster of
Google server. _ that is first level of IP virtualization.

When query request arrives at its destination, cluster is sent to a
load balancer.

Load balancer forward that request to a Squid proxy server. 

This second level of IP distribution based on measure of current
system load on servers in cluster.

The squid server checks chache , and if it finds a match to query
that match is returned.

If no match in squid cache, the query is sent to individual web
server on current web server utilization. It is third level of nework
load balancing .

Google web server that perform query and format the result into
html page that is returned to the requestor.

After that two more level of load balancing perform based on
utilization rate.

Google algorithm (secret sauce, page rank algo..) collects the
document information from the web. 

Google look at the title and first few hundred words and build a
words index from the result. Index is stored on index server.

Some documents are stored as pdf,doc, xls . Each document is
given a uniq id and content of document is disassembled into
segments and stored on document server.


Queries are divided into word list and google algo examines the
words and the relationship of one word to another.

Word relationship are mapped against the index

Web  server takes the result of query and composes the web apge
form the result.
Hypervisors

It is also called virtual machine monitor.

 Hypervisor is a hardware virtualization technique that allows
multiple guest operating systems (OS) to run on a single host
system at the same time.

A hypervisor is a computer software, or hardware that creates and
runs virtual machines.

It manages sharing of physical resources into virtual.

Operating systems inside guest virtual machines share all of the
host machine’s resources like processor, memory, network cards,
etc.

Program run on the hypervisor know as virtual machine.

Types of Hypervisor/ (virtual machine type)

So hypervisor is low level program which prove system resource
access to virtual machine.

Type 1 Hypervisor (Bare Metal)

are directly installed on a server’s hardware and support
hardware virtualization.

It creates a virtualization layer for virtual machine, on which host
operating system are installed

Eg Vmware  ESxi m Lynxsecure, Microsoft Hyper –v 

Type 2 Hypervisor (hosted hypervisor) 

Hypervisor is software application which is installed on host
operating system.

And it creates virtulization layer for virtual machine.

Guest OS on vm does not directly interact with the hardware in
type 2 

Its gives request to host os and host os interact with the hardware.

Host operating system  perform the IO . 

Eg  VM ware workstation, parallel desktop for mac , Oracle
Virtual box , KVM , xen (runs on top of the Linux host OS)


IN type 2 virtualization IO operation outside the
virtual environment it is called paravirtualization. E.g Hyper –v
and xen

Emulation 

 Virtual machine simulate the hardware, so it can be independent
of underlaying system hardware.

Guest os using emulation does not need to modified.

Paravirtualization 

Guest os access hardware thorugh host VM. Which is installed on
host operating system. So Guest os cant directly access the system
hardware it is access by host os.

Os running as guest is called on paravirtualization.

Full Virtualization 

Its is done in Type 1 hypervisor. Which run on direclty hardware.

Guest operating system can access system hardware .

It is more faster virtualization.
 Paravartuilization
VmWare Vsphere

It is management infrastructure framework that virtualizes
system , storage and networking hardware to create cloud
computing infrastructure.

Vmware Vcompute : A service that aggregate servers into
assignable pool.

Vmware vStorage : A service that aggregates storage resources
into assignable poo.
-Vmware vNetwork : A service that creates and manages virtual
network interface
Application services : Fault Tolerance
vCenter Server : management and monitioring console for Vmware
cloud infrastructure

vSphere cloud is pure infrastructure play.

The virtualization layer that abstracts processing, memory and
storage uses the Vmware ESX. Esx is Type1 hypervisor.

When the system is rebooted vmkernel loads first, and the Linux
kernel becomes the first guest operating system to run as a virtual
machine on the system.
How vSphere allocated different resources into
a virtual set of component

Physical computers are standalone hosts or set of clustered
system.

Virtual machine can be created that is part of single physical
system or spans two or more physical systems.

Group of VMs as Resource pool and manage those virtual
machines as a single object with single policy.

As more cluster or hosts are added or removed , vSphere
dynamically adjust VMs.

Storage Virtualization is most commonly achieved through a
mapping mechanism where a logical storage address is translated
into physical address.

Network virtualization abstracts networking hardware and
software into virtual network

Virtual network can create virtual network interface or virtual
LAN that can be managed by hypervisor , operating system.

You might also like