Upload
ayaz-shahid
View
544
Download
1
Tags:
Embed Size (px)
DESCRIPTION
Citation preview
Overview Introduction The Cloud Ecosystem Virtualization Virtual Infrastructure Management Virtual Infrastructure Manager
(OpenNebula) Conclusion Question/Answer Session References
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
Introduction (cont..) Characteristics of Cloud model
› On-demand self-service› Broad Network Access› Resource pooling› Rapid elasticity› Measured services
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
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
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
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
Cloud Ecosystem (cont)
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
Virtualization (cont..) Types of Virtualization
1. Server Virtualization2. Storage Virtualization3. Network I/O 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
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
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
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
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
Virtualization (cont.) Network I/O virtualization (cont)
› Network bridging Network bridging is the first step in network
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
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
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
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
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
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
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
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
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
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
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
OpenNebula VI Engine Components
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.
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
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
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