SlideShare une entreprise Scribd logo
1  sur  24
Télécharger pour lire hors ligne
Dynamic
Deployment with




Marcel Offermans



       luminis
Introduction

• Marcel Offermans
 •   software architect
                                 Arnhem      Apeldoorn                De Steeg
 •   Apache Felix and ACE

 •   marcel.offermans@luminis.nl

• Luminis
 •   IT solutions from idea to
     implementation

 •   experts in Java, OSGi, .NET,
     Agile/Scrum, Mobile

                                                                  luminis
                                          image © 2008 Google Earth
Status?




• april 2009: proposal to the incubator mailing list
• may 2009: started setting up project, IP clearance
• june 2009: (almost) done with IP clearance :)



                                            luminis
Agenda




• Deployment
• Management Agent
• Provisioning Server
• Q&A


                        luminis
Agenda




• Deployment
• Management Agent
• Provisioning Server
• Q&A


                        luminis
Deployment




    Component A   Target A


   Component B    Target B


   Component C    Target C




                             luminis
Deployment




    Component A                Target A


   Component B    Deployment   Target B


   Component C                 Target C




                                          luminis
Deployment



                             now

    Component A   Target A


   Component B    Target B


   Component C    Target C




                             luminis
Deployment
                              last year
             Component A   Target last
                                   A     month
          Component A         Target A last   week
             Component B

       Component A               Target A            now
          Component B      Target C B
                              Target
    Component A                      Target A
       Component B            Target C B
                                 Target

   Component B                       Target B
       Component C               Target C


   Component C                       Target C




                                                     luminis
Topology


                              target

 provisioning             management
                network
    server                   agent




  component
   repository




                                  luminis
Agenda




• Deployment
• Management Agent
• Provisioning Server
• Q&A


                        luminis
Management Agent


• manages life cycle of bundles
  BundleContext
                                               !"#$%"&'($)&%*+,-./'0
                                               1/'&%"2&)$.$),-$/3
                                               45&%!"#$%6++$,3)&

                                               7&+&,8&%9:%;&'8$/3%9<=
                                               62'$+%>??@




• controls package sharing policies
  PackageAdmin

• controls relative starting/stopping order
                                                                                              Digitally
                                                                                              signed by


                                                                                   OSGi       OSGi Alliance
                                                                                              DN: cn=OSGi
                                                                                              Alliance,
                                                                                              c=US


                                                                                   Alliance
                                                                                              Date:
                                                                                              2007.02.22
                                                                        Signatur              14:45:47 +
                                                                        e Not                 01'00'
                                                                        Verified




  Start Level Service

• implements a security policy
  Conditional Permission Admin


                                              luminis
Management Agent



• identification, uniquely identifies a target
• discovery, provides mechanism to find server
• scheduler, periodically triggers updates
• deployment, downloads and installs updates
• audit log, tracks all life cycle changes


                                           luminis
Deployment Admin



• versioned set of artifacts
• transactional install/update
• fix packages provide deltas
• signing makes them secure
• extensible through resource processors


                                           luminis
Agenda




• Deployment
• Management Agent
• Provisioning Server
• Q&A


                        luminis
Provisioning Server



                 store                deployment


      Store               License     Deployment
    Repository           Repository   Repository




                                               luminis
Deployment Repository

                                                          Deployment Repository



• has a collection of targets                            Target         Component




• with different versions for each target
• with a set of components for each version
       targets    versions                 components
                     1       Component A   Component B
                     2       Component A   Component B   Component C
       Target A
                     3       Component A   Component C   Component D
                     4       Component C   Component D



                                                                   luminis
Store and License Repository

       Store Repository                License Repository           Deployment Repository


 Component           License
                               +   License            Target
                                                               =   Target         Component




• store and license map components to targets
• store groups components, license associates
  these with targets

• these are all extensible objects
• on every update, the consequences for the
  targets are calculated
                                                                             luminis
Metadata vs content



• server repositories only store metadata
• this avoids having IP in these repositories
• it also allows integration with different component
  repositories (OBR, Maven, anything reachable via
  a URL)




                                             luminis
Scaling the server




• repositories can be replicated
• there is always one master (holding a copy that
  can be modified)


                     Repository   replication   Repository
                         master


                                                luminis
Manipulating data




• client and server use a checkout / commit model
  with optimistic locking

• client is responsible for “merging” if there are
  concurrent changes
                               store version
                               retrieve version
                                                  Repository
                               list versions



                                                       luminis
The audit trail

• management agent stores all life cycle related
  events in an audit log

• this log gets synchronized back to the server

             server                        internet              target

                       Audit                                            Audit
                       Log                                              Log

     17:34 Checked for updates, none found            13:23 Target started
     18:34 Bundle 23 stopped
       23:20                                          13:24 Starting update from version 5 to 8
     19:34
       23:25 Target started
          13:23                                       13:24 Bundle 37 updated
     20:34
       23:45 Starting update from version 5 to 8
          13:24                                       13:25 Update to version 8 succeeded
     21:34
       02:22 Bundle 37 updated
          13:24                                       14:25 Target stopped
       05:22 Update to version 8 succeeded
          13:25
          14:25 Target stopped
                                                                                         luminis
