SlideShare une entreprise Scribd logo
1  sur  38
Télécharger pour lire hors ligne
Cloud & OSGi - Beyond the VM




Richard Nicholson: Paremus CEO
                                                                                                                               www.paremus.com
                   President of the OSGi Alliance

 OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                                      March 2012
                                         May not be reproduced by any means without express permission. All rights reserved.
Virtual Machine Man


                                              Amazon EC2, RackSpace, Azure? They all suffer
                                              from the same fundamental design flaw.
                                              Virtual Machine image centric Cloud solutions:
                                                • Cause excessive network infrastructure load.
                                                • Cause excessive storage consumption - caused by virtual machine
                                                   image sprawl.
                                                • Fail to address to primary issue - the ongoing cost of maintaining
                                                   applications.




OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                             March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
VM images: The Wrong deployment artefact!

                                                Type of Deployment Artefact
                                          Artefact                       Module Centric                             Image Centric

                                        Machine Image                  ~ 1 to 2 Gbytes per node                  ~ 1 to 2 Gbytes per node

                                           Application                      ~ 1 TO 100 Mbytes                    ~ 1 to 2 Gbytes per node

                                        Application Patch                      ~ 100’s Kbytes                    ~ 1 to 2 Gbytes per node

                                   Property / Config Changes                       ~ 1 Kbyte                      ~ 1 to 2 Gbytes per node




OSGi Dev Con 2012 - Cloud Workshop II                                   Copyright © 2005 - 2012 Paremus Ltd.                                March 2012
                                                   May not be reproduced by any means without express permission. All rights reserved.
Observation

                                                                                                                                            m ?
                                                                                        o
1. The Unit of Deployment is...                                                                                                   Need to Optimise
 • The unit of fix / maintenance.
 • The potential unit of re-use.
                                                                                     Ro                                                 Response



Also...                                                       Detect
                                                                                t he                                                                  Decision


                                                      i n
2. Time to deploy - directly influences...
 • Time to recover a failed Business Service.

                                        r k
 • Time to scale an environment in response to business load.
                                      i
      s K
     I                                                                                                                          Patterns of Modular Architecture

                                                                                                                                        (Kirk Knoernschild)
  OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                                                           March 2012
                                          May not be reproduced by any means without express permission. All rights reserved.
Principle: Modularity and Abstraction
The smaller the deployment artefact the better

➟ BUT MUST AT ALL COST avoid Operational Complexity.




                                                                      ?
Automatically manage dependencies
Automatically install required parts.
ABSTRACTION - operations must manage the WHOLE, not the constituent PARTS.

➟ The new OSGi Alliance R5.0 OBR (Resolver & Repository specifications)


 OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                             March 2012
                                         May not be reproduced by any means without express permission. All rights reserved.
Principle: Modularity and Abstraction
The smaller the deployment artefact the better

➟ BUT MUST AT ALL COST avoid Operational Complexity.
Automatically manage dependencies
Automatically install required parts.
ABSTRACTION - operations must manage the WHOLE, not the constituent PARTS.

➟ The new OSGi Alliance R5.0 OBR (Resolver & Repository specifications)


 OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                             March 2012
                                         May not be reproduced by any means without express permission. All rights reserved.
Principle: Modularity and Abstraction
The smaller the deployment artefact the better

➟ BUT MUST AT ALL COST avoid Operational Complexity.
Automatically manage dependencies
Automatically install required parts.
ABSTRACTION - operations must manage the WHOLE, not the constituent PARTS.

➟ The new OSGi Alliance R5.0 OBR (Resolver & Repository specifications)


 OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                             March 2012
                                         May not be reproduced by any means without express permission. All rights reserved.
circa 2005




Paremus introduce the Service Fabric - a distributed OSGi / OBR based
                           Cloud runtime.

OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                             March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
The Paremus Service Fabric
                                    A highly modular OSGi™ / OSGi Resolver based cloud runtime.

   (1..m) ‘Composite Applications’ (a.k.a. Systems) may be
dynamically assembled and run upon a single Service Fabric.

                                          SaaS




                                                                                                                 Java / Scala, [Blueprint, Declarative
                                                                                                                 Services, WARs & generic artefacts].



                                          IaaS


(1..n) compute resource (physical or virtual) may contribute
                 to create a Service Fabric
OSGi Dev Con 2012 - Cloud Workshop II                                 Copyright © 2005 - 2012 Paremus Ltd.                                         March 2012
                                                 May not be reproduced by any means without express permission. All rights reserved.
Operational simplicity through Abstraction
  The Service Fabric is a model driven runtime.
  To change a running System, simply change its model in the required manner.


Target State                                                                                                                     Runtime State

       =1
       =5
       =1




                 Re-Configure

   OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                                             March 2012
                                           May not be reproduced by any means without express permission. All rights reserved.
Updating the System
  The runtime will respond...

                                                                Provision Delta


Target State                                                                                                                          Runtime State

                                                               Planned Deltas
       =1                                                    e.g. Configuration
                                   M!del                          changes
       =5                       Target State
                                                                                                           Runtime
                                                             Unplanned Deltas                               Entity
                              "Structure#SLA$
       =1                                                      e.g. Resource
                                                                  failures




                                                                     Monitor

   OSGi Dev Con 2012 - Cloud Workshop II                             Copyright © 2005 - 2012 Paremus Ltd.                                             March 2012
                                                May not be reproduced by any means without express permission. All rights reserved.
Today - 2012
            Building consensus that next generation of cloud solution will
             be composite and will support dynamically assembly highly
                                modular applications.

             Growing realisation that OSGi, and specifically the new OBR
                       resolver specification, are key enablers.



OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                             March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
Dependency management
                      really is everything!



OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                             March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
OBR Resolution Process
                                                                                                                   OSGi Repository A


                                                                                                                                            Physical Repository
                     OSGi Resolver
                                                                                                                   OSGi Repository B




                                                                                                                   OSGi Repository C




                                                                                                                              ‘Scoped’ Repositories
                                                                                                                      (specific views of one - or more - physical
                                                                                                                                     repositories)


      RESOLVER ENVIRONMENT



OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                                                         March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
OBR Resolution Process
                                                                                                                   OSGi Repository A


                                                                                                                                            Physical Repository
                     OSGi Resolver
                                                                                                                   OSGi Repository B




                                                                                                                   OSGi Repository C


                 Resource/s +
                 Constraints
                 e.g. ‘Pricer (a,c)’                                                                                          ‘Scoped’ Repositories
                                                                                                                      (specific views of one - or more - physical
                                                                                                                                     repositories)


      RESOLVER ENVIRONMENT



OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                                                         March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
OBR Resolution Process
                                                                                                                   OSGi Repository A


                                                                                                                                            Physical Repository
                     OSGi Resolver
                                                                                                                   OSGi Repository B




                                                                                                                   OSGi Repository C


                 Resource/s +
                 Constraints
                 e.g. ‘Pricer (a,c)’                                                                                          ‘Scoped’ Repositories
                                                                                                                      (specific views of one - or more - physical
                                                                                                                                     repositories)


      RESOLVER ENVIRONMENT



OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                                                         March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
OBR Resolution Process
                                                                                                                    OSGi Repository A


                                                                                                                                             Physical Repository
                     OSGi Resolver
                                                                                                                    OSGi Repository B




                                                                                                                    OSGi Repository C


                                        Part ‘Pricer’
                 Resource/s +
                 Constraints
                 e.g. ‘Pricer (a,c)’                                                                                           ‘Scoped’ Repositories
                                                                                                                       (specific views of one - or more - physical
                                                                                                                                      repositories)


      RESOLVER ENVIRONMENT



OSGi Dev Con 2012 - Cloud Workshop II                         Copyright © 2005 - 2012 Paremus Ltd.                                                         March 2012
                                         May not be reproduced by any means without express permission. All rights reserved.
OBR Resolution Process
                                                                                                                    OSGi Repository A


                                                                                                                                             Physical Repository
                     OSGi Resolver
                                                                                                                    OSGi Repository B




                                                                                                                    OSGi Repository C


                                        Part ‘Pricer’
                 Resource/s +
                 Constraints
                 e.g. ‘Pricer (a,c)’                                                                                           ‘Scoped’ Repositories
                                                                                                                       (specific views of one - or more - physical
                                                                                                                                      repositories)


      RESOLVER ENVIRONMENT
                                                                         WHAT NOW?
OSGi Dev Con 2012 - Cloud Workshop II                         Copyright © 2005 - 2012 Paremus Ltd.                                                         March 2012
                                         May not be reproduced by any means without express permission. All rights reserved.
Centralised Resolver: push / pull resultant composites?
                                                                                                                          OSGi Repository A


                                                                                                                                              Physical Repository
                     OSGi Resolver
                                                                                                                          OSGi Repository B




                                                                                                                          OSGi Repository C
                                                                                                                   1

                                   Part ‘Pricer’



                                                                                                        2

                                                            Push / Pull
                                                         The new software
                                                             Artefact?
OSGi Dev Con 2012 - Cloud Workshop II                               Copyright © 2005 - 2012 Paremus Ltd.                                                March 2012
                                               May not be reproduced by any means without express permission. All rights reserved.
Centralised Resolver: push / pull resultant composites?

  • Better than a fully stacked VM (WHAT COULD BE
    WORSE?!).
  • Heavy resolving load on centralised (one or a few) ‘Cloud‘
    resolvers.
  • Shipping assembled composites to target nodes loads loads
    network and source nodes.
  • No visibility of local environment on target nodes. Resolution
    may be incorrect or not optimal.
  • Example of approach - Apache ACE?

OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                             March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
Centralised Resolver: Push / Pull List of Bundles?
                                                                                                                          OBR Repository A


                                                                                                                                             Physical Repository
                     OBR Resolver
                                                                                                                          OBR Repository B




                                                                                                                          OBR Repository C



                                   Part ‘Pricer’
                                                                  *AR
                                                                               Pricer                                                            2
                                                                                 bundle   a
                                                                                 bundle   b
                                                                                 bundle   c
                                                                                 bundle   d
                                                                                 bundle   e
                                                                                 bundle   f
                                                                                 bundle
                                                                                 bundle
                                                                                          g
                                                                                          h
                                                                                                        1




OSGi Dev Con 2012 - Cloud Workshop II                               Copyright © 2005 - 2012 Paremus Ltd.                                               March 2012
                                               May not be reproduced by any means without express permission. All rights reserved.
Centralised Resolver: Push / Pull List of Bundles?


 • Better than pushing / pulling composite artefacts.
 • Avoids some network loading - but not the loading
   on the centralised resolvers.
 • Still no visibility of local environment on target
   nodes. As before - resolution may be incorrect or
   not optimal.
 • Example of approach?


OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                             March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
Service Fabric approach - OSGi Resolver on each node                                                                                                       ✔
                                                                                                                                      $ ./posh
                                                                                                                                      Paremus Service Fabric Evaluation License,
                                        OSGi Resolver                                                                                 expires Wed Jan 09 23:59:59 EST 2013.
                                                                                                                                      ______________________________________
                                                                                                                                      Welcome to the Paremus Service Fabric!
                                                                                                                                      [paremus-ran-2.local.0]% lsb
                                                                                                                                       0 ACTIVE org.apache.felix.framework:3.2.1
                                                                                                                                       1 ACTIVE com.paremus.core.types:1.4.5
                                                                                                                                       2 ACTIVE com.paremus.core.hooks:1.4.5
                                                                                                                                       3 ACTIVE com.paremus.posh.runtime:1.4.5
                                                                                                                                       4 ACTIVE com.paremus.posh.shell:1.4.5
                                                                                                                                       5 ACTIVE com.paremus.console:1.4.5
                                                                                                                                       6 ACTIVE com.paremus.nimble.core:1.4.5
                                                                                                                                       7 ACTIVE com.paremus.nimble.repos:1.4.5
                                                                                                                                       8 ACTIVE com.paremus.nimble.cli:1.4.5
                                                                                                                                       9 ACTIVE org.apache.felix.configadmin:1.2.8
                                                                                                                                      10 ACTIVE com.paremus.util.cmds:1.4.5

                                                                                                                                         Resolver centric OSGi runtimes are
                                                                                                                                      lightweight runtimes ! (example Paremus
                                                                                                                                                      Nimble).
                                    An OSGi runtime
                                    instance




OSGi Dev Con 2012 - Cloud Workshop II                                Copyright © 2005 - 2012 Paremus Ltd.                                                                March 2012
                                                May not be reproduced by any means without express permission. All rights reserved.
Inject Root Resource & OSGi repository scope




                                                     negotiate
                                                                                                                   OBR Repository A


                                                                                                                                      Physical Repository
    Resource/s +
    Constraints                                                                                                    OBR Repository B
    e.g. ‘Pricer (a,c)’


                                                                                                                   OBR Repository C



A negotiation process selects optimal
nodes to host the ‘Pricer’ composite



OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                                               March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
Inject Root Resource & OSGi Repository scope



                                                                                                                   OBR Repository A


                                                                                                                                      Physical Repository
    Resource/s +
    Constraints                                                                                                    OBR Repository B
    e.g. ‘Pricer (a,c)’


                                                                                                                   OBR Repository C




Each node performs a local resolution.



OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                                               March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
Inject Root Resource & OSGi Repository scope




                                                     RESOLVE
                                                                                                                   OBR Repository A


                                                                                                                                      Physical Repository
    Resource/s +
    Constraints                                                                                                    OBR Repository B
    e.g. ‘Pricer (a,c)’


                                                                                                                   OBR Repository C




