Infrastructure as a Service (IaaS)



Similar documents
IaaS Cloud Architectures: Virtualized Data Centers to Federated Cloud Infrastructures

How To Compare Cloud Computing To Cloud Platforms And Cloud Computing

How To Understand Cloud Computing

Virtualization Technologies (ENCS 691K Chapter 3)

FREE AND OPEN SOURCE SOFTWARE FOR CLOUD COMPUTING SERENA SPINOSO FULVIO VALENZA

Chapter 2 Addendum (More on Virtualization)

Introduction to OpenStack

Software as a Service (SaaS) and Platform as a Service (PaaS) (ENCS 691K Chapter 1)

Keywords Distributed Computing, On Demand Resources, Cloud Computing, Virtualization, Server Consolidation, Load Balancing

CLOUD COMPUTING. Virtual Machines Provisioning and Migration Services Mohamed El-Refaey

Sistemi Operativi e Reti. Cloud Computing

Using SUSE Cloud to Orchestrate Multiple Hypervisors and Storage at ADP

CS 695 Topics in Virtualization and Cloud Computing. Introduction

CS 695 Topics in Virtualization and Cloud Computing and Storage Systems. Introduction

OpenStack Alberto Molina Coballes

INCREASING SERVER UTILIZATION AND ACHIEVING GREEN COMPUTING IN CLOUD

Virtual Machine Management with OpenNebula in the RESERVOIR project

CLOUD COMPUTING. Virtual Machines Provisioning and Migration Services Mohamed El-Refaey

OpenStack Introduction. November 4, 2015

Migration of Virtual Machines for Better Performance in Cloud Computing Environment

An Experimental Study of Load Balancing of OpenNebula Open-Source Cloud Computing Platform

OpenNebula An Innovative Open Source Toolkit for Building Cloud Solutions

Li Sheng. Nowadays, with the booming development of network-based computing, more and more

OpenStack IaaS. Rhys Oxenham OSEC.pl BarCamp, Warsaw, Poland November 2013

A Survey Paper: Cloud Computing and Virtual Machine Migration

How an Open Source Cloud Will Help Keep Your Cloud Strategy Options Open

HP OpenStack & Automation

Open Source Cloud Computing: Characteristics and an Overview

Multi Provider Cloud. Srinivasa Acharya, Engineering Manager, Hewlett-Packard

Mobile Cloud Computing T Open Source IaaS

CPET 581 Cloud Computing: Technologies and Enterprise IT Strategies. Virtualization of Clusters and Data Centers

KVM, OpenStack, and the Open Cloud

Cloud Models and Platforms

Dynamic Load Balancing of Virtual Machines using QEMU-KVM

Comparing Ganeti to other Private Cloud Platforms. Lance Albertson

cloud functionality: advantages and Disadvantages

Auto-Scaling Model for Cloud Computing System

How To Build A Cloud Stack For A University Project

Design and Implementation of IaaS platform based on tool migration Wei Ding

CLOUD COMPUTING & SECURITY -A PRACTICAL APPROACH

DESIGN OF A PLATFORM OF VIRTUAL SERVICE CONTAINERS FOR SERVICE ORIENTED CLOUD COMPUTING. Carlos de Alfonso Andrés García Vicente Hernández

VM Management for Green Data Centres with the OpenNebula Virtual Infrastructure Engine

Efficient Cloud Management for Parallel Data Processing In Private Cloud

The OpenNebula Standard-based Open -source Toolkit to Build Cloud Infrastructures

Virtualization for Cloud Computing

An Introduction to Virtualization and Cloud Technologies to Support Grid Computing

IOS110. Virtualization 5/27/2014 1

Enhancing the Scalability of Virtual Machines in Cloud

Large Construction of a Cloud IaaS with Dynamic Resource Allocation Method Using OpenStack

2) Xen Hypervisor 3) UEC

OpenNebula Leading Innovation in Cloud Computing Management

Enabling Technologies for Distributed and Cloud Computing

Iaas for Private and Public Cloud using Openstack

Understand IBM Cloud Manager V4.2 for IBM z Systems

