socloud: distributed multi-cloud platform for deploying, executing and managing distributed applications



Similar documents
Easy Deployment of Mission-Critical Applications to the Cloud

Towards a Standard PaaS Implementation API: A Generic Cloud Persistent-Storage API

CHAPTER 8 CLOUD COMPUTING

Cloud Courses Description

Cloud Courses Description

CLOUD COMPUTING. When It's smarter to rent than to buy

Windows Azure and private cloud

White Paper. Cloud Native Advantage: Multi-Tenant, Shared Container PaaS. Version 1.1 (June 19, 2012)

Cloud Computing. Adam Barker

What Is It? Business Architecture Research Challenges Bibliography. Cloud Computing. Research Challenges Overview. Carlos Eduardo Moreira dos Santos

Cloud Computing An Introduction

Cloud Computing Submitted By : Fahim Ilyas ( ) Submitted To : Martin Johnson Submitted On: 31 st May, 2009

Offloading Cyber-Physical Tasks using Mobile Crowdsourcing

Service allocation in Cloud Environment: A Migration Approach

PLATFORM-AS-A-SERVICE: ADOPTION, STRATEGY, PLANNING AND IMPLEMENTATION

Introduction to Cloud Computing

Networks and Services

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

Cloud Computing Services and its Application

ABSTRACT. KEYWORDS: Cloud Computing, Load Balancing, Scheduling Algorithms, FCFS, Group-Based Scheduling Algorithm

OVERVIEW Cloud Deployment Services

Subash Krishnaswamy Applications Software Technology Corporation

Cloud Computing Technology

Cloud and Virtualization to Support Grid Infrastructures

Emerging Technology for the Next Decade

Service Component Architecture for Building Cloud Services

Amit Sheth & Ajith Ranabahu, Presented by Mohammad Hossein Danesh

CLOUD COMPUTING An Overview

Cloud Computing: Making the right choices

Session 3. the Cloud Stack, SaaS, PaaS, IaaS

Scale Cloud Across the Enterprise

Georgiana Macariu, Dana Petcu, CiprianCraciun, Silviu Panica, Marian Neagul eaustria Research Institute Timisoara, Romania

Datacenters and Cloud Computing. Jia Rao Assistant Professor in CS

Cloud Computing. Course: Designing and Implementing Service Oriented Business Processes

Planning the Migration of Enterprise Applications to the Cloud

Tales of Empirically Understanding and Providing Process Support for Migrating to Clouds

[Sudhagar*, 5(5): May, 2016] ISSN: Impact Factor: 3.785

An Introduction to Virtualization and Cloud Technologies to Support Grid Computing

Performance Management for Cloudbased STC 2012

Perspectives on Moving to the Cloud Paradigm and the Need for Standards. Peter Mell, Tim Grance NIST, Information Technology Laboratory

Oracle Applications and Cloud Computing - Future Direction

Evaluation Methodology of Converged Cloud Environments

Perspectives on Cloud Computing and Standards. Peter Mell, Tim Grance NIST, Information Technology Laboratory


IaaS Cloud Architectures: Virtualized Data Centers to Federated Cloud Infrastructures

Open Cloud System. (Integration of Eucalyptus, Hadoop and AppScale into deployment of University Private Cloud)

A Marketplace Broker for Platform-as-a-Service Portability

Cloud computing - Architecting in the cloud

Keywords: Cloudsim, MIPS, Gridlet, Virtual machine, Data center, Simulation, SaaS, PaaS, IaaS, VM. Introduction

<Insert Picture Here> Enterprise Cloud Computing: What, Why and How

A Study on the Cloud Computing Architecture, Service Models, Applications and Challenging Issues

APP DEVELOPMENT ON THE CLOUD MADE EASY WITH PAAS

How To Run A Cloud Computer System

How To Compare Cloud Computing To Cloud Platforms And Cloud Computing

Last time. Today. IaaS Providers. Amazon Web Services, overview

Cloud Computing Service Models, Types of Clouds and their Architectures, Challenges.

Consumption IT. Michael Shepherd Business Development Manager. Cisco Public Sector May 1 st 2014

Cloud Computing Architecture: A Survey