Each node performs a local resolution.



OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                                               March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
Each participating node asynchronous pulls artefacts




                                                                                                                                       Physical Repository
    Resource/s +
    Constraints
                                                                                                       Asynchronous flow of bundles from
    e.g. ‘Pricer (a,c)’                                                                                one or more physical repositories to
                                                                                                               participating nodes




Each node asynchronously downloads
required bundles that are not already local.

OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                                                March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
Repeat



   ‘Persistence (b,c)’


    ‘Gateway (b)’




OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                             March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
System Models
                    In RFC-133 we defined the notion of a ‘System’: A runtime
                    abstraction comprised of elements, wiring and runtime constraints.

                                                                                                                                                <system name="gateway.system" version="1.0"
                                                                                                                                                     boundary="fabric" repopath="gateway,nimble-rs,aries,aries-ext,fabric,fabric-ext,nimble-cmpn"
                                                                                                                                                 xmlns="http://schema.paremus.com/sf/1">
                                                                                                                                                 <description>Deploys a pricer and gateway component wired together using slp and essencermi</description>

                                                                                                                                                 <!-- set SystemGroup for security control -->
                                                                                                                                                 <nature group="demo" />

                                                                                                                                                 <system name="pricer" boundary="fibre">
                                                                                                                                                  <system.part category="msf" name="com.example.pricer">
                                                                                                                                                   <property name="type" value="firm" />
                                                                                                                                                  </system.part>
                                                                                                                                                  <system.part category="osgi.active.bundle" name="com.paremus.dosgi.dsw.essencermi" />
                                                                                                                                                  <system.part category="osgi.active.bundle" name="com.paremus.dosgi.discovery.slp" />
                                                                                                                                                  <system.part category="osgi.active.bundle" name="com.paremus.dosgi.topologymanager" />
                                                                                                                                                  <replication.handler type="scalable">
                                                                                                                                                   <property name="scaleFactor" value="1" type="float" />
                                                                                                                                                   <property name="fixedDelta" value="-2" type="integer" />
                                                                                                                                                   <property name="minimum" value="1" type="integer" />
                                                                                                                                                  </replication.handler>
                                                                                                                                                 </system>

                                                                                                                                                 <system name="gateway" boundary="fibre">
                                                                                                                                                  <system.part category="msf" name="com.example.gateway">
                                                                                                                                                   <property name="id" value="foo" />
                                                                                                                                                  </system.part>
                                                                                                                                                  <system.part category="osgi.active.bundle" name="com.paremus.dosgi.dsw.essencermi" />
                                                                                                                                                  <system.part category="osgi.active.bundle" name="com.paremus.dosgi.discovery.slp" />
                                                                                                                                                  <system.part category="osgi.active.bundle" name="com.paremus.dosgi.topologymanager" />
                                                                                                                                                 </system>
                                                                                                                                                </system>



                                          Pricer (b,c) [1..n]     Persistence (a,c) [1..1]           Gateway (b) [1..m]


Physical Deployment                                    Running System = FX Trading                                                                  System Model = FX Trading




  OSGi Dev Con 2012 - Cloud Workshop II                                        Copyright © 2005 - 2012 Paremus Ltd.                                                                                                      March 2012
                                                          May not be reproduced by any means without express permission. All rights reserved.
A ‘System’ Model - (example Paremus Service Fabric)
<system name="fx.system" version="1.0"
     boundary="fabric" repopath="gateway,nimble-rs,aries,aries-ext,fabric,fabric-ext,nimble-cmpn"
 xmlns="http://schema.paremus.com/sf/1">
 <description>Deploys a pricer and gateway component wired together using slp and essencermi</description>

  <!-- set SystemGroup for security control -->
  <nature group="demo" />

  <system name="pricer" boundary="fibre">
   <system.part category="msf" name="com.example.pricer">
    <property name="type" value="firm" />
   </system.part>                                                                                                                Defines system name and version.
   <system.part category="osgi.active.bundle" name="com.paremus.dosgi.dsw.essencermi" />                                         Whether System is distributed.
   <system.part category="osgi.active.bundle" name="com.paremus.dosgi.discovery.slp" />
   <system.part category="osgi.active.bundle" name="com.paremus.dosgi.topologymanager" />
   <replication.handler type="scalable">                                                                                         The OSGi repositories to be used when
    <property name="scaleFactor" value="1" type="float" />                                                                        assembling Parts.
    <property name="fixedDelta" value="-2" type="integer" />
    <property name="minimum" value="1" type="integer" />
   </replication.handler>
  </system>

...
...
...

</system>




 OSGi Dev Con 2012 - Cloud Workshop II                          Copyright © 2005 - 2012 Paremus Ltd.                                                      March 2012
                                           May not be reproduced by any means without express permission. All rights reserved.
A ‘System’ Model - (example Paremus Service Fabric)
<system name="fx.system" version="1.0"
     boundary="fabric" repopath="gateway,nimble-rs,aries,aries-ext,fabric,fabric-ext,nimble-cmpn"
 xmlns="http://schema.paremus.com/sf/1">
 <description>Deploys a pricer and gateway component wired together using slp and essencermi</description>

  <!-- set SystemGroup for security control -->
  <nature group="demo" />

  <system name="pricer" boundary="fibre">
   <system.part category="msf" name="com.example.pricer">
    <property name="type" value="firm" />
   </system.part>                                                                                                                The Pricer Part. A managed service
   <system.part category="osgi.active.bundle" name="com.paremus.dosgi.dsw.essencermi" />                                         fabric based built from
   <system.part category="osgi.active.bundle" name="com.paremus.dosgi.discovery.slp" />
                                                                                                                                 com.example.pricer. An
   <system.part category="osgi.active.bundle" name="com.paremus.dosgi.topologymanager" />
   <replication.handler type="scalable">                                                                                         instance of which is created with
    <property name="scaleFactor" value="1" type="float" />                                                                        attribute ‘firm’
    <property name="fixedDelta" value="-2" type="integer" />
    <property name="minimum" value="1" type="integer" />
   </replication.handler>
  </system>

....
....
....


</system>




 OSGi Dev Con 2012 - Cloud Workshop II                          Copyright © 2005 - 2012 Paremus Ltd.                                                       March 2012
                                           May not be reproduced by any means without express permission. All rights reserved.