Cloud and Virtualization to Support Grid Infrastructures

Distributed and Cloud Computing

From Grid Computing to Cloud Computing & Security Issues in Cloud Computing

Cloud Essentials for Architects using OpenStack

Comparing Open Source Private Cloud (IaaS) Platforms

Dynamic Resource management with VM layer and Resource prediction algorithms in Cloud Architecture

AN IMPLEMENTATION OF E- LEARNING SYSTEM IN PRIVATE CLOUD

Energy Constrained Resource Scheduling for Cloud Environment

An Intro to OpenStack. Ian Lawson Senior Solution Architect, Red Hat

SUSE Cloud 5 Private Cloud based on OpenStack

How To Make A Cloud Work For You

OpenStack The State of the Stack

Enabling Technologies for Distributed Computing

KVM, OpenStack, and the Open Cloud

Effective Resource Allocation For Dynamic Workload In Virtual Machines Using Cloud Computing

Group Based Load Balancing Algorithm in Cloud Computing Virtualization

Two-Level Cooperation in Autonomic Cloud Resource Management

Research of Enterprise Private Cloud Computing Platform Based on OpenStack. Abstract

Learn How to Leverage System z in Your Cloud

Dynamic Resource allocation in Cloud

Efficient Resources Allocation and Reduce Energy Using Virtual Machines for Cloud Environment

Xen Live Migration. Networks and Distributed Systems Seminar, 24 April Matúš Harvan Xen Live Migration 1

Introducing Red Hat Enterprise Linux. Packaging. Joe Yu. Solution Architect, Red Hat

Grid Computing Vs. Cloud Computing

Change the Game with HP Helion

Eucalyptus: An Open-source Infrastructure for Cloud Computing. Rich Wolski Eucalyptus Systems Inc.

CHAPTER 8 CLOUD COMPUTING

Ubuntu OpenStack on VMware vsphere: A reference architecture for deploying OpenStack while limiting changes to existing infrastructure

A Dynamic Resource Management with Energy Saving Mechanism for Supporting Cloud Computing

The path to the cloud training

A Complete Open Cloud Storage, Virt, IaaS, PaaS. Dave Neary Open Source and Standards, Red Hat

Software Define Storage (SDs) and its application to an Openstack Software Defined Infrastructure (SDi) implementation

Exploring Resource Provisioning Cost Models in Cloud Computing

Scheduler in Cloud Computing using Open Source Technologies

21/09/11. Introduction to Cloud Computing. First: do not be scared! Request for contributors. ToDO list. Revision history

Cloud deployment model and cost analysis in Multicloud

Transcription:

Infrastructure as a Service (IaaS) (ENCS 691K Chapter 4) Roch Glitho, PhD Associate Professor and Canada Research Chair My URL - http://users.encs.concordia.ca/~glitho/

References 1. R. Moreno et al., Key Challenges in Cloud Computing: Enabling the Future Internet of Services, IEEE Internet Computing, July/August 2013 2. D. Nurmi et al., The Eucalyptus Open-source Cloud Computing System, 9 th IEEE/ACM International Symposium on Cluster Computing and the Grid, 2009 3. 3. B. Sotomayor et al., Virtual Infrastructure Management in Private and Hybrid Clouds, IEEE Internet Computing, September/October 2009 4. M. Mishra et al., Dynamic Resource Management Using Virtual Machine Migrations, IEEE Communications Magazine, September 2012 5. C. Clark et al., Live Migration of Virtual Machines, Proc. 2nd Conf. Symp. Networked Systems Design & Implementation, vol. 2, USENIX Association, 2005, pp. 273 86. 6. P. Barham et al., Xen and the Art of Virtualization, Proceeding SOSP '03 Proceedings of the nineteenth ACM symposium on Operating systems principles, Pages 164-177 7. T. Rosado and J. Bernardino, An Overview of Openstack, Proceeding IDEAS '14 Proceedings of the 18th International Database Engineering & Applications Symposium

IaaS Introduction Definitions and layers Challenges Resource Management Case Studies

