Cloud Computing Introduction

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

Cloud Computing Overview

Dr S C Gupta!
!
Visiting Faculty,
Dept of Computer Science and Engineering, IIT Delhi
!
Former Deputy Director General, NIC
Cloud Computing
Def (NIST)
!
“Cloud Computing is a model for enabling ubiquitous,
convenient, on-demand network access to a shared pool
of configurable computing resources (.e.g. networks,
servers, storage, applications and services) that can be
rapidly provisioned and released with minimal
management efforts or service provider interaction”
Cloud Computing
!
• Dynamic Provisioning of Resources
• Compute
• Storage
• Networking
• Services.. Platforms, Applications
• Pay per use like other utilities
• Accessible over network from anywhere
• Using Desktop and other Devices
• No Capital Investment
• Virtualisation Improves Compute Resource Utilisation
• Cloud Platforms provide inbuilt scalability and reliability
Cloud Computing Foundation :
Virtualisation
!
• Traditionally Servers in Data Centres under Utilised
(10-20%)
• Virtualisation : Hosting Multiple OS on the same server
• Guest OS isolated from each other and have
dedicated Cores, RAM and Storage
• VMM / Hypervisor Manages Multiple Guest OSs
• Each Server Can host large no of VMs
• Each VM can load any OS (any version) and is
administered independently.
• User Feel more secure having dedicated VM than
sharing a multi-programming OS
Virtualisation
Creating a virtual version of a resource from a real
resource (Compute, Storage, Network, Application)
!
Examples :
Virtual Paging : Create continuous large address space
for each user process / OS .. bigger than
the physical RAM of the system using
page table and disk swap area.
!
Storage Consolidation : Using Software Middleware,
several hard disks can be consolidated
to provide big disk storage. Can then
partition it to give storage to
individual VMs
Multiprogramming VS Virtualisation
Similarities and Differences

Multiprogramming! Virtualisation!
! !
CPU is shared among Processes CPU is shared among Guest OSs
!
Memory is shared using page Memory is shared using two level
table page tables
! !
Process knows that it is being Guest OS may or may not know
managed - uses system calls that it is being managed
!
!
!
Virtualisation Architecture
• OS unaware of underlying VMM
• OS gets the illusion of having complete control on all
resources
• VMM / Hypervisor is a software layer over the Hardware which
• Allows multiple OS to run simultaneously on a server
• Mutiplexes / shares all underlying hardware resources
Virtualisation : Key Features
!
• Instant Provisioning!
• VM is created using pre-defined images

• Live Migration!
• Pages are transferred to new server while VM is running, Initially
Program pages which do not change.. then data pages..flagging pages
changed after transfer. Need to hibernate for a short period to make the
final transfer..
!
• Load Balancing!
• Periodically find load of all servers and decide to migrate VMs from
overloaded Servers.
• Improves performance, utilises spare capacity of severs (as CPU,
Memory resources are not dedicated, but are being shared)
!
• Server Consolidation!
• When load is very less (off peak time) VMs can be shifted to fewer
Servers, so that some servers can be shut down to save on power.
VM Migration
Live Migration
Transparent to the user
Load Balancing ! ! ! ! Consolidation!
!
Better Server Utilisation Reduces No of Servers
Better Performance Saves Power
Virtualisation

• Binary Translation

• Para Virtualisation
!
• Hardware Assisted Virtualisation
Popek & Goldberg Analysis of Instructions (1974)

8.2 Resource Virtualization ~ Processors 9 385

re 8.6 Types of Instructions. (a) Sensitive and privileged instructions overlap (although not necessarily
completely). (b) Sensitive instructions and innocuous instructions are complements of each other.

the direct modification of system resources such as the PSW and the CPU
interval timer. Consequently, all of the guest operating system software is
Binary Translation
• Runs OS Binary as it is
• OS at Ring 1, VMM at Ring 0
• On the fly Binary Translation
• Translation to Trap Sensitive Instructions
• Translated pages cached for reuse
• Sensitive and Privileged instructions are emulated
• Emulation by VMM to Achieve Virtualisation
• e.g Disk Read Block 5 by Guest OS2.. Mapped to
Block ..1005
• Used initially when not supported by H/W
Para-virtualisation
!
• Possible when OS Source Code available
• Modify OS Source Code
• Replace Sensitive instructions to trap for
emulation
• Example : KVM Hypervisor
Hardware Assisted Virtualisation

• Hardware CPU enhanced to facilitate


Virtualisation
• Root Mode below ring 0
• OS at Level 0, VMM at Root Mode Level
• Sensitive & Privileged instruction flagged to trap
to Root Mode
• Some Privileged instructions do not to trap to
Root Mode (like System Calls)
• Only when System call routines / Kernel Functions
use any sensitive or privileged interaction, it
would trap to Root Mode.
Intel VT-x
• VMM with VT-x :
▪ System Call
• CPU will directly trap to
interrupt handler vector
of guest OS.
▪ Hardware Interrupt
• Still, hardware events
need to be handled by
VMM first.
▪ Sensitive Instruction
• Instead of trap all
privilege instructions,
running guest OS in Non-
root mode will trap
sensitive instruction
only.
Cloud Reference Architecture
IaaS : Infrastructure as a Service
!
Virtualised Compute, Storage, Networking
e.g. Amazon AWS, OpenStack, Baadal, Google Compute Engine
!
PaaS : Platform as a Service
!
Development and Processing Platform :Scalable and Reliable
e.g. Windows Azure, Google App Engine
!
SaaS : Software as a Service
!
Generic Application Software for wide use like
Office Products, CRM, Social Networking
e.g Facebook, Flicker, Salesforce, Google Documents
Cloud Deployment Models
Public Cloud :
Cloud Services from 3rd Party on Payment basis
e.g Windows Azure, Amazon, Google
!
Private Cloud :
In-house cloud services, largely used by Govt and
private org for sensitive applications and data
!
Hybrid Cloud :
Private cloud supplemented by Public Cloud
!
*Data Security and Legal issues
Cloud Technology
Proprietary
!
Windows Azure
Amazon
Google Apps Engine
!
Open Source Cloud!
!
Open Stack
Cloud Stack
Eucalyptus
!
References

Mastering Cloud Computing :


Rajkumar Buyya ,Christian Vecchiola, S Thamarai Selvi
Tata McGraw Hill Education Private Limited

You might also like