SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Software Architecture Definition for
On-Demand Cloud provisioning

            Clovis Chapman, Wolfgang Emmerich, FermĂ­n
            GalĂĄn Marquez, Stuart Clayman, Alex Galis
            University College London
            Telefonica I+D
 The research leading to these results has been partially funded by the European
 Community's Seventh Framework Programme (FP7/2007-2013) under grant agreement n° 215605.
Overview


      Problem overview
      Background: Resources And Service Virtualization Without Barriers
      Approach: Software architecture definition
      Evaluation




Software Architecture Definition for On-demand Cloud Provisioning
Problem overview

 Clouds introduce opportunity to lease computational resources on
  demand:
    – Manage the execution of service applications across multiple physical
      locations in a seamless manner
    – Virtualisation allow a wide range of new capabilities (migration, on demand
      allocation, dynamic resizing)

 Software systems hosted on clouds may be composed of numerous
  loosely coupled components:
    – Application may present architectural constraints, co-dependencies between
      components.
    – Providers must be able to define software composition and requirements
      related to the provisioning of the service.




Software Architecture Definition for On-demand Cloud Provisioning
Example: SAP ERP System


Presentation
                  SAP GUI
                 SAP GUI            SAP GUI
                                    Browser                 Three tier architecture:

                                                               Database (DBMS)
                                                               Central Instance (CI)
                                                                    – Enqueue server
                                                                      providing a high level
                 DI
                 DI           CI           DI
                                           DI
 Application                                                          locking mechanism
                                                                      (data consistency)
                                                                    – Messaging server for
                                                                      load balancing
                                                               Dialog Instance
                                                                    – User request processing
                            DBMS
 Database                                                           – Data record updates
                                                                    – Batch processing




Software Architecture Definition for On-demand Cloud Provisioning
Example: SAP ERP System

                  SAP GUI
                 SAP GUI            SAP GUI
                                    Browser
Presentation

                                                               Software composition: Individual
                                                               components may have different
                                                               software and hardware
                                                               requirements:

                                                               - DBMS: large storage requirements
 Application     DI
                 DI           CI           DI
                                           DI                  - DI: Processor intensive

                                                               Topology: All components must
                                                               belong to the same virtual network.

                                                               Customization: Locations must be
                                                               provided at run-time.
                            DBMS
 Database




Software Architecture Definition for On-demand Cloud Provisioning
Example: SAP ERP System

                  SAP GUI
                 SAP GUI            SAP GUI
                                    Browser
Presentation




 Application     DI
                 DI           CI           DI
                                           DI
                                                            Deployment dependencies: DBMS
                                                            and CI must be run first.

                                                            Location constraints: Must be co-
                                                            located on the same physical site to
                                                            minimise latency
                            DBMS
 Database




Software Architecture Definition for On-demand Cloud Provisioning
Example: SAP ERP System

                  SAP GUI
                 SAP GUI            SAP GUI
                                    Browser
Presentation




 Application     DI
                 DI           CI           DI
                                           DI            DI             DI




                            DBMS
 Database                                             Dynamic capacity adjustment: Might
                                                      require new DIs to meet increases in
                                                      workload.

                                                      Resource requirements directly proportional
                                                      to concurrent sessions.




Software Architecture Definition for On-demand Cloud Provisioning
Example 2: Thales eGov




   Dynamic capacity adjustment:
   Each layer invoked to process user
   requests.

   Each scale independently
   according to load and average
   response time.




Software Architecture Definition for On-demand Cloud Provisioning
Focus of this work

    Define a software architecture definition language:
        – Enable service providers to control the deployment and management of
          services deployed on Clouds throughout their lifetime.
        – Introduce abstractions to support capabilities introduced by cloud
          computing (e.g. service elasticity)

    Define underlying service management infrastructure support:
        – Monitoring / lifecycle management / elasticity enforcement


    Define behavioural semantics for the language:
        – Link between software architecture definition and infrastructure
        – Derive service management lifecycle from software architecture
          definition
        – Constrain infrastructure operation




Software Architecture Definition for On-demand Cloud Provisioning
Overview


      Problem overview
      Background: Resources And Service Virtualization Without Barriers
      Approach: Software architecture definition
      Evaluation




Software Architecture Definition for On-demand Cloud Provisioning
RESERVOIR Goals
  Develop and promote (through standardization) an open
   architecture for federated cloud computing
      - where resources and services can be transparently and dynamically
        managed, provisioned and relocated like utilities


       RESERVOIR is an open framework of modular components
        that enable a wide range of setups within the cloud space




      Infrastructure            OIR                                  Solutions
                              RV
                            SE
                          RE




Software Architecture Definition for On-demand Cloud Provisioning
Challenges


     Inherently limited scalability of single-provider clouds
     Lack of interoperability among cloud providers
         - Inability to scale through partnerships across providers
         - Prevents small and medium infrastructure providers from
           entering the market
         - Locks consumers to a single vendor

     Dynamic and automated application scaling

     BSM through Service Level Agreements, Monitoring,
      Security …




Software April, 2009 Definition forY1 Project Review
    1-2 Architecture                On-demand Cloud Provisioning   12
The RESERVOIR vision




                                                            Public cloud
                    Private cloud




                                                         Partner cloud



Software Architecture Definition for On-demand Cloud Provisioning
RESERVOIR Architecture
                                                                             Service Provider supplies:
                                                                             •   Prepacked Service Components
   • Enforces SLA compliance by adjusting                                        (Virtual Machine)
     application capacity:                                                   •   Service Manifest
    • Service Components Sizing (VEEs)
                                                                          Separation + Business Orientation
    • Service Tiers sizing
                                                            Service Provider
   • Responsible for accounting and billing




                                                                       SMI
   Elasticity + Business Orientation + Trust + Security     Manifest



  •    Optimizes VEE placement
       subject to constraints                                 Service Manager
  •    Deals with site federation
  •    Distributed as OpenNebula




                                                                       VMI
                                               SLA                                                   SLA

  Federation + Elasticity + Trust + Security    VMI        VEE Manager (VEEM)                      VMI


  •    Translates generic commands
       into specific virtualization platform




                                                                       VHI
       commands
  •    Creates and maintains isolated
       virtual networks
  •    Enables efficient and secure access                       VEE Host (VEEH)
                                                          (e.g., Hypervisor, VJSC Host)
       to remote storage
                                                                                  Reservoir Site
  Isolation + Elasticity + Trust + Security

