cloud computing virtualization

33
Cloud Computing Virtualization Presented by: Ayaz Shahid [email protected]

Upload: ayaz-shahid

Post on 03-Nov-2014

544 views

Category:

Education


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Cloud computing virtualization

Cloud Computing Virtualization

Presented by:Ayaz Shahid

[email protected]

Page 2: Cloud computing virtualization

Overview Introduction The Cloud Ecosystem Virtualization Virtual Infrastructure Management Virtual Infrastructure Manager

(OpenNebula) Conclusion Question/Answer Session References

Page 3: Cloud computing virtualization

Introduction What is cloud computing?

In General,› A simple metaphor for the internet, based on the symbol

used to represent the worlwide network in computer network diagrams

In technical terms› 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 effort or service provider interaction.[*]

* The NIST Definition of Cloud Computing by Peter Mell, Timothy Grance, Sep 2011

Page 4: Cloud computing virtualization

Introduction (cont..) Characteristics of Cloud model

› On-demand self-service› Broad Network Access› Resource pooling› Rapid elasticity› Measured services

Page 5: Cloud computing virtualization

Introduction (cont..) Architectural Layers of Cloud Computing

› Software as a service (SaaS) Offers a complete application as a service on demand A single instance of software runs on cloud and provides

service to multiple end users or organizations Examples are Google apps, salesforce.com etc.

› Platform as a service (PaaS) Encapsulates a layer of software and provides it as service

which is used to build higher-level services Consumers creates the software using tools and libraries

from the provider Consumer controls deployment and configuration settings Provider provides networks, servers and storage Example, Google Apps Engine

Page 6: Cloud computing virtualization

Introduction (cont..) Architectural Layers of Cloud Computing (cont)

› Infrastructure as a service (IaaS) Most basic cloud service model Provider provides computers (physical or a virtual

machine), storage, firewalls, and networks Provider provides these facilities on demand Consumer is responsible for maintaining

application software and operating system Cloud provider bill the consumer on the basis of

amount of resources allocated and consumed

Page 7: Cloud computing virtualization

Introduction (cont..) Cloud Computing Infrastructure Model

› Public Clouds Run by third parties Resources like applications and storage is available to

general public over internet for free or on a pay-per-usage model

› Private Clouds Build for exclusive use of one client Provides utmost control over data, security and QoS Provides access to external resources through web services

› Hybrid Clouds Hybrid cloud uses local infrastructure with cloud computing

capacity from public cloud

Page 8: Cloud computing virtualization

Cloud Ecosystem Cloud ecosystem consists of :

1. Cloud Consumers2. Cloud Management

Used for controlling and monitoring of virtualized resources

Contains cloud toolkits like, Amazon EC2, Globus Nimbus and Eucalyptus

3. Virtual Infrastructure Management Used for schedule and manage virtual machines across

multiple hosts It contains tools like OpenNebula, Vmware vSphere for

infrastructure management4. Virtual Machine Manager

Xen, KVM, Vmware etc

Page 9: Cloud computing virtualization

Cloud Ecosystem (cont)

Page 10: Cloud computing virtualization

Virtualization What is virtualization?

› Virtualization is the creation of virtual (instead of actual ) version of something, such as an operating system, a server, a storage device or network resources.[*]

* Definition from whatis.com

Page 11: Cloud computing virtualization

Virtualization (cont..) Types of Virtualization

1. Server Virtualization2. Storage Virtualization3. Network I/O virtualization

Page 12: Cloud computing virtualization

Virtualization (cont) Server Virtualization

› There are three popular approaches to server virtualization1. Virtual Machine Model

Based on host/guest pradigm Each guest runs on a virtual imitation of hardware

layer Guest operating systems runs without modification Guest requires real computing resources therefore

it uses a virtual machine monitor (VMM) to coordinate instructions to cpu

Examples are VMware and Microsoft Virtual server

Page 13: Cloud computing virtualization

Virtualization (cont) Server Virtualization (cont)

2. Paravirtual machine Model Based on host/guest model Uses VMM VMM can access and modify the guest operating

system code. This modification is called Porting Paravirtual machines are capable of running

multiple operating systems Examples are, Xen and UML

Page 14: Cloud computing virtualization

Virtualization (cont) Server Virtualization (cont)

3. Virtualization at operating system layer Host runs a single OS kernel as its core and

exports operating system functionality to each of the guest

Guest must use the same operating system as the host

Different distributions of same system are allowed

Common binaries and libraries of host are shared in this model, allowing thousands of guest to host at the same time

Examples are, OpenVZ and Linux-Vserver

Page 15: Cloud computing virtualization

Virtualization (cont) Storage Virtualization

› Pooling of physical storage from multiple network storage devices into single storage device

› Storage pool is managed from a central console

› Used in Storage Area Network (SAN)› Storage virtualization helps in backup,

archiving and recovery more easily and in less time

Page 16: Cloud computing virtualization

Virtualization (cont.) Network I/O Virtualization

› Virtual machines are logical computing entities on a physical computers

› VMs are realized on top of virtualization software layer that presents abstraction of the underlying physical resources

› Network I/O virtualization provides multiple VMs to share common bandwidth and network links

Page 17: Cloud computing virtualization

Virtualization (cont.) Network I/O virtualization (cont)

› Network bridging Network bridging is the first step in network

virtualization

Page 18: Cloud computing virtualization

Virtualization (cont.) Network I/O virtualization (cont)

› To address the complexity and performance issues following hardware and software oriented approaches are used1. NIC Bonding

2. Virtual Machine Device Queues (VMDq)3. Single Root I/O Virtualization (SR-IOV)

Software oriented

Hardware oriented

Page 19: Cloud computing virtualization

Virtualization (cont.) Network I/O virtualization (cont)