Geoff Raines Cloud Engineer

Fundamental Concepts and Models

1 What is Cloud Computing? Cloud Infrastructures OpenStack Amazon EC CAMF Cloud Application Management

CLEVER: a CLoud-Enabled Virtual EnviRonment

Understanding and Addressing Architectural Challenges of Cloud- Based Systems

CloudFTP: A free Storage Cloud

Dynamic Deployment and Scalability for the Cloud. Jerome Bernard Director, EMEA Operations Elastic Grid, LLC.

Performance Management for Cloud-based Applications STC 2012

OW2 Quarterly Meeting September 24-25, 2008

Seamless adaptive multi-cloud management of service-based applications

PaaS Cloud Migration Migration Process, Architecture Problems and Solutions. Claus Pahl and Huanhuan Xiong

An Oracle White Paper June Oracle Cloud Computing

DATA PORTABILITY AMONG PROVIDERS OF PLATFORM AS A SERVICE. Darko ANDROCEC

WHY SERVICE PROVIDERS NEED A CARRIER PaaS SOLUTION cpaas for Network

How To Understand Cloud Computing

Cloud Models and Platforms

Outlook. Corporate Research and Technologies, Munich, Germany. 20 th May 2010

Transcription:

socloud: distributed multi-cloud platform for deploying, executing and managing distributed applications Fawaz PARAISO PhD Defense Advisors: Lionel Seinturier, Philippe Merle University Lille 1, Inria, SPIRALS research team

Cloud computing in nutshell Virtualization On-demand Pay-per-use Elasticity 2

Context and motivation Application fil rouge Compute% View% Storage% Developer Go to the Cloud! 3

So many problems! Vendor Lock-in Geo-location Cloud-specific services Failures 4

solution: Multi-Cloud Do not put all your eggs in one basket Multi-Cloud Why not applying this precept of caution for cloud computing? 5

What is Multi-Cloud? Definition Multi-Cloud Computing using multiple cloud providers independent no agreement between providers 6

Multi-Cloud Context and motivation 74% Enterprises have a Multi-Cloud strategies 7

Towards Context Multi-Cloud and motivation Computing Multi-cloud is supposed to be the solution but 8

Outline 1.Context and motivation 2.Challenges 3.State of the art 4.Contributions 4.1.soCloud Model 4.2.soCloud Platform 5.Validation 6.Conclusion & Perspectives 9

Challenges Multi-cloud Portability Multi-cloud Provisioning Multi-cloud Elasticity Multi-cloud High-Availability 10

Challenges Multi-cloud Portability Multi-cloud Provisioning Multi-cloud Elasticity Multi-cloud High availability Write once, deploy anywhere " without any modification App App Your application/data App App App 11

Challenges Multi-cloud Portability Multi-cloud Provisioning Multi-cloud Elasticity Multi-cloud High availability Resources App Deployment 12

Challenges Multi-cloud Portability Multi-cloud Provisioning Multi-cloud Elasticity Multi-cloud High availability Provisioning Resources Provisioning Provisioning 13

Multi-cloud Portability Challenges Multi-cloud Provisioning App deployment Multi-cloud Elasticity Multi-cloud High availability 14

Challenges Multi-cloud Portability Multi-cloud Provisioning Multi-cloud Elasticity Multi-cloud High availability 15

Challenges Multi-cloud Portability Multi-cloud Provisioning Multi-cloud Elasticity Multi-cloud High availability HA 16

Challenges Multi-cloud Portability Multi-cloud Provisioning Multi-cloud Elasticity Multi-cloud High availability HA HA HA 17

Outline 1.Context and motivation 2.Challenges 3.State of the art 4.Contributions 4.1.soCloud Model 4.2.soCloud Platform 5.Validation 6.Conclusion & Perspectives 18

State of the art Approach Layer Multi-Cloud Portability Multi-Cloud Provisioning Multi-Cloud Elasticity Multi-Cloud High-Availability mosaic PaaS + + + - STRATOS IaaS - + + - MODAClouds PaaS + - - + CompatibleOne IaaS + + - + Cloud4SOA PaaS + + - - socloud PaaS + + + + 19