Software Architecture Definition for On-demand Cloud Provisioning
Service Manifest Requirements


     Service Manifest Language
       – Define language for service definition manifest to express:
              •   Application structure (software architecture)
              •   Constraints (grouping / topology / cost)
              •   Capacity requirements (with elasticity rules)
              •   Monitoring specification
              •   Additional information (requirements / service levels / Customisation )
         – Contract between provider and infrastructure provider

     Service Lifecycle Management
       – Derive various representations and execution plans for underlying
         layers:
              • Deployment descriptor
              • Elasticity rules
              • …


Software Architecture Definition for On-demand Cloud Provisioning
Overview


      Problem overview
      Background: Resources And Service Virtualization Without Barriers
      Approach: Software architecture definition
      Evaluation




Software Architecture Definition for On-demand Cloud Provisioning
Model-denotational Approach

      Language definition using OMG’s Model Driven Architecture

      Abstract syntax defined using the Essential Meta Object facility
        – Define core syntactic elements of the language (software
          architecture, requirements, etc.)

    Various concrete syntaxes (XMI, HUTN, …) as may be required
        – Based on open standards – in particular the Open Virtualisation Format
          (OVF)

      Semantics expressed as constraints on relationship between domain model
       and syntactic model using the Object Constraints Language.
         Domain model represents cloud infrastructure and




