Déploiement dynamique d'applications OSGi sur le Cloud
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Déploiement dynamique d'applications OSGi sur le Cloud

on

  • 313 views

Les structures informatiques dématérialisées (informatique en nuage, Cloud Computing) ont en quelques années révolutionné l’usage des ressources informatiques dans les entreprises. Les ...

Les structures informatiques dématérialisées (informatique en nuage, Cloud Computing) ont en quelques années révolutionné l’usage des ressources informatiques dans les entreprises. Les avancées en terme de virtualisation et de grilles de calcul ont permis une évolution des infrastructures classiques vers des infrastructures d'hébergement mutualisées et virtualisées. De nombreux travaux académiques et industriels s’intéressent à l'utilisation de la technologie OSGi pour déployer des applications complexes. Ces opérations de déploiement sont en général difficiles du fait de la nature très dynamique des infrastructures en nuage. Nous présentons ici, RoboConf, un gestionnaire de déploiement et de configuration automatique d'applications sur une infrastructure PaaS OSGi. Nous démontrons ensuiteRoboConf avec le déploiement automatique d'une application distribuée non triviale dans des conteneurs Apache Karaf sur des machines virtuelles Amazon EC2instanciées à la demande.

Noël de Palma, Didier Donsez, Alain Tchana, Linh-Manh Pham, Université de Grenoble, Equipe ERODS

Statistics

Views