State of the art Approach Layer Multi-Cloud Portability Multi-Cloud Provisioning Multi-Cloud Elasticity Multi-Cloud High-Availability mosaic PaaS + + + - STRATOS IaaS - + + - MODAClouds PaaS + - - + CompatibleOne IaaS + + - + Cloud4SOA PaaS + + - - socloud PaaS + + + + 20

State of the art Approach Layer Multi-Cloud Portability Multi-Cloud Provisioning Multi-Cloud Elasticity Multi-Cloud High-Availability mosaic PaaS + + + - STRATOS IaaS - + + - MODAClouds PaaS + - - + CompatibleOne IaaS + + - + Cloud4SOA PaaS + + - - socloud PaaS + + + + + 21

State of the art Approach Layer Multi-Cloud Portability Multi-Cloud Provisioning Multi-Cloud Elasticity Multi-Cloud High-Availability mosaic PaaS + + + - STRATOS IaaS - + + - MODAClouds PaaS + - - + CompatibleOne IaaS + + - + Cloud4SOA PaaS + + - - socloud PaaS ++ ++ ++ ++ 22

Outline 1.Context and motivation 2.Challenges 3.State of the art 4.Contributions 4.1.soCloud Model 4.2.soCloud Platform 5.Validation 6.Conclusion & Perspectives 23

socloud Overview EC2 Developer distributed applications socloud Model socloud" Platform Azure Heroku 24

Outline 1.Context and motivation 2.Challenges 3.State of the art 4.Contributions 4.1.soCloud Model 4.2.soCloud Platform 5.Validation 6.Conclusion & Perspectives 25

Objectives Provides a model to design a distributed applications in a simple and concise manner for a Multi-Cloud environment 26

Features Identify requirements for engineering distributed application for the Multi-Cloud environments Multi-Cloud" Portability Abstraction" Standard" Structure Multi-Cloud" Provisioning Placement" Resources" Granularity Multi-Cloud" Elasticity DSL" Simple Multi-Cloud" High-availability Failures" Diversity 27

socloud Model Extended SCA Model 28

SCA Service Component Architecture (SCA) Set of OASIS specifications Distributed applications Using SOA Compute View Storage Legend Composite Service Property Component Reference Wire SCA Contribution ZIP File 29