Summing it up




• We’ve looked at dynamic deployment
• the management agent on the target
• the repositories on the server
• ...which hopefully gives you a high level overview


                                             luminis
Any questions?




      ?&!
                 luminis

Contenu connexe

Dernier

Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaWSO2
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAnitaRaj43
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governanceWSO2
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2
 
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...DianaGray10
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)Samir Dash
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxMarkSteadman7
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMKumar Satyam
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 

Dernier (20)

Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governance
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
 
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...
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 

En vedette

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

En vedette (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Dynamic Deployment with Apache ACE

  • 2. Introduction • Marcel Offermans • software architect Arnhem Apeldoorn De Steeg • Apache Felix and ACE • marcel.offermans@luminis.nl • Luminis • IT solutions from idea to implementation • experts in Java, OSGi, .NET, Agile/Scrum, Mobile luminis image © 2008 Google Earth
  • 3. Status? • april 2009: proposal to the incubator mailing list • may 2009: started setting up project, IP clearance • june 2009: (almost) done with IP clearance :) luminis
  • 4. Agenda • Deployment • Management Agent • Provisioning Server • Q&A luminis
  • 5. Agenda • Deployment • Management Agent • Provisioning Server • Q&A luminis
  • 6. Deployment Component A Target A Component B Target B Component C Target C luminis
  • 7. Deployment Component A Target A Component B Deployment Target B Component C Target C luminis
  • 8. Deployment now Component A Target A Component B Target B Component C Target C luminis
  • 9. Deployment last year Component A Target last A month Component A Target A last week Component B Component A Target A now Component B Target C B Target Component A Target A Component B Target C B Target Component B Target B Component C Target C Component C Target C luminis
  • 10. Topology target provisioning management network server agent component repository luminis
  • 11. Agenda • Deployment • Management Agent • Provisioning Server • Q&A luminis
  • 12. Management Agent • manages life cycle of bundles BundleContext !"#$%"&'($)&%*+,-./'0 1/'&%"2&)$.$),-$/3 45&%!"#$%6++$,3)& 7&+&,8&%9:%;&'8$/3%9<= 62'$+%>??@ • controls package sharing policies PackageAdmin • controls relative starting/stopping order Digitally signed by OSGi OSGi Alliance DN: cn=OSGi Alliance, c=US Alliance Date: 2007.02.22 Signatur 14:45:47 + e Not 01'00' Verified Start Level Service • implements a security policy Conditional Permission Admin luminis
  • 13. Management Agent • identification, uniquely identifies a target • discovery, provides mechanism to find server • scheduler, periodically triggers updates • deployment, downloads and installs updates • audit log, tracks all life cycle changes luminis
  • 14. Deployment Admin • versioned set of artifacts • transactional install/update • fix packages provide deltas • signing makes them secure • extensible through resource processors luminis
  • 15. Agenda • Deployment • Management Agent • Provisioning Server • Q&A luminis
  • 16. Provisioning Server store deployment Store License Deployment Repository Repository Repository luminis
  • 17. Deployment Repository Deployment Repository • has a collection of targets Target Component • with different versions for each target • with a set of components for each version targets versions components 1 Component A Component B 2 Component A Component B Component C Target A 3 Component A Component C Component D 4 Component C Component D luminis
  • 18. Store and License Repository Store Repository License Repository Deployment Repository Component License + License Target = Target Component • store and license map components to targets • store groups components, license associates these with targets • these are all extensible objects • on every update, the consequences for the targets are calculated luminis
  • 19. Metadata vs content • server repositories only store metadata • this avoids having IP in these repositories • it also allows integration with different component repositories (OBR, Maven, anything reachable via a URL) luminis
  • 20. Scaling the server • repositories can be replicated • there is always one master (holding a copy that can be modified) Repository replication Repository master luminis
  • 21. Manipulating data • client and server use a checkout / commit model with optimistic locking • client is responsible for “merging” if there are concurrent changes store version retrieve version Repository list versions luminis
  • 22. The audit trail • management agent stores all life cycle related events in an audit log • this log gets synchronized back to the server server internet target Audit Audit Log Log 17:34 Checked for updates, none found 13:23 Target started 18:34 Bundle 23 stopped 23:20 13:24 Starting update from version 5 to 8 19:34 23:25 Target started 13:23 13:24 Bundle 37 updated 20:34 23:45 Starting update from version 5 to 8 13:24 13:25 Update to version 8 succeeded 21:34 02:22 Bundle 37 updated 13:24 14:25 Target stopped 05:22 Update to version 8 succeeded 13:25 14:25 Target stopped luminis
  • 23. Summing it up • We’ve looked at dynamic deployment • the management agent on the target • the repositories on the server • ...which hopefully gives you a high level overview luminis
  • 24. Any questions? ?&! luminis