A ‘System’ Model - (Paremus Service Fabric)
<system name="fx.system" version="1.0"
     boundary="fabric" repopath="gateway,nimble-rs,aries,aries-ext,fabric,fabric-ext,nimble-cmpn"
 xmlns="http://schema.paremus.com/sf/1">
 <description>Deploys a pricer and gateway component wired together using slp and essencermi</description>

  <!-- set SystemGroup for security control -->
  <nature group="demo" />

  <system name="pricer" boundary="fibre">
   <system.part category="msf" name="com.example.pricer">                                                                                       AVRO?
    <property name="type" value="firm" />
   </system.part>
   <system.part category="osgi.active.bundle" name="com.paremus.dosgi.dsw.essencermi" />
   <system.part category="osgi.active.bundle" name="com.paremus.dosgi.discovery.slp" />
   <system.part category="osgi.active.bundle" name="com.paremus.dosgi.topologymanager" />
   <replication.handler type="scalable">
    <property name="scaleFactor" value="1" type="float" />                                                                        Remote Services using the Paremus
    <property name="fixedDelta" value="-2" type="integer" />                                                                      implementation of the OSGI Alliance RSA
    <property name="minimum" value="1" type="integer" />                                                                         specification.
   </replication.handler>
  </system>
                                                                                                                                 In this example Essence RMI is the
....                                                                                                                             protocol - and SLP is
....                                                                                                                             used for discover. Normally we
....
                                                                                                                                 recommend DDS - which is the default.

</system>



 OSGi Dev Con 2012 - Cloud Workshop II                          Copyright © 2005 - 2012 Paremus Ltd.                                                       March 2012
                                           May not be reproduced by any means without express permission. All rights reserved.
A ‘System’ Model - (Paremus Service Fabric)
<system name="fx.system" version="1.0"
     boundary="fabric" repopath="gateway,nimble-rs,aries,aries-ext,fabric,fabric-ext,nimble-cmpn"
 xmlns="http://schema.paremus.com/sf/1">
 <description>Deploys a pricer and gateway component wired together using slp and essencermi</description>

  <!-- set SystemGroup for security control -->
  <nature group="demo" />

  <system name="pricer" boundary="fibre">
   <system.part category="msf" name="com.example.pricer">
    <property name="type" value="firm" />
   </system.part>                                                                                                                                  ....
   <system.part category="osgi.active.bundle" name="com.paremus.dosgi.dsw.essencermi" />
   <system.part category="osgi.active.bundle" name="com.paremus.dosgi.discovery.slp" />
   <system.part category="osgi.active.bundle" name="com.paremus.dosgi.topologymanager" />
   <replication.handler type="scalable">                                                                                                   1
    <property name="scaleFactor" value="1" type="float" />
    <property name="fixedDelta" value="-2" type="integer" />
    <property name="minimum" value="1" type="integer" />
   </replication.handler>                                                                                                                                    Many
  </system>

....                                                                                                                             Replication Handlers control the number
....                                                                                                                             of Part instances required in the
....                                                                                                                             runtime.
</system>




 OSGi Dev Con 2012 - Cloud Workshop II                          Copyright © 2005 - 2012 Paremus Ltd.                                                          March 2012
                                           May not be reproduced by any means without express permission. All rights reserved.
DEMO TIME
  1. Start a client.
  2. Start single node Service Fabric & a simple OBR repository.
  3. Load Repository & System model.
  4. Deploy System.
  5. Apply a property change to the running System.




OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                             March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
Control Loops & Hierarchies

                                        automatic or manual Outer Control Loop (IaaS)
                                                         controlling number of VM resources
                                                                  in the environment




                                                  reactive Inner Control Loop (PaaS)
                                                                 Controls distribution
                                                           of software components across
                                                          population of available resources



                                                                         Cloud
                                                                        Runtime


               Highly agile, stable & robust systems tend to use (fast) inner and (slow) outer
               provisioning control loops (reference http://www.ist-selfman.org/wiki/images/9/94/
               SelfmanFACS06talk.pdf).

OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                             March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
BNDTools <> Service Fabric Integration




                                        Code                                                                Run

                                           An OBR centric end-to-end solution




OSGi Dev Con 2012 - Cloud Workshop II                               Copyright © 2005 - 2012 Paremus Ltd.                             March 2012
                                               May not be reproduced by any means without express permission. All rights reserved.
Modular Systems are Maintainable Systems


                                                                                                          Applicability w.r.t OPEX of VM based (non modular)
                                                                                                     } private Cloud solutions.




  Anne Thomas Manes (Gartner) – SOA Symposium: Berlin, October 2010



OSGi Dev Con 2012 - Cloud Workshop II                        Copyright © 2005 - 2012 Paremus Ltd.                                                     March 2012
                                        May not be reproduced by any means without express permission. All rights reserved.
Thanks


                                            www.paremus.com


                          Service Fabric - www.paremus.com/psf
                            Nimble - www.paremus.com/nimble
                              Bndtools - http://bndtools.org


                                           info@paremus.com


Service Fabric Overview                                 Copyright © 2012 Paremus Ltd.                                February 2012
                               May not be reproduced by any means without express permission. All rights reserved.

Contenu connexe

Tendances

Vmware 虚拟花技术作为云计算的平台
Vmware 虚拟花技术作为云计算的平台Vmware 虚拟花技术作为云计算的平台
Vmware 虚拟花技术作为云计算的平台
George Ang
 
Hive solutions cloudviews 2010 presentation
Hive solutions cloudviews 2010 presentationHive solutions cloudviews 2010 presentation
Hive solutions cloudviews 2010 presentation
EuroCloud
 
How to Transform Enterprise Applications to On-premise Clouds with Wipro and ...
How to Transform Enterprise Applications to On-premise Clouds with Wipro and ...How to Transform Enterprise Applications to On-premise Clouds with Wipro and ...
How to Transform Enterprise Applications to On-premise Clouds with Wipro and ...
Eucalyptus Systems, Inc.
 
Day 3 p4 - cloud strategy
Day 3   p4 - cloud strategyDay 3   p4 - cloud strategy
Day 3 p4 - cloud strategy
Lilian Schaffer
 
HP Server og Lagring SPOR 1
HP Server og Lagring SPOR 1HP Server og Lagring SPOR 1
HP Server og Lagring SPOR 1
HP Norge
 
C bu06 planning_your_cloud_education
C bu06 planning_your_cloud_educationC bu06 planning_your_cloud_education
C bu06 planning_your_cloud_education
Megan Irvine
 
demystifying cloud computing
demystifying cloud computing demystifying cloud computing
demystifying cloud computing
Minu S
 

Tendances (18)

Cloud Computing - Making IT Simple
Cloud Computing - Making IT SimpleCloud Computing - Making IT Simple
Cloud Computing - Making IT Simple
 
Vmware 虚拟花技术作为云计算的平台
Vmware 虚拟花技术作为云计算的平台Vmware 虚拟花技术作为云计算的平台
Vmware 虚拟花技术作为云计算的平台
 
5 Cloud Commandments - Why Cloud Management Makes Sense
5 Cloud Commandments - Why Cloud Management Makes Sense5 Cloud Commandments - Why Cloud Management Makes Sense
5 Cloud Commandments - Why Cloud Management Makes Sense
 