Software Architecture Definition for On-demand Cloud Provisioning
Service Deployment

  Manifest Language Syntax                                                        Virtual Execution Environment

                                  Manifest                           VirtualMachine                    OS

                            +refs: Reference[]                  +name:String                  +kernel: String
                            +disks: Disk[]                      +CPU: double                  +initdr: String
                            +nets: Network[]                    +memory: double               +kernel_cmd: String
                            +vm: VirtualSystem[]                +Rank: String                 +root: String
                                                                +Requirements:                +boot: String
                                                                String
   ApplicationDescription                                       +input: Input
                                                   context Association
                                                                +graphics: Graphics
  +comp: Components[]
  +kpi: KPIs                                       inv:
                                                                                                      Disk
                                                   manifest .vm −> forAll ( v |            +type: String
                                                     depdescriptor . exists( d |           +source: String
                                                       d.name = v. id &&                   +target: String
       ElasticityRule
                                                       d.memory = v.virtualhardware.memory +bus: String
                                                                                            &&
  +cond: Expression                                                                        +readOnly: boolean
                                                       d. disk. source =
  +kpi: KPIs
                                                         (manifest.refs.file −>asSet()
  +action: Operation
                                                         −> select (id = v. id))−>first().href
                                                       . . .
                                                                                                    NIC
                                                     )
                                                                                              +mac: String
                                                                                              +bridge: String
                                                                                              +target: String
                                                                                              +script: String




Software Architecture Definition for On-demand Cloud Provisioning
Elasticity Rule Management


         Application Domain                     Service Management                  Language Syntax
                            MonitoringAgen
       DialogInstance                                  MonitoringEvent                 ElasticityRule
                                   t



       CentralInstance      WebDispatcher                                                   KPI
                                                         RuleEngine


                                                                                        Component
           DBMS

                                                              context RuleInterpreter ::
                                                              evaluate(expr: Expression): Real
                                                                                   ApplicationDescription
                         LocalProcess        VirtualMachine              VEEM
                                                              post:

     Application level monitor                               if expr.op.oclIsTypeOf(GreaterThan)
                                                              then Operation
      publishes measurements of                                                          Manifest
                                                                if self . evaluate((op. el −>first
      Key Performance Indicators                                 ()) > self . evaluate((op.
                                                              el−>last ())
                                               addVM                 deleteVM
                                                                then result = 1
     Elasticity rules define                                   else result = 0
      resizing actions to                    migrateVM          end if … else
      undertake based on KPI                                    . . . .
      conditions
                                                              endif


Software Architecture Definition for On-demand Cloud Provisioning
Deriving Java Code – Eclipse Plugin




Software Architecture Definition for On-demand Cloud Provisioning
Concrete Syntax (Implementation)

   Requirement                                   CDDLM       SDD     OVF
                                                                               Service Manifest requirements
   Service          Architecture description        N         Y          Y
                                                                               have been evaluated against
                    Hardware requirements           N         N          Y     existing Service Definition
                    Software environment            N         N          Y     Languages:
                    Network topology                N         N          Y/I
   Virtualization   Elasticity                      N         N          P
                                                                                The Open Virtualisation
                                                                               Format (OVF), DMTF standard
                    Migration constraints           N         N          N
                                                                               backed by XenSource and
                    Portability                     N         Y          Y
                                                                               VMWare, was found to be the
   Dependency       Deployment                      N         P          P     most suited
                    Undeployment                    N         Y          Y
   Customization                                    N         Y          Y      Extensions were needed:
   Location Constraints                             N         N          N     OVF is primarily suited for the
   Non-functional   Security Support                N         N          Y
                                                                               initial deployment of fixed
                                                                               sized services
                    Extensible                      Y         Y          Y
                    Open Standard                   Y         Y          Y
                    Existing support                Y         Y          Y
                                               Y: Yes N: No P: Partial




Software Architecture Definition for On-demand Cloud Provisioning
OVF Additional Extensions

  Extension          Limitation in standard OVF for             How the limitation is      Extension type
                     RESERVOIR                                  solved
  Elasticity Rules   Service elasticity is not considered       <ElasticityRulesSection>   New section for
                                                                                           standard OVF
  Key Performance    KPI specification to trigger elasticity    <KPIsSection>              New section for
  Indicators                                                                               standard OVF
                                                                       Can specify scaling rules with an Event
  Deployment         No ability to specify constraints on       <DeploymentSection>      New section for
                     deployment location and exclude                   Condition Actionstandard (simplified):
                                                                                          format OVF
  Constraints
                     specific zones
                                                                         <VirtualSystem min=“0” max=“10”>
  Affinity           How to specify that certain machines       <AffinitySection>          New section for
                                                                             <ElasticityArraySection>
  Requirements       should be located in a same location (or                       <Rule> standard OVF
                     not)                                                    <KPIName>totalUsers</KPIName>
                                                                             <Window unit="mn">10</Window>
  Performance        How to define the expected range of        <PerformanceObjectiveS     New section for
                                                                             <Frequency>60</Frequency>
  Objective          values that KPI measurements should        ection>                    standard OVF
                                                                             <Quota>20</Quota>
                     fall in for SLA protection
                                                                             </Rule>
  Availability       How to specify availability guarantees     <AvailabilitySection>      New section for
  Requirements       for services                                                          standard OVF




Software Architecture Definition for On-demand Cloud Provisioning
Service Management Infrastructure

                                               Service Manager          Cloud Provider

                                                    Deploy/Undeploy   Central Instance
       Service                  Parser
       Manifest                                                             Probe

         KPI                    Lifecycle              Rules
                                Manager     Rules      Engine         Dialog Instance

        Rules
                                                                            Probe


                                         HTTP Server
                                                                      Dialog Instance
                      Customization
                                                                            Probe

                                                         Monitoring
                  Disk Images
                                                                Bus




Software Architecture Definition for On-demand Cloud Provisioning
Overview


      Problem overview
      Background: Resources And Service Virtualization Without Barriers
      Approach: Software architecture definition
      Evaluation




Software Architecture Definition for On-demand Cloud Provisioning
Evaluation: Scientific Grid Computing

 Scientific grid application deployed on Cloud infrastructure – polymorph
  prediction:
    - Involves a number of grid and web based services to trigger and monitor the
      search – up to 7200 executions of fortran programs


 Objective: If software architecture is correctly described - can we obtain:
    - An equivalent quality of service than that of a dedicated environment
    - Reduced resource consumption through elasticity rule definitions


 Testbed: six servers, Quad-Core AMD Opteron(tm) Processor 2347 HE
  CPU and 8 GBs of RAM and with shared storage via NFS.




Software Architecture Definition for On-demand Cloud Provisioning
Evaluation: Scientific Grid Computing


                Front End               Web Server
                                                                    Input
                Web Server              GridSAM                     Exec
                                                                    ..         Condor
                BPEL                      Condor                                Job
                                         Scheduler          Job                starter
                                                            queue

                                            Grid          Execution
    Orchestration                                             Node
         Service                     Management
                                         Service                VM
                                                                            Dynamic scaling 

                         RESERVOIR Service management system


                                                                                         Physical
                                                                                         resources




Software Architecture Definition for On-demand Cloud Provisioning
Evaluation: Scientific Grid Computing


                Front End               Web Server
                                                                     Input
                Web Server              GridSAM                      Exec
                                                                     ..        Condor
                BPEL                      Condor                                Job
                                         Scheduler            Job              starter
                                                              queue

                                            Grid           Execution
    Orchestration                                               Node
         Service                     Management
                                            Service elasticity:
                                         Service                 VM
                                                                         Dynamic scaling 
                                            Scale number of cluster nodes according to
                         RESERVOIR       Servicein queue:
                                            jobs management system

                                             - Monitoring agent provides job queue
                                             information KPI
                                                                                        Physical
                                             - Manifest defines upscaling and downscaling
                                                                                        resources
                                             rules e.g.:
                                                   If (queusize / instances ) > 4
                                                         -> deploy(executeNode)

Software Architecture Definition for On-demand Cloud Provisioning
Evaluation: Results




      Full turn around time for overall grid search:

       Dedicated service (static): 2h23
       Elastic provisioning: 2h39 (+7%)

      Resource Cost saving for single run: 34% - over a week: 69.18%



Software Architecture Definition for On-demand Cloud Provisioning
Acknowledgments


   RESERVOIR consortium : http://www.reservoir-fp7.eu
   OpenNebula: http://www.opennebula.org
   UCL-MDA tools: http://uclmda.sourceforge.net/




Software Architecture Definition for On-demand Cloud Provisioning

Weitere ähnliche Inhalte

Was ist angesagt?

Cloud providers vs Cloud pretenders
Cloud providers vs Cloud pretendersCloud providers vs Cloud pretenders
Cloud providers vs Cloud pretendersDaniel Shim
 
Opportunites and Challenges in Cloud COmputing
Opportunites and Challenges in Cloud COmputingOpportunites and Challenges in Cloud COmputing
Opportunites and Challenges in Cloud COmputingACMBangalore
 
Cloud Computing Potentials
Cloud Computing PotentialsCloud Computing Potentials
Cloud Computing Potentialsabta
 
Cloud Computing for Beginners
Cloud Computing for BeginnersCloud Computing for Beginners
Cloud Computing for BeginnersJainul Musani
 
Mainframe cloud computing presentation
Mainframe cloud computing presentationMainframe cloud computing presentation
Mainframe cloud computing presentationxKinAnx
 
Cloud Interoperability Forum Sep 24
Cloud Interoperability Forum Sep 24Cloud Interoperability Forum Sep 24
Cloud Interoperability Forum Sep 24Reuven Cohen
 
Case Study of SURE! Unified Communications
Case Study of SURE! Unified CommunicationsCase Study of SURE! Unified Communications
Case Study of SURE! Unified CommunicationsSURE!
 
Application of Virtualisation and CloudComputing for Development and Runtime ...
Application of Virtualisation and CloudComputing for Development and Runtime ...Application of Virtualisation and CloudComputing for Development and Runtime ...
Application of Virtualisation and CloudComputing for Development and Runtime ...Ingenieurbuero Arno-Can Uestuensoez
 
Cloud computing
Cloud computingCloud computing
Cloud computingSrinivasa Rao
 
cloud coumputing
cloud coumputingcloud coumputing
cloud coumputingsai kumar R
 
Cloud computing abstract
Cloud computing abstractCloud computing abstract
Cloud computing abstractJagadeesh Kumar
 
Mobile Cloud Computing: Big Picture
Mobile Cloud Computing: Big PictureMobile Cloud Computing: Big Picture
Mobile Cloud Computing: Big PictureReza Rahimi
 
Cloud Computing for Beginners
Cloud Computing for Beginners Cloud Computing for Beginners
Cloud Computing for Beginners Suman Singh
 
Synopsis on cloud computing by Prashant upta
Synopsis on cloud computing by Prashant uptaSynopsis on cloud computing by Prashant upta
Synopsis on cloud computing by Prashant uptaPrashant Gupta
 
Unit 1.1 introduction to cloud computing
Unit 1.1   introduction to cloud computingUnit 1.1   introduction to cloud computing
Unit 1.1 introduction to cloud computingeShikshak
 
Cloud Computing Services Intro
Cloud Computing Services IntroCloud Computing Services Intro
Cloud Computing Services IntroDj Das
 
cloud-computing
cloud-computingcloud-computing
cloud-computingSuneel Dogra
 

Was ist angesagt? (20)

Cloud providers vs Cloud pretenders
Cloud providers vs Cloud pretendersCloud providers vs Cloud pretenders
Cloud providers vs Cloud pretenders
 
cloud computing
cloud computingcloud computing
cloud computing
 
Opportunites and Challenges in Cloud COmputing
Opportunites and Challenges in Cloud COmputingOpportunites and Challenges in Cloud COmputing
Opportunites and Challenges in Cloud COmputing
 
Cloud Computing Potentials
Cloud Computing PotentialsCloud Computing Potentials
Cloud Computing Potentials
 
Cloud Computing for Beginners
Cloud Computing for BeginnersCloud Computing for Beginners
Cloud Computing for Beginners
 
cloud computing
cloud computingcloud computing
cloud computing
 
Mobile gis
Mobile gisMobile gis
Mobile gis
 
Mainframe cloud computing presentation
Mainframe cloud computing presentationMainframe cloud computing presentation
Mainframe cloud computing presentation
 
Cloud Interoperability Forum Sep 24
Cloud Interoperability Forum Sep 24Cloud Interoperability Forum Sep 24
Cloud Interoperability Forum Sep 24
 
Case Study of SURE! Unified Communications
Case Study of SURE! Unified CommunicationsCase Study of SURE! Unified Communications
Case Study of SURE! Unified Communications
 
Application of Virtualisation and CloudComputing for Development and Runtime ...
Application of Virtualisation and CloudComputing for Development and Runtime ...Application of Virtualisation and CloudComputing for Development and Runtime ...
Application of Virtualisation and CloudComputing for Development and Runtime ...
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
cloud coumputing
cloud coumputingcloud coumputing
cloud coumputing
 
Cloud computing abstract
Cloud computing abstractCloud computing abstract
Cloud computing abstract
 
Mobile Cloud Computing: Big Picture
Mobile Cloud Computing: Big PictureMobile Cloud Computing: Big Picture
Mobile Cloud Computing: Big Picture
 
Cloud Computing for Beginners
Cloud Computing for Beginners Cloud Computing for Beginners
Cloud Computing for Beginners
 
Synopsis on cloud computing by Prashant upta
Synopsis on cloud computing by Prashant uptaSynopsis on cloud computing by Prashant upta
Synopsis on cloud computing by Prashant upta
 
Unit 1.1 introduction to cloud computing
Unit 1.1   introduction to cloud computingUnit 1.1   introduction to cloud computing
Unit 1.1 introduction to cloud computing
 
Cloud Computing Services Intro
Cloud Computing Services IntroCloud Computing Services Intro
Cloud Computing Services Intro
 
cloud-computing
cloud-computingcloud-computing
cloud-computing
 

Andere mochten auch

Sap Busines Suite At IBM event
Sap Busines Suite At IBM eventSap Busines Suite At IBM event
Sap Busines Suite At IBM eventShekhar Bhartiya
 
Public PhD Defense Enterprise Architecture for Small and Medium-Sized Enterpr...
Public PhD Defense Enterprise Architecture for Small and Medium-Sized Enterpr...Public PhD Defense Enterprise Architecture for Small and Medium-Sized Enterpr...
Public PhD Defense Enterprise Architecture for Small and Medium-Sized Enterpr...Maxime Bernaert
 
Sap architecture
Sap architectureSap architecture
Sap architectureJugul Crasta
 
05. sap architecture final and os concepts (1)
05. sap architecture  final and os concepts (1)05. sap architecture  final and os concepts (1)
05. sap architecture final and os concepts (1)Tarek Hossain Chowdhury
 
Common Europe SAP on i for beginners
Common Europe SAP on i for beginnersCommon Europe SAP on i for beginners
Common Europe SAP on i for beginnersCOMMON Europe
 
SAP ERP Solutions - How It Evolved Over Time
SAP ERP Solutions - How It Evolved Over TimeSAP ERP Solutions - How It Evolved Over Time
SAP ERP Solutions - How It Evolved Over TimeAPPSeCONNECT
 
(ARC401) Cloud First: New Architecture for New Infrastructure
(ARC401) Cloud First: New Architecture for New Infrastructure(ARC401) Cloud First: New Architecture for New Infrastructure
(ARC401) Cloud First: New Architecture for New InfrastructureAmazon Web Services
 
Cloud Architecture: Patterns and Best Practices
Cloud Architecture: Patterns and Best PracticesCloud Architecture: Patterns and Best Practices
Cloud Architecture: Patterns and Best PracticesSascha MĂśllering
 
History and Evolution of ERP & SAP
History and Evolution of ERP & SAPHistory and Evolution of ERP & SAP
History and Evolution of ERP & SAPShivkumar Rai
 

Andere mochten auch (9)

Sap Busines Suite At IBM event
Sap Busines Suite At IBM eventSap Busines Suite At IBM event
Sap Busines Suite At IBM event
 
Public PhD Defense Enterprise Architecture for Small and Medium-Sized Enterpr...
Public PhD Defense Enterprise Architecture for Small and Medium-Sized Enterpr...Public PhD Defense Enterprise Architecture for Small and Medium-Sized Enterpr...
Public PhD Defense Enterprise Architecture for Small and Medium-Sized Enterpr...
 
Sap architecture
Sap architectureSap architecture
Sap architecture
 
05. sap architecture final and os concepts (1)
05. sap architecture  final and os concepts (1)05. sap architecture  final and os concepts (1)
05. sap architecture final and os concepts (1)
 
Common Europe SAP on i for beginners
Common Europe SAP on i for beginnersCommon Europe SAP on i for beginners
Common Europe SAP on i for beginners
 
SAP ERP Solutions - How It Evolved Over Time
SAP ERP Solutions - How It Evolved Over TimeSAP ERP Solutions - How It Evolved Over Time
SAP ERP Solutions - How It Evolved Over Time
 
(ARC401) Cloud First: New Architecture for New Infrastructure
(ARC401) Cloud First: New Architecture for New Infrastructure(ARC401) Cloud First: New Architecture for New Infrastructure
(ARC401) Cloud First: New Architecture for New Infrastructure
 
Cloud Architecture: Patterns and Best Practices
Cloud Architecture: Patterns and Best PracticesCloud Architecture: Patterns and Best Practices
Cloud Architecture: Patterns and Best Practices
 
History and Evolution of ERP & SAP
History and Evolution of ERP & SAPHistory and Evolution of ERP & SAP
History and Evolution of ERP & SAP
 

Ähnlich wie Software Architecture Definition for On-demand Cloud Provisioning

Cloud Computing: Making IT Simple
Cloud Computing: Making IT SimpleCloud Computing: Making IT Simple
Cloud Computing: Making IT SimpleBob Rhubart
 
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...CloudOps Summit
 
Cloud Computing - Making IT Simple
 Cloud Computing - Making IT Simple Cloud Computing - Making IT Simple
Cloud Computing - Making IT SimpleBob Rhubart
 
08 sdn system intelligence short public beijing sdn conference - 130828
08 sdn system intelligence   short public beijing sdn conference - 13082808 sdn system intelligence   short public beijing sdn conference - 130828
08 sdn system intelligence short public beijing sdn conference - 130828Mason Mei
 
Making of a Successful Cloud Business
Making of a Successful Cloud BusinessMaking of a Successful Cloud Business
Making of a Successful Cloud BusinessACMBangalore
 
Microsoft Best Practices - AWS India Summit 2012
Microsoft Best Practices - AWS India Summit 2012Microsoft Best Practices - AWS India Summit 2012
Microsoft Best Practices - AWS India Summit 2012Amazon Web Services
 
The Enterprise Cloud: Immediate. Urgent. Inevitable.
The Enterprise Cloud: Immediate. Urgent. Inevitable.The Enterprise Cloud: Immediate. Urgent. Inevitable.
The Enterprise Cloud: Immediate. Urgent. Inevitable.Peter Coffee
 
2011 04-dsi-javaee-in-the-cloud-andreadis
2011 04-dsi-javaee-in-the-cloud-andreadis2011 04-dsi-javaee-in-the-cloud-andreadis
2011 04-dsi-javaee-in-the-cloud-andreadisdandre
 
Towards a Federated Cloud Ecosystem
Towards a Federated Cloud EcosystemTowards a Federated Cloud Ecosystem
Towards a Federated Cloud EcosystemClovis Chapman
 
Cloud Networking: Network aspects of the cloud
Cloud Networking: Network aspects of the cloudCloud Networking: Network aspects of the cloud
Cloud Networking: Network aspects of the cloudSAIL
 
AWS Partner Presentation - Datapipe - Deploying Hybrid IT, AWS Summit 2012 - NYC
AWS Partner Presentation - Datapipe - Deploying Hybrid IT, AWS Summit 2012 - NYCAWS Partner Presentation - Datapipe - Deploying Hybrid IT, AWS Summit 2012 - NYC
AWS Partner Presentation - Datapipe - Deploying Hybrid IT, AWS Summit 2012 - NYCAmazon Web Services
 
Cloud computing
Cloud computingCloud computing
Cloud computingMed Zaibi
 
Gef 2012 InduSoft Presentation
Gef 2012  InduSoft PresentationGef 2012  InduSoft Presentation
Gef 2012 InduSoft PresentationAVEVA
 
The SPOSAD Architectural Style for Multi-tenant Software Applications
The SPOSAD Architectural Style for Multi-tenant Software ApplicationsThe SPOSAD Architectural Style for Multi-tenant Software Applications
The SPOSAD Architectural Style for Multi-tenant Software ApplicationsHeiko Koziolek
 
The unified data center for cloud david yen
The unified data center for cloud david yenThe unified data center for cloud david yen
The unified data center for cloud david yendeepersnet
 
Be Prepared for Tomorrow's IT Forecast Great Chance of Hybrid Clouds
Be Prepared for Tomorrow's IT Forecast Great Chance of Hybrid CloudsBe Prepared for Tomorrow's IT Forecast Great Chance of Hybrid Clouds
Be Prepared for Tomorrow's IT Forecast Great Chance of Hybrid CloudsEucalyptus Systems, Inc.
 
Be Prepared for Tomorrow's IT Forecast: Great Chance of Hybrid Clouds
Be Prepared for Tomorrow's IT Forecast: Great Chance of Hybrid CloudsBe Prepared for Tomorrow's IT Forecast: Great Chance of Hybrid Clouds
Be Prepared for Tomorrow's IT Forecast: Great Chance of Hybrid CloudsEucalyptus Systems, Inc.
 

Ähnlich wie Software Architecture Definition for On-demand Cloud Provisioning (20)

Cloud Computing: Making IT Simple
Cloud Computing: Making IT SimpleCloud Computing: Making IT Simple
Cloud Computing: Making IT Simple
 
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...
Cloud architecture and deployment: The Kognitio checklist, Nigel Sanctuary, K...
 
Cloud Computing - Making IT Simple
 Cloud Computing - Making IT Simple Cloud Computing - Making IT Simple
Cloud Computing - Making IT Simple
 
08 sdn system intelligence short public beijing sdn conference - 130828
08 sdn system intelligence   short public beijing sdn conference - 13082808 sdn system intelligence   short public beijing sdn conference - 130828
08 sdn system intelligence short public beijing sdn conference - 130828
 
Making of a Successful Cloud Business
Making of a Successful Cloud BusinessMaking of a Successful Cloud Business
Making of a Successful Cloud Business
 
Microsoft Best Practices - AWS India Summit 2012
Microsoft Best Practices - AWS India Summit 2012Microsoft Best Practices - AWS India Summit 2012
Microsoft Best Practices - AWS India Summit 2012
 
The Enterprise Cloud: Immediate. Urgent. Inevitable.
The Enterprise Cloud: Immediate. Urgent. Inevitable.The Enterprise Cloud: Immediate. Urgent. Inevitable.
The Enterprise Cloud: Immediate. Urgent. Inevitable.
 
2011 04-dsi-javaee-in-the-cloud-andreadis
2011 04-dsi-javaee-in-the-cloud-andreadis2011 04-dsi-javaee-in-the-cloud-andreadis
2011 04-dsi-javaee-in-the-cloud-andreadis
 
Database as a Service - Tutorial @ICDE 2010
Database as a Service - Tutorial @ICDE 2010Database as a Service - Tutorial @ICDE 2010
Database as a Service - Tutorial @ICDE 2010
 
PIM4Cloud
PIM4CloudPIM4Cloud
PIM4Cloud
 
Towards a Federated Cloud Ecosystem
Towards a Federated Cloud EcosystemTowards a Federated Cloud Ecosystem
Towards a Federated Cloud Ecosystem
 
Cloud Networking: Network aspects of the cloud
Cloud Networking: Network aspects of the cloudCloud Networking: Network aspects of the cloud
Cloud Networking: Network aspects of the cloud
 
AWS Partner Presentation - Datapipe - Deploying Hybrid IT, AWS Summit 2012 - NYC
AWS Partner Presentation - Datapipe - Deploying Hybrid IT, AWS Summit 2012 - NYCAWS Partner Presentation - Datapipe - Deploying Hybrid IT, AWS Summit 2012 - NYC
AWS Partner Presentation - Datapipe - Deploying Hybrid IT, AWS Summit 2012 - NYC
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Gef 2012 InduSoft Presentation
Gef 2012  InduSoft PresentationGef 2012  InduSoft Presentation
Gef 2012 InduSoft Presentation
 
The SPOSAD Architectural Style for Multi-tenant Software Applications
The SPOSAD Architectural Style for Multi-tenant Software ApplicationsThe SPOSAD Architectural Style for Multi-tenant Software Applications
The SPOSAD Architectural Style for Multi-tenant Software Applications
 
The unified data center for cloud david yen
The unified data center for cloud david yenThe unified data center for cloud david yen
The unified data center for cloud david yen
 
Osac2012
Osac2012Osac2012
Osac2012
 
Be Prepared for Tomorrow's IT Forecast Great Chance of Hybrid Clouds
Be Prepared for Tomorrow's IT Forecast Great Chance of Hybrid CloudsBe Prepared for Tomorrow's IT Forecast Great Chance of Hybrid Clouds
Be Prepared for Tomorrow's IT Forecast Great Chance of Hybrid Clouds
 
Be Prepared for Tomorrow's IT Forecast: Great Chance of Hybrid Clouds
Be Prepared for Tomorrow's IT Forecast: Great Chance of Hybrid CloudsBe Prepared for Tomorrow's IT Forecast: Great Chance of Hybrid Clouds
Be Prepared for Tomorrow's IT Forecast: Great Chance of Hybrid Clouds
 

KĂźrzlich hochgeladen

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel AraĂşjo
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 

KĂźrzlich hochgeladen (20)

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

Software Architecture Definition for On-demand Cloud Provisioning

  • 1. Software Architecture Definition for On-Demand Cloud provisioning Clovis Chapman, Wolfgang Emmerich, FermĂ­n GalĂĄn Marquez, Stuart Clayman, Alex Galis University College London Telefonica I+D The research leading to these results has been partially funded by the European Community's Seventh Framework Programme (FP7/2007-2013) under grant agreement n° 215605.
  • 2. Overview  Problem overview  Background: Resources And Service Virtualization Without Barriers  Approach: Software architecture definition  Evaluation Software Architecture Definition for On-demand Cloud Provisioning
  • 3. Problem overview  Clouds introduce opportunity to lease computational resources on demand: – Manage the execution of service applications across multiple physical locations in a seamless manner – Virtualisation allow a wide range of new capabilities (migration, on demand allocation, dynamic resizing)  Software systems hosted on clouds may be composed of numerous loosely coupled components: – Application may present architectural constraints, co-dependencies between components. – Providers must be able to define software composition and requirements related to the provisioning of the service. Software Architecture Definition for On-demand Cloud Provisioning
  • 4. Example: SAP ERP System Presentation SAP GUI SAP GUI SAP GUI Browser Three tier architecture:  Database (DBMS)  Central Instance (CI) – Enqueue server providing a high level DI DI CI DI DI Application locking mechanism (data consistency) – Messaging server for load balancing  Dialog Instance – User request processing DBMS Database – Data record updates – Batch processing Software Architecture Definition for On-demand Cloud Provisioning
  • 5. Example: SAP ERP System SAP GUI SAP GUI SAP GUI Browser Presentation Software composition: Individual components may have different software and hardware requirements: - DBMS: large storage requirements Application DI DI CI DI DI - DI: Processor intensive Topology: All components must belong to the same virtual network. Customization: Locations must be provided at run-time. DBMS Database Software Architecture Definition for On-demand Cloud Provisioning
  • 6. Example: SAP ERP System SAP GUI SAP GUI SAP GUI Browser Presentation Application DI DI CI DI DI Deployment dependencies: DBMS and CI must be run first. Location constraints: Must be co- located on the same physical site to minimise latency DBMS Database Software Architecture Definition for On-demand Cloud Provisioning
  • 7. Example: SAP ERP System SAP GUI SAP GUI SAP GUI Browser Presentation Application DI DI CI DI DI DI DI DBMS Database Dynamic capacity adjustment: Might require new DIs to meet increases in workload. Resource requirements directly proportional to concurrent sessions. Software Architecture Definition for On-demand Cloud Provisioning
  • 8. Example 2: Thales eGov Dynamic capacity adjustment: Each layer invoked to process user requests. Each scale independently according to load and average response time. Software Architecture Definition for On-demand Cloud Provisioning
  • 9. Focus of this work  Define a software architecture definition language: – Enable service providers to control the deployment and management of services deployed on Clouds throughout their lifetime. – Introduce abstractions to support capabilities introduced by cloud computing (e.g. service elasticity)  Define underlying service management infrastructure support: – Monitoring / lifecycle management / elasticity enforcement  Define behavioural semantics for the language: – Link between software architecture definition and infrastructure – Derive service management lifecycle from software architecture definition – Constrain infrastructure operation Software Architecture Definition for On-demand Cloud Provisioning
  • 10. Overview  Problem overview  Background: Resources And Service Virtualization Without Barriers  Approach: Software architecture definition  Evaluation Software Architecture Definition for On-demand Cloud Provisioning
  • 11. RESERVOIR Goals  Develop and promote (through standardization) an open architecture for federated cloud computing - where resources and services can be transparently and dynamically managed, provisioned and relocated like utilities  RESERVOIR is an open framework of modular components that enable a wide range of setups within the cloud space Infrastructure OIR Solutions RV SE RE Software Architecture Definition for On-demand Cloud Provisioning
  • 12. Challenges  Inherently limited scalability of single-provider clouds  Lack of interoperability among cloud providers - Inability to scale through partnerships across providers - Prevents small and medium infrastructure providers from entering the market - Locks consumers to a single vendor  Dynamic and automated application scaling  BSM through Service Level Agreements, Monitoring, Security … Software April, 2009 Definition forY1 Project Review 1-2 Architecture On-demand Cloud Provisioning 12
  • 13. The RESERVOIR vision Public cloud Private cloud Partner cloud Software Architecture Definition for On-demand Cloud Provisioning
  • 14. RESERVOIR Architecture Service Provider supplies: • Prepacked Service Components • Enforces SLA compliance by adjusting (Virtual Machine) application capacity: • Service Manifest • Service Components Sizing (VEEs) Separation + Business Orientation • Service Tiers sizing Service Provider • Responsible for accounting and billing SMI Elasticity + Business Orientation + Trust + Security Manifest • Optimizes VEE placement subject to constraints Service Manager • Deals with site federation • Distributed as OpenNebula VMI SLA SLA Federation + Elasticity + Trust + Security VMI VEE Manager (VEEM) VMI • Translates generic commands into specific virtualization platform VHI commands • Creates and maintains isolated virtual networks • Enables efficient and secure access VEE Host (VEEH) (e.g., Hypervisor, VJSC Host) to remote storage Reservoir Site Isolation + Elasticity + Trust + Security Software Architecture Definition for On-demand Cloud Provisioning
  • 15. Service Manifest Requirements  Service Manifest Language – Define language for service definition manifest to express: • Application structure (software architecture) • Constraints (grouping / topology / cost) • Capacity requirements (with elasticity rules) • Monitoring specification • Additional information (requirements / service levels / Customisation ) – Contract between provider and infrastructure provider  Service Lifecycle Management – Derive various representations and execution plans for underlying layers: • Deployment descriptor • Elasticity rules • … Software Architecture Definition for On-demand Cloud Provisioning
  • 16. Overview  Problem overview  Background: Resources And Service Virtualization Without Barriers  Approach: Software architecture definition  Evaluation Software Architecture Definition for On-demand Cloud Provisioning
  • 17. Model-denotational Approach  Language definition using OMG’s Model Driven Architecture  Abstract syntax defined using the Essential Meta Object facility – Define core syntactic elements of the language (software architecture, requirements, etc.)  Various concrete syntaxes (XMI, HUTN, …) as may be required – Based on open standards – in particular the Open Virtualisation Format (OVF)  Semantics expressed as constraints on relationship between domain model and syntactic model using the Object Constraints Language.  Domain model represents cloud infrastructure and Software Architecture Definition for On-demand Cloud Provisioning
  • 18. Service Deployment Manifest Language Syntax Virtual Execution Environment Manifest VirtualMachine OS +refs: Reference[] +name:String +kernel: String +disks: Disk[] +CPU: double +initdr: String +nets: Network[] +memory: double +kernel_cmd: String +vm: VirtualSystem[] +Rank: String +root: String +Requirements: +boot: String String ApplicationDescription +input: Input context Association +graphics: Graphics +comp: Components[] +kpi: KPIs inv: Disk manifest .vm −> forAll ( v | +type: String depdescriptor . exists( d | +source: String d.name = v. id && +target: String ElasticityRule d.memory = v.virtualhardware.memory +bus: String && +cond: Expression +readOnly: boolean d. disk. source = +kpi: KPIs (manifest.refs.file −>asSet() +action: Operation −> select (id = v. id))−>first().href . . . NIC ) +mac: String +bridge: String +target: String +script: String Software Architecture Definition for On-demand Cloud Provisioning
  • 19. Elasticity Rule Management Application Domain Service Management Language Syntax MonitoringAgen DialogInstance MonitoringEvent ElasticityRule t CentralInstance WebDispatcher KPI RuleEngine Component DBMS context RuleInterpreter :: evaluate(expr: Expression): Real ApplicationDescription LocalProcess VirtualMachine VEEM post:  Application level monitor if expr.op.oclIsTypeOf(GreaterThan) then Operation publishes measurements of Manifest if self . evaluate((op. el −>first Key Performance Indicators ()) > self . evaluate((op. el−>last ()) addVM deleteVM then result = 1  Elasticity rules define else result = 0 resizing actions to migrateVM end if … else undertake based on KPI . . . . conditions endif Software Architecture Definition for On-demand Cloud Provisioning
  • 20. Deriving Java Code – Eclipse Plugin Software Architecture Definition for On-demand Cloud Provisioning
  • 21. Concrete Syntax (Implementation) Requirement CDDLM SDD OVF Service Manifest requirements Service Architecture description N Y Y have been evaluated against Hardware requirements N N Y existing Service Definition Software environment N N Y Languages: Network topology N N Y/I Virtualization Elasticity N N P  The Open Virtualisation Format (OVF), DMTF standard Migration constraints N N N backed by XenSource and Portability N Y Y VMWare, was found to be the Dependency Deployment N P P most suited Undeployment N Y Y Customization N Y Y  Extensions were needed: Location Constraints N N N OVF is primarily suited for the Non-functional Security Support N N Y initial deployment of fixed sized services Extensible Y Y Y Open Standard Y Y Y Existing support Y Y Y Y: Yes N: No P: Partial Software Architecture Definition for On-demand Cloud Provisioning
  • 22. OVF Additional Extensions Extension Limitation in standard OVF for How the limitation is Extension type RESERVOIR solved Elasticity Rules Service elasticity is not considered <ElasticityRulesSection> New section for standard OVF Key Performance KPI specification to trigger elasticity <KPIsSection> New section for Indicators standard OVF Can specify scaling rules with an Event Deployment No ability to specify constraints on <DeploymentSection> New section for deployment location and exclude Condition Actionstandard (simplified): format OVF Constraints specific zones <VirtualSystem min=“0” max=“10”> Affinity How to specify that certain machines <AffinitySection> New section for <ElasticityArraySection> Requirements should be located in a same location (or <Rule> standard OVF not) <KPIName>totalUsers</KPIName> <Window unit="mn">10</Window> Performance How to define the expected range of <PerformanceObjectiveS New section for <Frequency>60</Frequency> Objective values that KPI measurements should ection> standard OVF <Quota>20</Quota> fall in for SLA protection </Rule> Availability How to specify availability guarantees <AvailabilitySection> New section for Requirements for services standard OVF Software Architecture Definition for On-demand Cloud Provisioning
  • 23. Service Management Infrastructure Service Manager Cloud Provider Deploy/Undeploy Central Instance Service Parser Manifest Probe KPI Lifecycle Rules Manager Rules Engine Dialog Instance Rules Probe HTTP Server Dialog Instance Customization Probe Monitoring Disk Images Bus Software Architecture Definition for On-demand Cloud Provisioning
  • 24. Overview  Problem overview  Background: Resources And Service Virtualization Without Barriers  Approach: Software architecture definition  Evaluation Software Architecture Definition for On-demand Cloud Provisioning
  • 25. Evaluation: Scientific Grid Computing  Scientific grid application deployed on Cloud infrastructure – polymorph prediction: - Involves a number of grid and web based services to trigger and monitor the search – up to 7200 executions of fortran programs  Objective: If software architecture is correctly described - can we obtain: - An equivalent quality of service than that of a dedicated environment - Reduced resource consumption through elasticity rule definitions  Testbed: six servers, Quad-Core AMD Opteron(tm) Processor 2347 HE CPU and 8 GBs of RAM and with shared storage via NFS. Software Architecture Definition for On-demand Cloud Provisioning
  • 26. Evaluation: Scientific Grid Computing Front End Web Server Input Web Server GridSAM Exec .. Condor BPEL Condor Job Scheduler Job starter queue Grid Execution Orchestration Node Service Management Service VM Dynamic scaling  RESERVOIR Service management system Physical resources Software Architecture Definition for On-demand Cloud Provisioning
  • 27. Evaluation: Scientific Grid Computing Front End Web Server Input Web Server GridSAM Exec .. Condor BPEL Condor Job Scheduler Job starter queue Grid Execution Orchestration Node Service Management Service elasticity: Service VM Dynamic scaling  Scale number of cluster nodes according to RESERVOIR Servicein queue: jobs management system - Monitoring agent provides job queue information KPI Physical - Manifest defines upscaling and downscaling resources rules e.g.: If (queusize / instances ) > 4 -> deploy(executeNode) Software Architecture Definition for On-demand Cloud Provisioning
  • 28. Evaluation: Results Full turn around time for overall grid search:  Dedicated service (static): 2h23  Elastic provisioning: 2h39 (+7%) Resource Cost saving for single run: 34% - over a week: 69.18% Software Architecture Definition for On-demand Cloud Provisioning
  • 29. Acknowledgments  RESERVOIR consortium : http://www.reservoir-fp7.eu  OpenNebula: http://www.opennebula.org  UCL-MDA tools: http://uclmda.sourceforge.net/ Software Architecture Definition for On-demand Cloud Provisioning

Hinweis der Redaktion

  1. Add a few labels Software vendors across the spectrum of specialties are acutely aware of the emerging phenomenon of cloud computing. Although it is not entirely new (SaaS-style applications have been offered in some business contexts for years and some levels of infrastructure utility support — for storage and other purposes — has also been in use for a long time), the entry of new visionary and powerful vendors into the space makes all the difference. Google and Amazon are two innovators that are leading the industry to the new cloud-based computing style. Cisco and WebEx have also contributed in this direction (WebEx Connect) though with lesser impact. More recently, IBM and Microsoft had began multi-billion dollar investments in building the data centers comparable to the likes of Google and Amazon to establish an independent footprint for their own renditions of cloud computing. Both SAP and Oracle had pledged that the next generation of their business applications will be cloud-enabled and available (optionally) as SaaS. As in the data center — in the cloud too — technology architecture is multi-layered and complex. The basic hosting offerings (from IBM, Dell, Rackspace, OpSource and others) compete with the utility offerings from Amazon, Xdrive, MediaMax and others. The applications from Workday, NetSuite, RightNow and Salesforce run over their own platforms, but many smaller and newer application ISVs build on the growing availability of development and runtime environments for the cloud, including Force.com, Rollbase, LongJump, Bungee Connect and others. With time this variety of offerings will likely consolidate, but not in the immediate future, where we expect a continuing emergence of new innovative players and offerings. Key Issue: What are the platform vendors&apos; APaaS strategies?
  2. Refer to D4.x.1 chapter 2 for details
  3. Defined a set of extensions to OVF to handle some of the key cloud requirements - In particular (elasticity, application state, dynamic IP assignment, network properties)