0% found this document useful (0 votes)
56 views46 pages

Cloud Computing: Jagdish Prasad

The document discusses virtualization and Infrastructure as a Service (IaaS). It defines virtualization as the abstraction of computer resources to make physical resources appear as multiple virtual resources. The key types of virtualization covered are server, storage, network, and desktop virtualization. Server virtualization types like hardware virtualization, software virtualization, and OS virtualization are explained. The roles of virtual machines, hypervisors, and popular hypervisors like VMWare, Hyper-V, KVM and XenProject are also summarized.

Uploaded by

suhaib Wani
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)
56 views46 pages

Cloud Computing: Jagdish Prasad

The document discusses virtualization and Infrastructure as a Service (IaaS). It defines virtualization as the abstraction of computer resources to make physical resources appear as multiple virtual resources. The key types of virtualization covered are server, storage, network, and desktop virtualization. Server virtualization types like hardware virtualization, software virtualization, and OS virtualization are explained. The roles of virtual machines, hypervisors, and popular hypervisors like VMWare, Hyper-V, KVM and XenProject are also summarized.

Uploaded by

suhaib Wani
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/ 46

BITS Pilani

Pilani Campus

Cloud Computing

Jagdish Prasad
BITS Pilani
Pilani Campus

Session: 03

Virtualization & IaaS


Agenda

• Virtualization
• Infrastructure as a Service (IaaS)
• IaaS Characteristics
• API based access
• Cost
• Device independence
• Virtualization
• Multitenancy
• Availability Zones and Regions
• IaaS Advantages
Virtualization
Typical Computing Requirement
• Different customers have different requirements
• Simple solution is to have a separate machine for everyone as
per the requirements

I want I want
Windows 7 Linux

Customer A Customer B
I want … I want …

I want … I want …
Windows Linux
Better Solution

• Create a pool of pre-installed physical machines for all kinds of


request and allocate as the requirements comes in.

I want
Mac OS
Somebody
Somebody Somebody
might Somebody
may want might want…
want… may want

Windows + Office Windows Server Linux + OpenOffice Linux Server


Solution Review

• Obviously, neither of previous strategies will work.


• We need more powerful techniques to deal with that.

• Virtualization techniques will help:


– For computation resources: Virtual Machine
– For storage resources: Virtual Storage
– For communication resources: Virtual Network
Traditional V/S Virtualized Architecture
What is Virtualization?
• Virtualization: the abstraction of computer resources.
• Virtualization hides the physical characteristics of computing
resources from their users, be they applications, or end users.
• This includes making a single physical resource (such as a
server, an operating system, an application, or storage device)
appear to function as multiple virtual resources
• It can also include making multiple physical resources (such as
storage devices or servers) appear as a single virtual resource.
What is Virtualization?

• Virtualization is a technology that turns


hardware into software
• Virtualization allows to run multiple
operating systems as a virtual machine on
single physical machine
• Each copy of the operating system is
installed in a virtual machine
• Hypervisor is a software program that
manages multiple operating systems (or
multiple instances of the same operating
system) on a single computer system.
• Hypervisor manages the system's processor,
memory, and other resources to allocate
what each operating system requires.
Types of Virtualization
• Server Virtualization: Hypervisor
creates virtual versions of computers
and OS and consolidates them into
one large physical server
• Storage Virtualization: Combines all
physical hard drives into a single
cluster
• Network Virtualization: Combines all
physical networking equipment into
a single, software-based resource
• Desktop Virtualization: Separates
the desktop environment from the
physical device and configures as a
• Server virtualization has following sub-categories: “virtual desktop infrastructure” (VDI)
and allows users to work from
– Hardware Virtualization
anywhere
– Software Virtualization • Application Virtualization:
• Binary translation Applications are virtualized and
• Paravirtualization
delivered to any user device through
• Hardware-assisted
internet.
– OS Virtualization
Server Virtualization Types

Server Virtualization

Hardware Virtualization Software Virtualization OS Virtualization


Uses Hypervisor
Big Unix Vendors Popular on x86 hardware Solaris Containers