Introducing OneCommand Vision 3.0, I/O management that gives your application...
Introducing OneCommand Vision 3.0, I/O management that gives your application...Introducing OneCommand Vision 3.0, I/O management that gives your application...
Introducing OneCommand Vision 3.0, I/O management that gives your application...
 
colony framework & omni platform
colony framework & omni platformcolony framework & omni platform
colony framework & omni platform
 
Hive solutions cloudviews 2010 presentation
Hive solutions cloudviews 2010 presentationHive solutions cloudviews 2010 presentation
Hive solutions cloudviews 2010 presentation
 
How to Transform Enterprise Applications to On-premise Clouds with Wipro and ...
How to Transform Enterprise Applications to On-premise Clouds with Wipro and ...How to Transform Enterprise Applications to On-premise Clouds with Wipro and ...
How to Transform Enterprise Applications to On-premise Clouds with Wipro and ...
 
101 cd 1345-1415
101 cd 1345-1415101 cd 1345-1415
101 cd 1345-1415
 
UShareSoft presented in OW2 track @ Solutions Linux 2012
UShareSoft presented in OW2 track @ Solutions Linux 2012UShareSoft presented in OW2 track @ Solutions Linux 2012
UShareSoft presented in OW2 track @ Solutions Linux 2012
 
Day 3 p4 - cloud strategy
Day 3   p4 - cloud strategyDay 3   p4 - cloud strategy
Day 3 p4 - cloud strategy
 
102 1630 1700
102 1630 1700102 1630 1700
102 1630 1700
 
Agile 2012 Conference briefing deck for Analyst and Press
Agile 2012 Conference briefing deck for Analyst and Press Agile 2012 Conference briefing deck for Analyst and Press
Agile 2012 Conference briefing deck for Analyst and Press
 
HP Server og Lagring SPOR 1
HP Server og Lagring SPOR 1HP Server og Lagring SPOR 1
HP Server og Lagring SPOR 1
 
G2iX CIO Forum - Updated CIO Innovation Toolkit
G2iX CIO Forum - Updated CIO Innovation ToolkitG2iX CIO Forum - Updated CIO Innovation Toolkit
G2iX CIO Forum - Updated CIO Innovation Toolkit
 
Orange is v cops
Orange is v copsOrange is v cops
Orange is v cops
 
C bu06 planning_your_cloud_education
C bu06 planning_your_cloud_educationC bu06 planning_your_cloud_education
C bu06 planning_your_cloud_education
 
Building a right sized, do-anything runtime using OSGi technologies: a case s...
Building a right sized, do-anything runtime using OSGi technologies: a case s...Building a right sized, do-anything runtime using OSGi technologies: a case s...
Building a right sized, do-anything runtime using OSGi technologies: a case s...
 
demystifying cloud computing
demystifying cloud computing demystifying cloud computing
demystifying cloud computing
 

En vedette

En vedette (6)

Cloud and OSGi at eBay - OSGi Cloud Workshop March 2012
Cloud and OSGi at eBay - OSGi Cloud Workshop March 2012Cloud and OSGi at eBay - OSGi Cloud Workshop March 2012
Cloud and OSGi at eBay - OSGi Cloud Workshop March 2012
 
Aruba Cloud Workshop @SMAU2012
Aruba Cloud Workshop @SMAU2012Aruba Cloud Workshop @SMAU2012
Aruba Cloud Workshop @SMAU2012
 
Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop Ma...
Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop Ma...Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop Ma...
Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop Ma...
 
Cat user guide cloud assesment tool
Cat user guide cloud assesment toolCat user guide cloud assesment tool
Cat user guide cloud assesment tool
 
Perform a Cloud Readiness Assessment for Your Own Company
Perform a Cloud Readiness Assessment for Your Own CompanyPerform a Cloud Readiness Assessment for Your Own Company
Perform a Cloud Readiness Assessment for Your Own Company
 
Five keys to successful cloud migration
Five keys to successful cloud migrationFive keys to successful cloud migration
Five keys to successful cloud migration
 

Similaire à Paremus Cloud and OSGi Beyond the VM - OSGi Cloud Workshop March 2012

20121204 open technet_openstack_이틀만하면나처럼할수있다
20121204 open technet_openstack_이틀만하면나처럼할수있다20121204 open technet_openstack_이틀만하면나처럼할수있다
20121204 open technet_openstack_이틀만하면나처럼할수있다
Nalee Jang
 
Track2 -刘希斌----c ie-net-openstack-2012-apac
Track2 -刘希斌----c ie-net-openstack-2012-apacTrack2 -刘希斌----c ie-net-openstack-2012-apac
Track2 -刘希斌----c ie-net-openstack-2012-apac
OpenCity Community
 
Cloud computing bringing the dark side of enterprise apps into the light by...
Cloud computing   bringing the dark side of enterprise apps into the light by...Cloud computing   bringing the dark side of enterprise apps into the light by...
Cloud computing bringing the dark side of enterprise apps into the light by...
Khazret Sapenov
 
Open stack summit spring 2014 hybrid cloud landmines - 2014-05-15
Open stack summit spring 2014   hybrid cloud landmines - 2014-05-15Open stack summit spring 2014   hybrid cloud landmines - 2014-05-15
Open stack summit spring 2014 hybrid cloud landmines - 2014-05-15
drumulonimbus
 
PuppetCamp London 2013 - Automated OS and App deployment using Puppet and Raz...
PuppetCamp London 2013 - Automated OS and App deployment using Puppet and Raz...PuppetCamp London 2013 - Automated OS and App deployment using Puppet and Raz...
PuppetCamp London 2013 - Automated OS and App deployment using Puppet and Raz...
Jonas Rosland
 

Similaire à Paremus Cloud and OSGi Beyond the VM - OSGi Cloud Workshop March 2012 (20)

JVM Multitenancy (JavaOne 2012)
JVM Multitenancy (JavaOne 2012)JVM Multitenancy (JavaOne 2012)
JVM Multitenancy (JavaOne 2012)
 
Getting Started Developing with Platform as a Service
Getting Started Developing with Platform as a ServiceGetting Started Developing with Platform as a Service
Getting Started Developing with Platform as a Service
 
20121204 open technet_openstack_이틀만하면나처럼할수있다
20121204 open technet_openstack_이틀만하면나처럼할수있다20121204 open technet_openstack_이틀만하면나처럼할수있다
20121204 open technet_openstack_이틀만하면나처럼할수있다
 
Cisco one pk basic
Cisco one pk basicCisco one pk basic
Cisco one pk basic
 
Cisco one pk basic
Cisco one pk basicCisco one pk basic
Cisco one pk basic
 