› Nic Bonding Software oriented approach It groups multiple physical network links and provide the Network bandwidth as an aggregate logic to the VMs

Page 20: Cloud computing virtualization

Virtualization (cont.) Network I/O virtualization (cont)

› Virtual Machine Device Queues (VMDq) Hardware oriented approach It is implemented at chipset level VMDq handles parallel queues of packets

and routes them to appropriate VM Network throughput can reach up to 9.5Gbps

compared to 4Gbps without VMDq

Page 21: Cloud computing virtualization

Virtualization (cont) Network I/O Virtualization (cont)

› Single Root I/O Virtualization (SR-IOV) It is a feature of Peripheral component

Interconnect (PCI) Multiple VMs running on a single computer

can share natively a single PCI device This feature helps reducing overheads in

resource sharing and overheads in controlling network I/O virtualization

Page 22: Cloud computing virtualization

Virtualization (cont.) Network I/O Virtualization

› Challenges1. Each host has hundreds of VMs and VNICs

which increases complexity and management of each host

2. Complexity of packet multiplexing. 3. The ever increasing line rate. A line rate of

10Gbps or more at host is expected which can add workload at the host cpu

Page 23: Cloud computing virtualization

Virtualization (cont) Network I/O virtualization (cont)

› Virtual Switching with Intelligent NICs Each NIC has its own packet processor Offloads the processing work from CPU

Page 24: Cloud computing virtualization

Virtual Infrastructure Management

Provide a uniform and homogenous view of virtualized resources, regardless of virtualization platform

Manage VMs lifecycle Setting up networks dynamically for group of

VMs Managing storage requirements Support resource allocation to meet

organization’s specific goals Adapt to organization’s changing resource

needs

Page 25: Cloud computing virtualization

Virtual Infrastructure Managers

OpenNebula› To control VM’s life cycle, the OpenNebula

core orchestrates three different management areas:1. Image and storage technologies

Virtual tools for preparing disk images for VMs2. The network fabric

DHCP servers, firewalls and switches3. Underlying hypervisors

For creating and controlling VMs

Page 26: Cloud computing virtualization

Virtual Infrastructure Manager (cont)

OpenNebula (cont)› The OpenNebula core also supports service

deployment Services typically include set of interrelated

components requiring several VMs

› The core handles the delivery of context information Web server’s IP address, digital certificates

and software licenses

Page 27: Cloud computing virtualization

Virtual Infrastructure Manager (cont)

OpenNebula (cont)› A separate scheduler component makes VM

placement decisions Creating and updating resource schedule and

sending appropriate deployment command to OpenNebula core

The default scheduler provides a rank scheduling policy that places VMs on physical resources according to ranking algorithm that the administrator can configure

It relies on real time data from both the running VMs and available physical resources

Page 28: Cloud computing virtualization

Virtual Infrastructure Manager (cont)

OpenNebula (cont)› OpenNebula can support a hybrid cloud

model Uses cloud drivers to interface with external

clouds It helps organizations supplement the local

infrastructure with computing capacity from public cloud to meet peak demands

Includes EC2 driver which can submit requests to Amazon EC2 and Eucalyptus and also includes ElasticHosts driver

Page 29: Cloud computing virtualization

OpenNebula VI Engine Components

Page 30: Cloud computing virtualization

Virtual Infrastructure Manager (cont)

The Haizea lease Manager› Open source resource lease manager› Can act as a VM scheduler for OpenNebula› Simulator to evaluate different scheduling strategies

performance over time› Haizea provides resources to users on lease terms› Haizea supports advance reservation lease in which

resources must be available at a specific time› Best effort lease in which resources are allocated as

soon as possible› Immediate lease in which resources are provisioned

when requested.

Page 31: Cloud computing virtualization

Tool Provisioning Model

Default Placement Policies Configurable Placement Policies

Support For hybrid Cloud Remote Interfaces

Amazon EC2

Best Effort Proprietary Proprietary No EC2 Web services API

VMware vSphere

Immediate Initial placement on CPU load and dynamic placement to balance average CPU or memory load and consolidate servers

No Only when both the local and external cloud use vSphere

vCloud API

OpenNebula 1.2

Best-effort Initial placement based on requirement/rank policies to prioritize those resources more suitable for the virtual machine (VM) using dynamic information and dynamic placement to consolidate servers

Support for any static/dynamic placement policy

Driver-based architecture allows interfacing with multiple external clouds; supports EC2-compatible clouds and ElasticHosts

No

OpenNebula 1.2/ Haizea

Immediate, best-effort, and advance reservation (AR)

Dynamic placement to implement AR leases

VM placement strategies supporting queues and priorities

Driver-based architecture allows interfacing with multiple external clouds; supports EC2-compatible clouds and ElasticHosts

No

Comparison of tools providing VIM capabilities

Page 32: Cloud computing virtualization

Conclusion As private and hybrid IaaS clouds grows,

the need for a diverse ecosystem of tools and technologies to create and manage clouds also grows

Private and hybrid clouds will also face the challenge of efficiently managing finite resources

Virtualization leads to better resource utilization

Increase performance

Page 33: Cloud computing virtualization

References Network I/O virtualization for cloud computing, by Yan Lou,

University of Massachusetts Lowell

Virtual Infrastructure Management in Private and Hybrid Clouds, by Borja Sotomayor, Unv. Of Chicago, Ruben S. Montero and Ignacio M.Liorente, Universidad Complutense de Madrid and Ian Foster, Argonne National laboratory, Unv. Of Chicago

Introduction to Cloud Computing Architecture, white paper, 1st Edition, June 2009, by Sun Microsystem

NIST definition of Cloud Computing by Peter Mell and Timothy Grance, September 2011