Binary Translation Paravirtualization Hardware Assisted


Some system calls are
Guest OS modified to take Intel VT and AMD-V
intercepted and dynamically re-
advantage of hypervisor Relatively new (2007)
written
Server Virtualization Types…
• Software Virtualization: Involves the creation of an operation of multiple
virtual environments on the host machine. It creates a computer system
complete with hardware that lets the guest operating system to run. For
example, it lets you run Android OS on a host machine natively using a
Microsoft Windows OS, utilizing the same hardware as the host machine
does.
• Hardware Virtualization: Not a common form of virtualization. It is
similar to OS virtualization. Instead of putting multiple software
instances on a single machine, chunks of a machine are partitioned off
to perform specific tasks.
• OS Virtualization: It involves using containers to create multiple instances of a
machine along with applications on a single machine. This reduces the
amount of physical hardware required to run their software by cutting down
the number of actual machines.
Virtual Machines
• Virtualization breaks down the physical
infrastructure of computing and
networking resources into smaller,
reusable and flexible units.
• These units are presented to the users as
though each was a discrete one.
• Flexibility allows to suspend/delete a
Virtual Machines virtual server as soon as it performs its
job freeing up the resources that can be
used to service the upcoming tasks in
the queue.
• Every virtual machine has an attached
Operating System.
• Each instance can be accessed by both
administrators and users in a way similar
to how you would access/use a physical
server.
Hypervisor
• Software responsible for system virtualization is called Virtual
Machine Monitor (VMM) or Hypervisor
• Combination of OS and Application that runs on top of
virtualization software is called Guest or Virtual Machine (VM)
• Hypervisor allows multiple operating systems to run concurrently
on a host hardware
• Hypervisor handles any changes to a processor without affecting
the Guest application
• Hypervisor provides multi-tenancy support
• Virtualization concept initially implemented by IBM in 1967 with
CMS OS running on CP-40 hypervisor
Hypervisor Types
• Bare or Native Hypervisors:
– Run directly on hardware
– Ex: early mainframe hypervisors, VMWare, ESX Server, KVM etc
• Hosted Hypervisors:
– Run on top of an existing OS leveraging features an existing OS
– Slightly inefficient
– Ex: VMWare, GSX Server etc
• Hybrid Hypervisors:
– Hypervisor runs directly on server but usage leverages features of an
existing OS running as a guest application
– Ex: Microsoft Hyper-V, XEN etc
Popular Hypervisors

• VMWare vSphere
• Microsoft Hyper-V
• Redhat KVM
• Xen Project XenServer
VMWare: vSphere
• Server virtualization platform from
VMWare
• vSphere is a set of products that
includes virtualization, management
tools and interface layers.
• It provides a number of key
components including infrastructure
services (vCompute, vStorage, and
vNetwork), application services,
vCenter Server, vSphere Client, etc.
VMWare: vSphere…
• vCenter Server: A centralized management tool used to configure, provision and manage
virtual IT environments.
• vSphere Client: A Flash-based web client for vSphere. It includes vSphere Update
Manager, Content library, vSAN, Storage policies, Host profiles, VMware vSphere
Distributed Switch topology diagram and Licensing.
• vSphere SDKs: Provides interfaces for third-party solutions to access vSphere.
• VM File System: Cluster file system for VMs.
• Virtual SMP: Enables a single VM to use multiple physical processors at a time.
• vMotion: Enables live migration with transaction integrity.
• Storage vMotion: Enables VM file migration from one place to other without service
interruption.
• High Availability: If one server fails, VM is shifted to other server with spare capacity to
enable business continuity.
• Distributed Resource Scheduler (DRS): Assigns and balances compute automatically
across hardware resources available for VMs.
• Fault Tolerance: Generates copy of primary VM to ensure its continuous availability.
• Distributed Switch (VDS): Spans multiple ESXi hosts and enables considerable reduction
of network maintenance activities.
Microsoft: Hyper-V
• Microsoft hypervisor
launched in 2008
• Hyper-V enables to
expand or establish a
private cloud
environment
• Promotes effective
hardware utilization,
and improves business
continuity
• Enhances development
and test efficiency
Microsoft: Hyper-V…
• Persistent memory support
• Shielded VM updates
• Simple Two-Node clusters
• ReFS Deduplication
• Storage Spaces Direct improvements
• Windows Admin Center
• Encrypted subnets
Redhat: KVM