MAY 6, 2012: Interop Las Vegas "Why Open Clouds Are Winning"
MAY 6, 2012: Interop Las Vegas "Why Open Clouds Are Winning"MAY 6, 2012: Interop Las Vegas "Why Open Clouds Are Winning"
MAY 6, 2012: Interop Las Vegas "Why Open Clouds Are Winning"
 
Track2 -刘希斌----c ie-net-openstack-2012-apac
Track2 -刘希斌----c ie-net-openstack-2012-apacTrack2 -刘希斌----c ie-net-openstack-2012-apac
Track2 -刘希斌----c ie-net-openstack-2012-apac
 
Modular Java EE in the Cloud
Modular Java EE in the CloudModular Java EE in the Cloud
Modular Java EE in the Cloud
 
Cloud computing bringing the dark side of enterprise apps into the light by...
Cloud computing   bringing the dark side of enterprise apps into the light by...Cloud computing   bringing the dark side of enterprise apps into the light by...
Cloud computing bringing the dark side of enterprise apps into the light by...
 
Windows Azure overview webinar by Sentri
Windows Azure overview webinar by SentriWindows Azure overview webinar by Sentri
Windows Azure overview webinar by Sentri
 
Modular architecture today
Modular architecture todayModular architecture today
Modular architecture today
 
Sioux Hot-or-Not: Domain Driven Design (Edwin Van Dillen)
Sioux Hot-or-Not: Domain Driven Design (Edwin Van Dillen)Sioux Hot-or-Not: Domain Driven Design (Edwin Van Dillen)
Sioux Hot-or-Not: Domain Driven Design (Edwin Van Dillen)
 
Open stack summit spring 2014 hybrid cloud landmines - 2014-05-15
Open stack summit spring 2014   hybrid cloud landmines - 2014-05-15Open stack summit spring 2014   hybrid cloud landmines - 2014-05-15
Open stack summit spring 2014 hybrid cloud landmines - 2014-05-15
 
Adapting Apache UIMA to OSGi
Adapting Apache UIMA to OSGiAdapting Apache UIMA to OSGi
Adapting Apache UIMA to OSGi
 
OSGi and Private Clouds
OSGi and Private CloudsOSGi and Private Clouds
OSGi and Private Clouds
 
VMUG Sweden 2013-02-08 - Puppet and Razor
VMUG Sweden 2013-02-08 - Puppet and RazorVMUG Sweden 2013-02-08 - Puppet and Razor
VMUG Sweden 2013-02-08 - Puppet and Razor
 
PuppetCamp London 2013 - Automated OS and App deployment using Puppet and Raz...
PuppetCamp London 2013 - Automated OS and App deployment using Puppet and Raz...PuppetCamp London 2013 - Automated OS and App deployment using Puppet and Raz...
PuppetCamp London 2013 - Automated OS and App deployment using Puppet and Raz...
 
Why is Infrastructure-as-Code essential in the Cloud Age?
Why is Infrastructure-as-Code essential in the Cloud Age?Why is Infrastructure-as-Code essential in the Cloud Age?
Why is Infrastructure-as-Code essential in the Cloud Age?
 
MySQL HA Solutions
MySQL HA SolutionsMySQL HA Solutions
MySQL HA Solutions
 
Zabbix for Hybrid Cloud Management
Zabbix for Hybrid Cloud ManagementZabbix for Hybrid Cloud Management
Zabbix for Hybrid Cloud Management
 

Plus de mfrancis

Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
mfrancis
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
mfrancis
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
mfrancis
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
mfrancis
 

Plus de mfrancis (20)

Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
 
OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)
 
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
 
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank LyaruuOSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
 
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
 
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
 
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
 
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
 
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
 
OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
 
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
 
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
 
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
 
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
 
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
 
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
 
How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)
 

Dernier

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Dernier (20)

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...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 