Introduction

Introduction Infrastructure as a Service (IaaS): immersed part II: Infrastructure provider perspective)

Introduction Infrastructure as a Service (IaaS): immersed part II: Infrastructure provider perspective) Virtualized resources (CPU, memory, storage and eventually service substrates) used (on a pay per use basis) by applications Examples IBM Blue Cloud Amazon EC2

Definitions and layered view

Definition An IaaS cloud enables on-demand provisioning of computational resources in the forms of virtual machines (VMs) deployed in a cloud provider data centres (such as Amazon s minimizing or even eliminating associated capital cost for cloud consumers.. Reference 1

Definition Systems that give users the ability to run and control entire virtual machine instances deployed across a variety of physical resources Reference 2

Layering (a) - Cloud consumers Iaas consumers (e.g. PaaS, other clouds) (b) - Cloud management layer Overall IaaS management Interface with cloud consumers

Layering (c) - Virtual infrastructure management layer - Functionality includes: Provides uniform / homogeneous view of virtualized resources Virtualization platform independent Handles VM life cycle Handle addition / failure of physical resources Server consolidation, high availability (d) - Virtual machine management layer (i.e. hypervisors)

Layers (Reference 3)

Challenges

IaaS Challenges (Ref. 1)

Examples of IaaS services Computing Storage Networking (Virtual) sensor/robot that can carry out given task(s)

Single IaaS providers Dynamic service provisioning Dynamic mapping of services onto resources via environment (e.g. virtualization platform, software library) independent interfaces Require advanced SOA interfaces

Single IaaS providers QoS and SLA negotiation Require expressive mechanisms for QoS and SLA negotiation Note: There are several negotiation mechanisms (e.g. offer / response. Offer/counter offer )

Single IaaS providers Service scalability Service elasticity Service monitoring, billing and payment Context / situation awareness Geographic restrictions Service deployed close to a group of users Legal restrictions

Aggregating IaaS providers Service deployment across different providers Hybrid clouds Cloud brokering Allow consumer to select most appropriate IaaS providers Publication / discovery

Aggregating IaaS providers Interoperability Portability

Non functional challenges Security Availability, reliability and resilience Energy efficiency

Resource Management

Resource Management 1 - The problem 2 VM migration (One of the techniques for tackling the problem) 3 - On VM Migration based algorithms for IaaS

Resource management problem On virtual machine life cycle Determine expected resources needed at deployment Configure VM Decide where to place it Start VM Track resource usage Hot spot: Inadequate resource to meet performance Cold spot: Overprovisioned resources Note: Resource usage pattern is highly dependent on applications types

Resource management problem Overall problem Minimized resource utilization while meeting IaaS users performance requirements

Resource management problem How could it be solved? Server consolidation Avoid cold spots on physical machines Load balancing Avoid discrepancy in resource usage on the different physical machines Hot spot mitigation Avoid conditions where a VM does not have enough resource to meet the performance requirements

Resource management problem How could it be solved (Reference 4)?

Resource management problem How could it be solved? Complementary / non mutually exclusive techniques VM reconfiguration Add / reduce resources New VM instantiations VM migration

On Virtual Machine Migration VM Migration Process of transferring a VM with its state from one physical machine to another Program transfer from one machine to another machine is not new, e.g. Mobile agents (Late 90s, early 200s): Program than can start execution in a physical machine, suspend execution, then move to another machine to resume execution, then move again if necessay

On Virtual Machine Migration VM Migration Techniques Suspend and copy Suspend a VM execution, copy state (memory + processor), then resume execution on target machine Downtime proportional to VM size and network bandwidth available for transfer

On Virtual Machine Migration VM Migration Techniques Live migration (Pre-copy and post copy) Minimize down time by either pre-copying or post copying state

On Virtual Machine Migration VM Migration Techniques Live migration (Pre-copy) Traditional Pre-copy iteratively memory state to a set threshold (or until a condition is met) while still executing on host machine Execution is suspended, processor state and remaining memory state are copied, and VM is restarted on target machine

On Virtual Machine Migration (Ref.5)

On Virtual Machine Migration VM Migration Techniques Live migration (Post-copy) Non traditional Pre-copy iteratively memory state to a set threshold (or until a condition is met, e.g. small writable working set) while still executing on host machine Execution is suspended, processor state and remaining memory state are copied, and VM is restarted on target machine

On Virtual Machine Migration VM Migration Techniques Post copy (Newer technique) Start by copying processor state, then resume execution on target machine Actively pushes memory state to target machine

Goals Virtual Machine Migration Based Algorithms Consolidation Load balancing Hot spot mitigation

Virtual Machine Migration Based Algorithms Questions When to migrate? Which VM to migrate? Where to migrate the VM?

Virtual Machine Migration Based Algorithms Examples of constraints Migration process overhead Impact on applications Degree of improvements in intended goals

Virtual Machine Migration Based Algorithms When to migrate? Periodically, e.g. data centres in several time zones Hot spot Excessive spare capacity under-utilized VM migrated to free servers VM migrated from overloaded servers Load imbalance Addition / removal of physical server

Virtual Machine Migration Based Algorithms Which VM to migrate? overloaded VMs Holistic approach The overloaded VM is not always the best choice (Time for migrating it might be too high A less overloaded VM might be considered) Affinity based If 2 VMs are communicating, it might not make sense to move one and let the other due to delays

Virtual Machine Migration Based Algorithms Where to migrate? Available resource capacity Affinity

Case Studies

Case studies Case study 1: XEN (VM Management solution) Case study 2: OpenNebula (Virtual Infrastructure Management solution) Case study 3: Eucalyptus ( Cloud Management solution) Case study 4: Openstack (cloud management solution)

IaaS Layers

XEN

Design goals Unmodified application binaries Multi application operating systems Para-virtualization (instead of binary translations)

Architecture (Ref. 6)

OpenNebula (Ref. 3)

On Virtual Infrastructure Solutions Objectives: Real resource + VM managers independence.orchestration Examples: OpenNebula, VMWare Vsphere Note: VMWare vsphere is an infrastructure manager but manages only Vmware infrastructure

OpenNebula 1. Interfaces: Programmatic (Web services) and non programmatic 2. Orchestration OpenNebula core Orchestration of virtualization, storage, network, resource from external cloud Can related VMs as group (web server and data base back end) Scheduler VM placement

OpenNebula 3. Drivers Interactions with specific VMs, storage, external clouds 4. Local infrastructure + external cloud

OpenNebula

Eucalyptus (Ref. 2)

On Cloud Management Solutions Highest level of abstraction towards consumers (e.g. Paas) Monolithic blocks integrating virtual infrastructure managers in most cases, with no clean interfaces

Eucalyptus Cloud manager Entry point (Programmatic interfaces WS and non programmatic interfaces High level orchestration (e.g. scheduling) decisions and relies on cluster controllers Consists of: Storage controller (Amazon S3 interface) Cloud controller Cluster controllers Orchestrates group of nodes Node controllers VM life cycle management

Eucalyptus

Openstack (Ref. 2)

On Cloud Management Solutions Highest level of abstraction towards consumers (e.g. Paas) Monolithic blocks integrating virtual infrastructure managers in most cases No clean interface with virtual infrastructure managers

Openstack (A non comprehensive view Reference 7)

Openstack Open source combination of related software projects, with a subset shown on previous figure: Some examples Computing Nova Independence of specific VMs (e.g. XEN, KVM, VMWare) Glance Image service Networking Neutron

Openstack Storing Swift Highly available distributed object store Cinder Persistent block storage VM back up by working with Swift

Openstack Shared services Ceilometer metering Keystone Identity management Horizon User interface for cloud infrastructure management

Openstack Examples of services which do not appear on the figure Orchestration Heat Bare metal provisioning Ironic Note: Bare metal provisioning in Openstack world means giving access to the bare hardware with no hypervisor No virtualization Single tenant!!!» Might be useful in cloud environment if one wishes to use a specific specialized piece of hardware dedicated to a single tenant

A The End.