• KVM (Kernel-based Virtual Machine) is part of Red Hat Virtualization Suite


• KVM is a complete virtualization solution for infrastructure
• KVM turns Linux kernel into a hypervisor. It was merged into the Linux kernel
mainline in kernel version 2.6.20.
Redhat: KVM…
• Container support
• Scalability
• Overcommit resources
• Disk I/O throttling
• Hot plug of virtual resources
• Low-cost virtualization solution
• Red Hat Enterprise Virtualization programming & API
• Live Migration & Storage Migration
• Assign any PCI device to virtual machines
• Red Hat Satellite integration
• Disaster Recovery support
Xen Project: XenServer

• Xen Server is Based on Xen Project Hypervisor


• Xen Server is an open-sourced bare-metal server virtualization platform
• Xen Server consists of enterprise-grade features that help enterprises to easily
handle workloads, combined OS, and networking configurations.
Xen Project: XenServer…
• XenServer provides improved virtualized graphics with NIVIDA and Intel
• Xen server allows execution of multiple operating systems on same computer
hardware.
• Features of XenServer:
• Site Recovery
• Host Failure Protection
• Multi-server management
• Dynamic Memory Control
• Active Directory Integration
• Role-Based Administration and Control (RBAC)
• Mixed Resource Pools with CPU Masking
• Distributed Virtual Switch Controller
• In Memory read caching
• Live VM migration & Storage XenMotion
Infrastructure as a Service (IaaS)
What is IaaS?
• IaaS is a form of Cloud Computing that delivers basic compute,
network and storage resources to consumers on-demand, over
the internet and on a pay-as-you-go basis service over internet
• IaaS enables users to scale and shrink resources on need basis
• IaaS avoids up-front capital expenditure or unnecessary “owned”
infrastructure, especially in the case of “spiky” workloads.
• IaaS provider manages:
• Data center (facilities, staff, operations etc)
• Power & Cooling
• Networks & Security
• Servers and storage (primary and backup)
• User has the flexibility of operating system, development tools,
applications etc.
Traditional v/s IaaS v/s PaaS v/s SaaS
IaaS Platform Components
• IaaS is made up of a collection of physical and virtualized resources that provide
consumers with the basic building blocks needed to run applications and
workloads in the cloud.
• Physical Data Centers
• IaaS providers manage large data centers, typically around the world, that contain
the physical machines required to power the various layers of abstraction on top of
them
• These are made available to end users over the internet
• Compute
• IaaS is typically a virtualized compute resource as a virtual machine.
• Providers manage the hypervisors and end users can then programmatically
provision virtual “instances” with desired amounts of compute, memory & storage
• Most providers offer both CPUs and GPUs for different types of workloads.
• Cloud compute comes paired with supporting services like auto scaling and load
balancer that provide the scale and performance characteristics required
IaaS Platform Components…
• Network
• Networking in the cloud is a form of Software Defined Networking in which
traditional networking hardware, such as routers and switches, are made available
programmatically, typically through APIs.
• More advanced networking use cases involve the construction of multi-zone regions
and virtual private clouds.
• Storage
– There are three primary types of cloud storage: Block storage, File storage and
Object storage.
– Block and file storage are common in traditional data centers but have challenges of
scale, performance and distributed characteristics
– Object storage is the most common mode of storage in cloud given that it is highly
distributed (and thus resilient)
• leverages commodity hardware
• data can be accessed easily over HTTP
• Provides high scale and performance as the cluster grows.
IaaS Characteristics

• Five fundamental characteristics of IaaS:


• Scalability & Elasticity
• Availability & Reliability
• Performance & Optimization
• Accessibility & Portability
• Manageability & Interoperability
Scalability & Elasticity
What scalability and How to approach scalability and elasticity?
elasticity mean? • For computation resources:
• Clients should be able to – Dynamically create or terminate VMs for clients on
dynamically increase or demand
decrease the amount of – Integrate hypervisors among all physical machines to
infrastructure resources in collaboratively control and manage all VMs
need. • For storage resources:
• Large amount of resources – Dynamically allocate or de-allocate virtual storage
provisioning and space for clients.
deployment should be done – Integrate all physical storage resources in the entire
in a short period of time IaaS system
• System behavior should – Offer initial storage resources by thin provisioning
technique
remain identical in small or
large scale • For networking resources:
– Dynamically connect or disconnect the linking state of
virtual networks for clients on demand
– Dynamically divide the network request flow to
different physical routers to maintain access bandwidth
Availability and Reliability
What do availability and How to approach availability and reliability?
reliability mean? – For computation resources:
– Clients should be able to access • Monitor each physical and virtual machine for any
computation resources without possible failure.
considering the possibility of • Regularly backup virtual machine system state for
hardware failure. disaster recovery.
– Data stored in IaaS cloud • Migrate virtual machine among physical machines
for potential failure prevention.
should be able to be retrieved
when needed without – For storage resources:
considering any natural disaster • Maintain data pieces replication among different
damage. physical storage devices.
– Communication capability and • Regularly backup virtual storage data to
geographical remote locations for disaster
capacity should be maintained prevention.
without considering any
– For networking resources:
physical equipment shortage.
• Built redundant connection system to improve
robustness.
Manageability and Interoperability
What do manageability and How to approach manageability and
interoperability mean? interoperability?
– Clients should be able to fully – For computation resources:
control the virtualized • Provide VM operations like creation, termination,
infrastructure resources which suspension, resumption and system snapshot.
allocated to them • Monitor and record CPU and memory usage for
– Virtualized resources can be each VM.
allocated by means of system – For storage resources:
controlled automation process • Monitor and record storage space usage and
with pre-configured policy read/write data access from user for each virtual
storage resource.
– States of all virtualized resource
should be fully under monitoring. • Automatic allocate/de-allocate physical storage
according to space utilization.
– Usage of infrastructure resources
– For networking resources:
will be recorded and then billing
• Monitor and record the network bandwidth
system will convert these
consumption for each virtual link.
information to user payment
• Automatically reroute the data path when
computation and storage are duplicated.
Performance and Optimization
What do performance and How to approach performance and
optimization mean? optimization?
– Physical resources should be – For computation resources:
highly utilized among different • Deploy virtual machine with load balancing
clients. consideration.
– Physical resources should form a • Live migrate virtual machines among physical
large resource pool which ones to balance the system loading.
provide high computing power – For storage resources:
through parallel processing. • Deploy virtual storage with hot spot access
– Virtual infrastructure resources consideration.
will be dynamically configured to • Live migrate virtual storage among physical
an optimized deployment among ones with different performance level.
physical resources – For networking resources:
• Consider network bandwidth loading when
deploying virtual machines and storage.
• Dynamically migrate virtual machines or
storage to balance network flow.
Accessibility and Portability
What do accessibility and How to approach accessibility and
portability mean? portability?
– Clients should be able to – For computation resources:
control, manage and access • Cloud provider integrates virtual machine
infrastructure resources in an management and access through web-based
easy way, such as the web- portal.
browser, without additional • Comply the virtual machine standard for
local software or hardware portability.
installation. – For storage resources:
– Provided infrastructure • Cloud provider integrates virtual storage
resources should be able to be management and access through web-based
reallocated or duplicated easily. portal.
– For networking resources:
• Cloud provider integrates virtual network
management and access through web-based
portal.
IaaS Architecture

• Infrastructure as a Service (IaaS) delivers computer infrastructure through