Paremus Cloud and OSGi Beyond the VM - OSGi Cloud Workshop March 2012

  • 1. Cloud & OSGi - Beyond the VM Richard Nicholson: Paremus CEO www.paremus.com President of the OSGi Alliance OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 2. Virtual Machine Man Amazon EC2, RackSpace, Azure? They all suffer from the same fundamental design flaw. Virtual Machine image centric Cloud solutions: • Cause excessive network infrastructure load. • Cause excessive storage consumption - caused by virtual machine image sprawl. • Fail to address to primary issue - the ongoing cost of maintaining applications. OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 3. VM images: The Wrong deployment artefact! Type of Deployment Artefact Artefact Module Centric Image Centric Machine Image ~ 1 to 2 Gbytes per node ~ 1 to 2 Gbytes per node Application ~ 1 TO 100 Mbytes ~ 1 to 2 Gbytes per node Application Patch ~ 100’s Kbytes ~ 1 to 2 Gbytes per node Property / Config Changes ~ 1 Kbyte ~ 1 to 2 Gbytes per node OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 4. Observation m ? o 1. The Unit of Deployment is... Need to Optimise • The unit of fix / maintenance. • The potential unit of re-use. Ro Response Also... Detect t he Decision i n 2. Time to deploy - directly influences... • Time to recover a failed Business Service. r k • Time to scale an environment in response to business load. i s K I Patterns of Modular Architecture (Kirk Knoernschild) OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 5. Principle: Modularity and Abstraction The smaller the deployment artefact the better ➟ BUT MUST AT ALL COST avoid Operational Complexity. ? Automatically manage dependencies Automatically install required parts. ABSTRACTION - operations must manage the WHOLE, not the constituent PARTS. ➟ The new OSGi Alliance R5.0 OBR (Resolver & Repository specifications) OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 6. Principle: Modularity and Abstraction The smaller the deployment artefact the better ➟ BUT MUST AT ALL COST avoid Operational Complexity. Automatically manage dependencies Automatically install required parts. ABSTRACTION - operations must manage the WHOLE, not the constituent PARTS. ➟ The new OSGi Alliance R5.0 OBR (Resolver & Repository specifications) OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 7. Principle: Modularity and Abstraction The smaller the deployment artefact the better ➟ BUT MUST AT ALL COST avoid Operational Complexity. Automatically manage dependencies Automatically install required parts. ABSTRACTION - operations must manage the WHOLE, not the constituent PARTS. ➟ The new OSGi Alliance R5.0 OBR (Resolver & Repository specifications) OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 8. circa 2005 Paremus introduce the Service Fabric - a distributed OSGi / OBR based Cloud runtime. OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 9. The Paremus Service Fabric A highly modular OSGi™ / OSGi Resolver based cloud runtime. (1..m) ‘Composite Applications’ (a.k.a. Systems) may be dynamically assembled and run upon a single Service Fabric. SaaS Java / Scala, [Blueprint, Declarative Services, WARs & generic artefacts]. IaaS (1..n) compute resource (physical or virtual) may contribute to create a Service Fabric OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 10. Operational simplicity through Abstraction The Service Fabric is a model driven runtime. To change a running System, simply change its model in the required manner. Target State Runtime State =1 =5 =1 Re-Configure OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 11. Updating the System The runtime will respond... Provision Delta Target State Runtime State Planned Deltas =1 e.g. Configuration M!del changes =5 Target State Runtime Unplanned Deltas Entity "Structure#SLA$ =1 e.g. Resource failures Monitor OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 12. Today - 2012 Building consensus that next generation of cloud solution will be composite and will support dynamically assembly highly modular applications. Growing realisation that OSGi, and specifically the new OBR resolver specification, are key enablers. OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 13. Dependency management really is everything! OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 14. OBR Resolution Process OSGi Repository A Physical Repository OSGi Resolver OSGi Repository B OSGi Repository C ‘Scoped’ Repositories (specific views of one - or more - physical repositories) RESOLVER ENVIRONMENT OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 15. OBR Resolution Process OSGi Repository A Physical Repository OSGi Resolver OSGi Repository B OSGi Repository C Resource/s + Constraints e.g. ‘Pricer (a,c)’ ‘Scoped’ Repositories (specific views of one - or more - physical repositories) RESOLVER ENVIRONMENT OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 16. OBR Resolution Process OSGi Repository A Physical Repository OSGi Resolver OSGi Repository B OSGi Repository C Resource/s + Constraints e.g. ‘Pricer (a,c)’ ‘Scoped’ Repositories (specific views of one - or more - physical repositories) RESOLVER ENVIRONMENT OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 17. OBR Resolution Process OSGi Repository A Physical Repository OSGi Resolver OSGi Repository B OSGi Repository C Part ‘Pricer’ Resource/s + Constraints e.g. ‘Pricer (a,c)’ ‘Scoped’ Repositories (specific views of one - or more - physical repositories) RESOLVER ENVIRONMENT OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 18. OBR Resolution Process OSGi Repository A Physical Repository OSGi Resolver OSGi Repository B OSGi Repository C Part ‘Pricer’ Resource/s + Constraints e.g. ‘Pricer (a,c)’ ‘Scoped’ Repositories (specific views of one - or more - physical repositories) RESOLVER ENVIRONMENT WHAT NOW? OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 19. Centralised Resolver: push / pull resultant composites? OSGi Repository A Physical Repository OSGi Resolver OSGi Repository B OSGi Repository C 1 Part ‘Pricer’ 2 Push / Pull The new software Artefact? OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 20. Centralised Resolver: push / pull resultant composites? • Better than a fully stacked VM (WHAT COULD BE WORSE?!). • Heavy resolving load on centralised (one or a few) ‘Cloud‘ resolvers. • Shipping assembled composites to target nodes loads loads network and source nodes. • No visibility of local environment on target nodes. Resolution may be incorrect or not optimal. • Example of approach - Apache ACE? OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 21. Centralised Resolver: Push / Pull List of Bundles? OBR Repository A Physical Repository OBR Resolver OBR Repository B OBR Repository C Part ‘Pricer’ *AR Pricer 2 bundle a bundle b bundle c bundle d bundle e bundle f bundle bundle g h 1 OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 22. Centralised Resolver: Push / Pull List of Bundles? • Better than pushing / pulling composite artefacts. • Avoids some network loading - but not the loading on the centralised resolvers. • Still no visibility of local environment on target nodes. As before - resolution may be incorrect or not optimal. • Example of approach? OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 23. Service Fabric approach - OSGi Resolver on each node ✔ $ ./posh Paremus Service Fabric Evaluation License, OSGi Resolver expires Wed Jan 09 23:59:59 EST 2013. ______________________________________ Welcome to the Paremus Service Fabric! [paremus-ran-2.local.0]% lsb 0 ACTIVE org.apache.felix.framework:3.2.1 1 ACTIVE com.paremus.core.types:1.4.5 2 ACTIVE com.paremus.core.hooks:1.4.5 3 ACTIVE com.paremus.posh.runtime:1.4.5 4 ACTIVE com.paremus.posh.shell:1.4.5 5 ACTIVE com.paremus.console:1.4.5 6 ACTIVE com.paremus.nimble.core:1.4.5 7 ACTIVE com.paremus.nimble.repos:1.4.5 8 ACTIVE com.paremus.nimble.cli:1.4.5 9 ACTIVE org.apache.felix.configadmin:1.2.8 10 ACTIVE com.paremus.util.cmds:1.4.5 Resolver centric OSGi runtimes are lightweight runtimes ! (example Paremus Nimble). An OSGi runtime instance OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 24. Inject Root Resource & OSGi repository scope negotiate OBR Repository A Physical Repository Resource/s + Constraints OBR Repository B e.g. ‘Pricer (a,c)’ OBR Repository C A negotiation process selects optimal nodes to host the ‘Pricer’ composite OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 25. Inject Root Resource & OSGi Repository scope OBR Repository A Physical Repository Resource/s + Constraints OBR Repository B e.g. ‘Pricer (a,c)’ OBR Repository C Each node performs a local resolution. OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 26. Inject Root Resource & OSGi Repository scope RESOLVE OBR Repository A Physical Repository Resource/s + Constraints OBR Repository B e.g. ‘Pricer (a,c)’ OBR Repository C Each node performs a local resolution. OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 27. Each participating node asynchronous pulls artefacts Physical Repository Resource/s + Constraints Asynchronous flow of bundles from e.g. ‘Pricer (a,c)’ one or more physical repositories to participating nodes Each node asynchronously downloads required bundles that are not already local. OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 28. Repeat ‘Persistence (b,c)’ ‘Gateway (b)’ OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 29. System Models In RFC-133 we defined the notion of a ‘System’: A runtime abstraction comprised of elements, wiring and runtime constraints. <system name="gateway.system" version="1.0" boundary="fabric" repopath="gateway,nimble-rs,aries,aries-ext,fabric,fabric-ext,nimble-cmpn" xmlns="http://schema.paremus.com/sf/1"> <description>Deploys a pricer and gateway component wired together using slp and essencermi</description> <!-- set SystemGroup for security control --> <nature group="demo" /> <system name="pricer" boundary="fibre"> <system.part category="msf" name="com.example.pricer"> <property name="type" value="firm" /> </system.part> <system.part category="osgi.active.bundle" name="com.paremus.dosgi.dsw.essencermi" /> <system.part category="osgi.active.bundle" name="com.paremus.dosgi.discovery.slp" /> <system.part category="osgi.active.bundle" name="com.paremus.dosgi.topologymanager" /> <replication.handler type="scalable"> <property name="scaleFactor" value="1" type="float" /> <property name="fixedDelta" value="-2" type="integer" /> <property name="minimum" value="1" type="integer" /> </replication.handler> </system> <system name="gateway" boundary="fibre"> <system.part category="msf" name="com.example.gateway"> <property name="id" value="foo" /> </system.part> <system.part category="osgi.active.bundle" name="com.paremus.dosgi.dsw.essencermi" /> <system.part category="osgi.active.bundle" name="com.paremus.dosgi.discovery.slp" /> <system.part category="osgi.active.bundle" name="com.paremus.dosgi.topologymanager" /> </system> </system> Pricer (b,c) [1..n] Persistence (a,c) [1..1] Gateway (b) [1..m] Physical Deployment Running System = FX Trading System Model = FX Trading OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 30. A ‘System’ Model - (example Paremus Service Fabric) <system name="fx.system" version="1.0" boundary="fabric" repopath="gateway,nimble-rs,aries,aries-ext,fabric,fabric-ext,nimble-cmpn" xmlns="http://schema.paremus.com/sf/1"> <description>Deploys a pricer and gateway component wired together using slp and essencermi</description> <!-- set SystemGroup for security control --> <nature group="demo" /> <system name="pricer" boundary="fibre"> <system.part category="msf" name="com.example.pricer"> <property name="type" value="firm" /> </system.part> Defines system name and version. <system.part category="osgi.active.bundle" name="com.paremus.dosgi.dsw.essencermi" /> Whether System is distributed. <system.part category="osgi.active.bundle" name="com.paremus.dosgi.discovery.slp" /> <system.part category="osgi.active.bundle" name="com.paremus.dosgi.topologymanager" /> <replication.handler type="scalable"> The OSGi repositories to be used when <property name="scaleFactor" value="1" type="float" /> assembling Parts. <property name="fixedDelta" value="-2" type="integer" /> <property name="minimum" value="1" type="integer" /> </replication.handler> </system> ... ... ... </system> OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 31. A ‘System’ Model - (example Paremus Service Fabric) <system name="fx.system" version="1.0" boundary="fabric" repopath="gateway,nimble-rs,aries,aries-ext,fabric,fabric-ext,nimble-cmpn" xmlns="http://schema.paremus.com/sf/1"> <description>Deploys a pricer and gateway component wired together using slp and essencermi</description> <!-- set SystemGroup for security control --> <nature group="demo" /> <system name="pricer" boundary="fibre"> <system.part category="msf" name="com.example.pricer"> <property name="type" value="firm" /> </system.part> The Pricer Part. A managed service <system.part category="osgi.active.bundle" name="com.paremus.dosgi.dsw.essencermi" /> fabric based built from <system.part category="osgi.active.bundle" name="com.paremus.dosgi.discovery.slp" /> com.example.pricer. An <system.part category="osgi.active.bundle" name="com.paremus.dosgi.topologymanager" /> <replication.handler type="scalable"> instance of which is created with <property name="scaleFactor" value="1" type="float" /> attribute ‘firm’ <property name="fixedDelta" value="-2" type="integer" /> <property name="minimum" value="1" type="integer" /> </replication.handler> </system> .... .... .... </system> OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 32. A ‘System’ Model - (Paremus Service Fabric) <system name="fx.system" version="1.0" boundary="fabric" repopath="gateway,nimble-rs,aries,aries-ext,fabric,fabric-ext,nimble-cmpn" xmlns="http://schema.paremus.com/sf/1"> <description>Deploys a pricer and gateway component wired together using slp and essencermi</description> <!-- set SystemGroup for security control --> <nature group="demo" /> <system name="pricer" boundary="fibre"> <system.part category="msf" name="com.example.pricer"> AVRO? <property name="type" value="firm" /> </system.part> <system.part category="osgi.active.bundle" name="com.paremus.dosgi.dsw.essencermi" /> <system.part category="osgi.active.bundle" name="com.paremus.dosgi.discovery.slp" /> <system.part category="osgi.active.bundle" name="com.paremus.dosgi.topologymanager" /> <replication.handler type="scalable"> <property name="scaleFactor" value="1" type="float" /> Remote Services using the Paremus <property name="fixedDelta" value="-2" type="integer" /> implementation of the OSGI Alliance RSA <property name="minimum" value="1" type="integer" /> specification. </replication.handler> </system> In this example Essence RMI is the .... protocol - and SLP is .... used for discover. Normally we .... recommend DDS - which is the default. </system> OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 33. A ‘System’ Model - (Paremus Service Fabric) <system name="fx.system" version="1.0" boundary="fabric" repopath="gateway,nimble-rs,aries,aries-ext,fabric,fabric-ext,nimble-cmpn" xmlns="http://schema.paremus.com/sf/1"> <description>Deploys a pricer and gateway component wired together using slp and essencermi</description> <!-- set SystemGroup for security control --> <nature group="demo" /> <system name="pricer" boundary="fibre"> <system.part category="msf" name="com.example.pricer"> <property name="type" value="firm" /> </system.part> .... <system.part category="osgi.active.bundle" name="com.paremus.dosgi.dsw.essencermi" /> <system.part category="osgi.active.bundle" name="com.paremus.dosgi.discovery.slp" /> <system.part category="osgi.active.bundle" name="com.paremus.dosgi.topologymanager" /> <replication.handler type="scalable"> 1 <property name="scaleFactor" value="1" type="float" /> <property name="fixedDelta" value="-2" type="integer" /> <property name="minimum" value="1" type="integer" /> </replication.handler> Many </system> .... Replication Handlers control the number .... of Part instances required in the .... runtime. </system> OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 34. DEMO TIME 1. Start a client. 2. Start single node Service Fabric & a simple OBR repository. 3. Load Repository & System model. 4. Deploy System. 5. Apply a property change to the running System. OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 35. Control Loops & Hierarchies automatic or manual Outer Control Loop (IaaS) controlling number of VM resources in the environment reactive Inner Control Loop (PaaS) Controls distribution of software components across population of available resources Cloud Runtime Highly agile, stable & robust systems tend to use (fast) inner and (slow) outer provisioning control loops (reference http://www.ist-selfman.org/wiki/images/9/94/ SelfmanFACS06talk.pdf). OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 36. BNDTools <> Service Fabric Integration Code Run An OBR centric end-to-end solution OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 37. Modular Systems are Maintainable Systems Applicability w.r.t OPEX of VM based (non modular) } private Cloud solutions. Anne Thomas Manes (Gartner) – SOA Symposium: Berlin, October 2010 OSGi Dev Con 2012 - Cloud Workshop II Copyright © 2005 - 2012 Paremus Ltd. March 2012 May not be reproduced by any means without express permission. All rights reserved.
  • 38. Thanks www.paremus.com Service Fabric - www.paremus.com/psf Nimble - www.paremus.com/nimble Bndtools - http://bndtools.org info@paremus.com Service Fabric Overview Copyright © 2012 Paremus Ltd. February 2012 May not be reproduced by any means without express permission. All rights reserved.