Total Views
313
Views on SlideShare
313
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Déploiement dynamique d'applications OSGi sur le Cloud Presentation Transcript

  • 1. Dynamic Deploymentof Distributed OSGiapplications on a IaaSNoël de Palma, Didier Donsez,Alain Tchana, Linh-Manh PhamUniversité de Grenoble, LIG Equipe ERODS
  • 2. RésuméNoël de Palma, Didier Donsez, Alain Tchana, Linh-Manh Pham (Université de Grenoble, LIG équipeERODS), "Déploiement dynamique dapplications OSGi sur le Cloud"Résumé: Les structures informatiques dématérialisées (informatique en nuage, Cloud Computing) ont enquelques années révolutionné l’usage des ressources informatiques dans les entreprises. Les avancées enterme de virtualisation et de grilles de calcul ont permis une évolution des infrastructures classiques vers desinfrastructures dhébergement mutualisées et virtualisées. De nombreux travaux académiques et industrielss’intéressent à lutilisation de la technologie OSGi pour déployer des applications complexes. Ces opérationsde déploiement sont en général difficiles du fait de la nature très dynamique des infrastructures en nuage.Nous présentons ici, RoboConf, un gestionnaire de déploiement et de configuration automatiquedapplications sur une infrastructure PaaS OSGi. Nous démontrons ensuite RoboConf avec le déploiementautomatique dune application distribuée non triviale dans des conteneurs Apache Karaf sur des machinesvirtuelles Amazon EC2 instanciées à la demande.
  • 3. Outline Context : OSGi & Cloud Roboconf Roboconf for an OSGi PaaS Demo
  • 4. OSGi specifications De-facto Standard for Modular Java applications Dynamic Deployment of Modules without rebooting ; exception : Eclipse plugins SOA principles in Java applications Specifications target standalone applications BUT Good candidate for distributed applicationsand distributed middlewares JEE, EEG, DOSGi, ...
  • 5. Cloud Computing Outsourcing of IT ressources Network, CPU Core, Memory, Storage Pay per Use Elasticity on-demand ressource allocation/desallocation Virtualization technics VM (VMWare, Xen, VirtualBox …), LCX, ... Types : Public, Private and Hybrid Clouds Models : IaaS, PaaS, SaaS (Map Reduce for Big Data) Cloud Providers Amazon, Google, Microsoft, HP, OVH, Eolas, … Concerns : Optimize physical machines numbers and consumedelectricity.
  • 6. OSGi & Cloud Enterprise EG Cloud Computing (RFP 133) OSGi Cloud Ecosystems (RFC 183)http://fr.slideshare.net/bosschaert/osgi-cloud-ecosystems Cloud-ready OSGi platforms Paremus, RedHat Jboss, PeerGreen … Academic researches OSGi4C
  • 7. Cloud Computing :Application Administrators point of viewA S D0) create an EC2 account and enter (companys) credit card number1) Define a configuration2) Start AMIs3) Configure dependencies (@IP, port, security, firewalls …)4) Monitor performance and usageTime consumingError ProneRequests
  • 8. Cloud Computing :Application Administrators point of viewAASS DD0) create an EC2 account and enter (companys) credit card number1) Define a configuration2) Start AMIs3) Configure dependencies (@IP, port, security, firewalls …)4) Monitor performance and usage5) Change the configuration6) Start additionnal AMIs / Stop existing AMIs / Migrate AMIs7) Re-Configure dependencies (@IP, port, security, …)...10) Pay monthly $$$$$ for CPU time, ...Time consumingError ProneNightmareRequestsRequests
  • 9. Roboconf Motivation Automatic deployment/evolution ofdistributed application configuration on a IaaS What does it do ? Instantiates and manages VM in the IaaS Deploys components on those VM Makes those components to configure each other RoboConf DSL : describing configurations Fully asynchronous
  • 10. Roboconf DSLConfiguration Model Types (inheritance) & Instances & VM Import & Export Variables → pubsublifecycles scripts inBASH, PUPPET, …
  • 11. Deployment & ConfigurationPubSub vars : Act as a distributedconfiguration managerAMIsRepoScriptsRepoArtifactsRepoAMIs containsa RoboConf agent
  • 12. Algorithm to exchange vars• foreach export:– subscribe to “import.$exportName”– publish exported vars on “export.$exportName”• foreach import:– subscribe to “export.$importName”– publish notification on “import.$importName”• if receive notification publish exported vars on “export.$exportName”Asynchronous Exchanges→ Instances can be configured in any order!→ Application is dynamic! Component can be added without effort!12
  • 13. Example with a simple JEE conf
  • 14. Roboconf for OSGi●Motivations : OSGi PaaS Deploy and configure OSGi containersand then «Distributed » OSGi applicationson VM IaaS Reuse/Share OSGi applications in same OSGi containers Isolate OSGi applications in differents OSGi containers or VMs Scripts for Felix and Karaf Containers for OSGi Applicationssets of bundles, features, CA cfgs and sys properties Repos OSGi containers (Felix, Karaf, ...) Bundles (.jar, tgz of .jar, .cfg, .sysprop) Private or Public (Felix OBR, Maven Central, ...)
  • 15. Files for Apache Karaf
  • 16. DemonstrationSpecJMS like Configuration (DSL)VM2IaaS : EC2OSGi Container : Apache KarafApp : erzatz of SpecJMS benchmarkVM3VM1ScriptsRepoBundlesReporoboconfconsole
  • 17. DemonstrationSpecJMS like Configuration (DSL)VM2IaaS : EC2OSGi Container : Apache KarafApp : erzatz of SpecJMS benchmarkKFVM3KFVM1KFScriptsRepoBundlesReporoboconfconsole
  • 18. DemonstrationSpecJMS like Configuration (DSL)VM2IaaS : EC2OSGi Container : Apache KarafApp : erzatz of SpecJMS benchmarkKFJMS SenderVM3KFJMS ReceiverVM1KFJMS ServerJNDI ServerScriptsRepoContainers &BundlesReporoboconfconsole
  • 19. Add a new sender (from the console)VM2KFJMS SenderVM3KFJMS ReceiverVM1KFJMS ServerJNDI ServerScriptsRepoContainers &BundlesRepoVM4KFJMS SenderKFJMS Senderroboconfconsole
  • 20. Add a new receiver (from the console)VM2KFJMS SenderVM3KFJMS ReceiverVM1KFJMS ServerJNDI ServerScriptsRepoContainers &BundlesRepoVM4KFJMS SenderKFJMS SenderVM5KFJMS Receiverroboconfconsole
  • 21. Conclusion & Perpectives Deployment and Configuration for an OSGi PaaS More IaaS : Google, Azure, OpenStack, ... More scripting/configuration tools OSGi JMX, Permission Admin, MetaType Remote Deployment, Deployment Admin Coordination with Cellars Distributed CA More lifecycle scripts : Ant, ... More monitoring/design tools Releasing to FOSS
  • 22. Un peu de pub ... Ecole ICAR 2013 sur le Cloud Computing26 au 30 Aout 2013 à Grenoble http://erods.liglab.fr/icar2013/ Avec Microsoft, Intel, OVH, Eolas, OW2 ...
  • 23. Extra
  • 24. Puppet https://puppetlabs.com/●Popular Configuration manager●Defines the desired state of the system●using Packages, Files, Services