platform virtualization environment as a service.
• Virtualization is an enabling technique to provide an abstraction of logical
resources away from underlying physical resources.
Availability Zones & Regions
• Cloud providers build a hierarchy of infrastraurure resources to provide greater
availability and resiliency of resources
• This hierarchy maps various workloads to physical and virtual infrastructure
across geography.
• Cloud Region
• Geographically and physically separate group of one or more availability zones with
independent electrical and network infrastructure isolated from other regions.
• Regions are designed to remove shared single points of failure with other regions and
guarantee low inter-zone latency within the region.
• Availability Zone
• A logically and physically isolated location within a Cloud Region with separate
electrical, cooling, and network infrastructure isolated from other zones.
• Availability zones provide fault tolerance by avoiding single points of failure between
zones
• Availability zones guarantee high bandwidth and low inter-zone latency within a region
Availability Zones & Regions
Region
• Physical location where cloud services
are hosted
REGION • Consists of two or more Availability
Zones
Availability Availability
Zone 1 Zone 2 Availability Zone
• Consists of one or more discrete data
centers each with redundant power,
networking and connectivity, housed in
separate facilities
• Offers the ability to operate
Availability applications and database which are
Zone 3
more highly available and fault tolerant
than would be possible from a single
data center
• Connected via high efficiency, low
latency networks
Example: AWS Global Infrastructure
IaaS Advantages
• Pay-as-you-Go: Unlike traditional IT, IaaS does not require any upfront,
capital expenditures, and end users are only billed for what they use.
• Speed: With IaaS, users can provision small or vast amounts of resources in
a matter of minutes, testing new ideas quickly or scaling proven ones even
quicker.
• Availability: Through things like multizone regions, the availability and
resiliency of cloud applications can exceed traditional approaches.
• Scale: With seemingly limitless capacity and the ability to scale resources
either automatically or with some supervision, it’s simple to go from one
instance of an application or workload to many.
• Latency and performance: Given the broad geographic footprint of most
IaaS providers, it’s easy to put apps and services closers to your users,
reducing latency and improving performance.
Major IaaS Providers
• AWS
• Microsoft Azure
• Google Cloud Services (GCP)
• Alibaba
• Digital Ocean
• Rackspace
• IBM SmartCloud Enterprise
• HP Enterprise Converged Infrastructure
• Openstack
• Linode
Common IaaS Business Usage
• Testing and Development: IaaS makes it quick and economical to scale up
dev-test environments up and down.
• Website Hosting: Running websites using IaaS are less expensive than
traditional web hosting.
• Storage, Backup, and Recovery: IaaS is useful for handling unpredictable
demand and steadily growing storage needs. It can also simplify planning and
management of backup and recovery systems.
• Web Apps: Organizations can quickly deploy web apps on IaaS and easily
scale infrastructure up and down when demand for the apps is
unpredictable.
• High Performance Computing (HPC): HPC requires extremely large
computing power (supercomputers, computer grids, or computer clusters) to
solve complex problems involving millions of variables or calculations.
• Big Data Analysis: IaaS can provide the huge computing power required for
mining big data to identify hidden patterns.
Case Study: Spotify
• On-line music distribution company offering 16+ Mn songs in 30+ languages
• Had their own infrastructure but resulted in poor service as the infra could not keep
up with demand
• Issues were: running out of storage, poor response time, often broken connection etc
• Users started cancelling subscription
• Requirements:
• Users spread across Globe
• adding songs to catalog every day (old, new, to be released) – 20K a day
• Solution: Moving to AWS
• Dynamically increased storage
• Higher computing power as needed
• Better resource utilization
• Infrastructure across Globe
• Scalable resources
Case Study: Unilever
• Operations in 190 countries, Had local data centers.
• Heterogeneous environments, complex operations, expensive maintenance
and costly technology upgrades were major issues
• Application roll-out and Backup were in bad shape
• Requirement:
• Faster time to market
• Focus on digital marketing
• Standard IT environment
• Solution:
• Moved identified functions to AWS
• Faster provisioning on infrastructure
• Quicker roll-outs
• No technology upgrade worries
• Safe and secure backups/disaster recovery
Thank You

You might also like