30 socloud Model based on SCA Component( Property( Implementa/on( Reference( PolicyIntent( PolicySet( Opera/on( Interface( Interface.java( Binding( CallBack( Wire( ConstrainingType( Implementa/on.Contribu/on( +source( +target( +name( +autowire( +uri( +name( +name( +requires( +policysets( +name( +mul5plicity( +wirebyimpl( +conversa5onal( +callbackinterface( +interface( Interface.WSDL( +callbackinterface( +interface( +requires( +policysets( +name( +name( +mustsupply( +many( +value( +element( 0..*( 0..*( 0..*( 0..*( 0..*( 0..*( 0..*( 0..*( 0..*( 1..1( 0..*( 0..*( 0..*( 0..*( 0..*( 0..*( 1..*( 1..*( 1..*( 0..1( 1..*( 0..*( 0..*( requires( requires( requires( requires( target( policysets( policysets( policysets( +requires( +policysets( Composite( +name( +autowire( +targetnamespace( +local( 0..1( 0..1( Service( +name( +name( +value( Annota/on( Implementa/on.Composite( +name( Implementa/on.BPEL( +process( Implementa/on.C++( +class( Implementa/on.Java( +class( 0..*( +name& +value& Annota&on' Implementa)on.Contribu)on1 +name& Extension 2 Extension 1

socloud Model based on SCA Why extend SCA model? Annota&on' +name& Implementa)on.Contribu)on1 +name& +value& Extension 1 Extension 2 31

socloud Model: implementation Implementa)on.Contribu)on1 +name& Extension 1 Provides high level conceptual view to a component Allows the deployment of the component as execution unit component Structured components of distributed applications 32

socloud Model: annotations Annota&on' @ +name& component +value& Allowing to associate non-functional requirements to a component The SCA model does not allow us to take into account these non-functional requirements Extension 2 33

socloud Model: annotations Annotation +name +value Placement " annotation Execution " annotation Availability " annotation Elasticity " annotation location closer vm database replication elasticity service 34

socloud Model: annotations Annotation +name +value Placement " annotation Execution " annotation Availability" annotation Elasticity " annotation location closer vm database replication elasticity service 35

socloud Model: annotations Placement " annotation location closer 1@location = value " 2 @closer = value 36

socloud Model: annotations 1@location = value Clouds provider Any Amazon EC2 Windows Azure Africa America Asia Europe Oceania (1) South Africa New york California Singapour Amazon Irland Irland France Australia (2) Paris Roubaix (3) 37

socloud Model: annotations 2 @closer = value @closer = C2 C1 C2 Latency 38

socloud Model: annotations Annotation +name +value Placement " annotation Execution " annotation Availability " annotation Elasticity " annotation location closer vm database replication elasticity service 39

socloud Model: annotations Execution " annotation 1 @vm = type_vm " 2 @database = name -> version " 3 @service = name -> version vm database Example Optional service 1 @vm = micro " 2 @database = MySQL " 3 @service = IronMQ -> 2.8.9 40

socloud Model: annotations Annotation +name +value Placement " annotation Execution " annotation Availability " annotation Elasticity " annotation location closer vm database replication elasticity service 41

socloud Model: annotations 1 @replication = number Availability " annotation Example replication @replication=5 C become LB C 42

socloud Model: annotations Annotation +name +value Placement " annotation Execution " annotation Availability " annotation Elasticity " annotation location closer vm database replication elasticity service 43

socloud Model: annotations 1 @elasticity = description Elasticity " annotation C scale in scale out elasticity C A DSL for describing elasticity 44

socloud Model: elasticity language Event Action Condition scaling up when ( " average (cpuusage,120s) > 80%" ) minimize availability when (" totalcost(costcompute,24 h) > 900 )" ) Elasticity is expressed on the Resources, Cost, Quality 45

socloud Model: elasticity language Trigger scaling in 5 at ( 20:00 Friday) 46

socloud Model: annotations 3-Tiers Application @closer= Storage " @vm= xlarge->ubuntu @elasticity= Scaling in " When ( totalcost(computecost, 24 h) > 200 900 ) Compute " @database= MySQL @location= France " @location= France " View Storage 47

Summary We show how we use annotation to describe non-functional properties and manage each component as unit of execution New language is proposed to effectively express the elasticity Paraiso F, Merle P and Seinturier L : socloud : A service- oriented component-based PaaS for managing portability, provisioning, elasticity et high availability across multiple clouds. Springer Computing Journal (Submitted)! Haderer N, Paraiso F, Ribeiro C, Merle P, Rouvoy R and Seinturier L : A Cloud-based Infrastructure for Crowd-sourcing Data from Mobile Devices. Springer Book (To appear) 48

Outline 1.Context and motivation 2.Challenges 3.State of the art 4.Contributions 4.1.soCloud Model 4.2.soCloud Platform 5.Validation 6.Conclusion & Perspectives 49

socloud Platform The expectations in term of execution support for distributed applications built with socloud Model are differents We need to provide a Platform that manages: Multi-Cloud environments Distributed applications in Multi-Cloud environments 50

socloud Platform: concept We need to build Multi-Cloud Platform that: react to load > Scalable react to event > Event-Driven react to failure > Fault-Tolerance react to change > Responsive self management > Autonomic is flexible > Component-based Reactive, flexible and self management platform 51

socloud Platform socloud Platform is a distributed component-based PaaS for managing Portability Provisioning Elasticity High-availability 52 Components

socloud platform high level view User socloud " master socloud agent socloud applications 53

socloud Platform: Multi-Cloud centric Architecture Trend in the socloud Platform Architecture single Cloud centric Architecture Multi-Cloud centric Architecture socloud master socloud master socloud master socloud agent socloud agent socloud agent socloud agent 54

socloud Platform detail view Load Balancer socloud master Service " Deployer Constraint " Validator Controller Node Provisioning PaaS Deployment Workload " Manager SaaS Deployment Monitoring socloud agent 55

socloud Platform: Fault Tolerance Let it Crash Application level Platform level Replication in different clouds Replication in different clouds 56

socloud Platform: Fault Tolerance To achieve this 1. Transparency is the ultimate goal [Waldo et. al] " 2. Automatic component and applications replication [Waldo et. al] " 3. All replications are equal and deterministic [Waldo et. al] [Waldo et. al]-classic paper: A Note On Distributed Computing 57

socloud Platform: Replication features A cluster of N servers distributed across several Clouds" " Any (exactly one) component can be leader" " Active replication by the leader" " Consensus election of the leader " Automatic failover" " Automatic recovery 58

socloud Platform: deployment stack master agent socloud IaaS SCA container Servlet container Java runtime Linux/OS Resources 59

socloud Platform: deployment stack master SCA container agent socloud PaaS Servlet container 60

Summary Runtime support for managing Multi-Cloud portability, provisioning, elasticity and high-availability Reactive Platform PARAISO Fawaz et.al : A federated multi-cloud PaaS infrastructure. In IEEE 5th International Conference on Cloud Computing (CLOUD), pages 392 399., Hawaii IEEE, 2012." PARAISO Fawaz et al.: Managing elasticity across multiple cloud providers. In Proceedings of the 2013 international workshop on Multi-cloud applications and federated clouds, pages 53 60. ACM, 2013. 61

Outline 1.Context and motivation 2.Challenges 3.State of the art 4.Contributions 4.1.soCloud Model 4.2.soCloud Platform 5.Validation 6.Conclusion & Perspectives 62

Validation socloud Model socloud Platform 63

Validation: socloud Model Modeling of three concrete applications using the socloud Model 1. APISENSE application 2. DiCEPE application 3. P2P Monitoring application 64

Validation: socloud Model 1. APISENSE application [Nicolas Haderer] Create task Download sensing task Reward Publish task Subscribe task Sensing'Node' APISENSE' Central(Node( Subscribe task Publish task Sensing'Node' store data Sensing'Storage' Send data Send data Send data Send data 65

Validation: socloud Model Geo-location Paris Unpredictable growth of smartphones Availability despite failures Cost control 66

Validation: socloud Model <composite name="application-apisense"> <component name="sensingnode"> <implementation.contribution contribution="sensingnode.zip"/> <reference name="compute" target="centralnode/compute"/> <reference name="storage" target="sensingstorage/storage"/> <annotation name="location">paris</annotation> <annotation name="replication">2</annotation> <annotation name="elasticity"> scaling in when (totalcost(computecost, 24h) > 1000) </annotation> </component> </composite> 67

Summary The socloud Model has enabled us to build an App for collecting data from smartphones, an App to integrate heterogenous CEP Engines and make Big Data, and finally a P2P distributed App PARAISO Fawaz et.al : A federated multi-cloud PaaS infrastructure. In IEEE 5th International Conference on Cloud Computing (CLOUD), pages 392 399., Hawaii IEEE, 2012." PARAISO Fawaz et. al.: A Middleware Platform to Federate Complex Event Processing. In Sixteenth IEEE International EDOC Conference, pages 113 122, Beijing, China, septembre 2012. Springer. 68

Validation: socloud Platform 1. Portability 2. High-availability 3. Elasticity 4. Overhead introduced by socloud 69

Validation: socloud Platform Portability 70

Validation: socloud Platform Deployed on 10 Clouds IaaS and PaaS 71

Validation: socloud Platform High-availability 72

Validation: socloud Platform MTBF* Availability= MTBF + MTTR** [Marcus et. al.] MTBF* = Mean Time Between Failure MTTR** = Mean Time To Recover [Marcus et. al.] : Blueprints for High availability 73

Validation: socloud Platform MTTR* (Hour) MTTR (Minute) Ratio socloud 0.06 Hour 3.6 Minutes - Public clouds [IWGCR] 7.5 Hours 450 Minutes 125 MTTR* = Mean Time To Recover [IWGCR] = International Working Group on Cloud Computing Resiliency. http://iwgcr.org 74

Validation: socloud Platform If it is assumed that a failure occurs once per year MTBF = 8760 Hours socloud Availability 8760 8760 + 0.06 = 99.999% Public clouds 8760 8760 + 7.5 = 99.914% 75

Validation: socloud Platform Elasticity 76

Flash crowd effect 3-Tiers application was deployed on ten cloud providers 60000" Phase 1 Phase 2 50000" Number%of%requests% 40000" 30000" 20000" 10000" 0" 1" 11" 21" 31" 41" 51" 61" 71" 81" 91" 101" 111" 121" 131" 141" 151" 161" 171" 181" 191" Time%(slot"of"10"seconds)% (a)" Total Number of Request = 3020000 77

Flash crowd effect without socloud elasticity 4500" Number'of'failed'requests' 4000" 3500" 3000" 2500" 2000" 1500" 1000" 500" 0" 0" 20" 40" 60" 80" 100" 120" 140" 160" 180" 200" Time'(slot"of"10"seconds)' 1.3% of requests are failed that correspond to 34039 Response Time = 65.90 s 78

Flash crowd effect with socloud elasticity 70" 60" Response'(me'(s)' 50" 40" 30" 20" Applica(on'replica(on' Balance'load' 10" 0" 1" 11" 21" 31" 41" 51" 61" 71" 81" 91" 101" 111" 121" 131" 141" 151" 161" 171" 181" 191" Time'(slot"of"10"seconds)' No request has failed Without socloud elasticity, the Response Time = 65.90 s Response Time = 37.3 s Response Time = 23.38 s Phase 1 Phase 2 79

Overhead introduced by socloud APP APP Implementation Execution time Overhead introduced by socloud (Application + FraSCAti) 10.85 sec - (Application + FraSCAti + socloud) 11,10 sec 2.3% 80

Overhead introduced by socloud Implementation Execution time Overhead introduced by socloud (Application + FraSCati) 10.85 sec - (Application + FraSCati + socloud) 11,10 sec 2.3% The benefit provided by the socloud Platform outweighs the difference in the execution time 81

Summary Reactivity face: Failures (High-availability) Flash crowd effect (Elasticity) Negligible Overhead introduced. 82

Outline 1.Context and motivation 2.Challenges 3.State of the art 4.Contributions 4.1.soCloud Model 4.2.soCloud Platform 5.Validation 6.Conclusion & Perspectives 83

Conclusion socloud Model We use annotations to express non-functional requirements. New language is proposed to effectively express the elasticity. The socloud Model is illustrated on three distributed applications deployed in Multi-Cloud environments. socloud Platform Multi-Cloud PaaS for deploying, executing and managing distributed application. It was deployed on ten IaaS/PaaS clouds providers. socloud Platform is capable of providing Multi-Cloud high-availability and elasticity to applications deployed on it. 84

Perspectives Short-term further work The high-availability management despite software bugs. The elasticity management using reinforcement learning. Further Research Directions Security for Multi-Cloud. Sharing state between replicates. Take into account changes of the underlying platforms. 85

Thank you!!! PARAISO Fawaz, HADERER Nicolas, MERLE Philippe, ROUVOY Romain and SEINTURIER Lionel : A federated multi-cloud PaaS infrastructure. In IEEE 5th International Conference on Cloud Computing (CLOUD), pages 392 399. IEEE, 2012." PARAISO Fawaz, HERMOSILLO Gabriel, ROUVOY Romain, MERLE Philippe, SEINTURIER Lionel : A Middleware Platform to Federate Complex Event Processing. In Sixteenth IEEE International EDOC Conference, pages 113 122, Beijing, China, septembre 2012. Springer. " PARAISO Fawaz, MERLE Philippe and SEINTURIER Lionel : Managing elasticity across multiple cloud providers. In Proceedings of the 2013 international workshop on Multi-cloud applications and federated clouds, pages 53 60. ACM, 2013." PARAISO Fawaz, MERLE Philippe and SEINTURIER Lionel : socloud : A service- oriented component-based PaaS for managing portability, provisioning, elasticity et high availability across multiple clouds. Springer Computing Journal (To appear)! HADERER Nicolas, PARAISO Fawaz, RIBEIRO Christophe, MERLE Philippe, ROUVOY Romain and SEINTURIER Lionel : A Cloud-based Infrastructure for Crowd-sourcing Data from Mobile Devices. Springer Review (To appear) 86