Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Mobilizing the Cloud with AIOLOS - T Verbelen

644 vues

Publié le

OSGi Community Event 2014

Abstract:
When developing a mobile cloud application, an important challenge is to choose which part of your application to execute locally on the device, and which part to process in the cloud. Also, often the best deployment depends on the environment, such as the hardware capabilities of the device(s) at hand, and the network connectivity. The AIOLOS platform leverages OSGi technology to decouple application bundle deployment from development. With AIOLOS it is easy to distribute bundles between wearable devices and cloud instances at runtime, as well as to scale out bundles in cloud environments. AIOLOS also provides extensive monitoring information, which can be used to trigger redeployments. To do so, AIOLOS heavily builds upon several OSGi specifications, such as Remote Services, Service Hooks, the Repository and Resolver service, and uses the low-footprint Concierge runtime to bring OSGi on the mobile. In this talk the overall architecture of AIOLOS will be presented, and some use case scenarios will be highlighted by a demo.

Speaker Bio:
Tim Verbelen received his M.Sc. degree in Computer Science from Ghent University, Belgium in June 2009. In July 2013, he received his Ph.D. degree with his dissertation "Adaptive Offloading and Configuration of Resource Intensive Mobile Applications". Since August 2009, he has been working at the Departement of Information Technology (INTEC) of the Faculty of Engineering at Ghent University, and is now active as postdoctoral researcher. His main research interests include mobile cloud computing and adaptive software. Specifically he is researching adaptive strategies to enhance real-time applications such as Augmented Reality on mobile devices.

Publié dans : Technologie
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Mobilizing the Cloud with AIOLOS - T Verbelen

  1. 1. 1 Mobilizing the Cloud with AIOLOS Tim Verbelen (tim.verbelen@intec.ugent.be) iMinds – Ghent University EclipseCon Europe – 29.10.2014
  2. 2. 2 The Problem...  Connect all kinds of wearable devices in your applications together ... ...and to the Cloud
  3. 3. 3 Mobile application development now Suppose the following application: storage sensors logic viewer
  4. 4. 4 OSGi to the rescue... We need software modularity! storage sensors logic viewer OSGi (OCSoGnci ierge) OSGi OSGi
  5. 5. 5 AIOLOS We need transparent remote communication! storage sensors logic viewer AIOLOS OSGi OSGi OSGi (Concierge) AIOLOS AIOLOS OSGi
  6. 6. http://aiolos.intec.ugent.be 6 AIOLOS: bundle distribution at runtime AIOLOS provides:  Service discovery and binding  Fast remote service calls  Runtime (re) deployment  Service monitoring
  7. 7. 7 Don't tell me, show me!  Tardis – an immersive picture viewer
  8. 8. 8 AIOLOS Architecture Core Monitoring Deployment Repository Deployment Proxy Manager Manager Topology Manager Remote Service Admin Service Monitor Node Monitor Cloud Manager Platform Manager
  9. 9. 9 Remote Service Admin Core Monitoring Deployment Repository Deployment Proxy Manager Manager Topology Manager Remote Service Admin Service Monitor Node Monitor Cloud Manager Platform Manager
  10. 10. 10 Remote Service Admin  Lightweight implementation of the RemoteServiceAdmin 1.0 spec  Protocol based on R-OSGi  Fast serialization with Kryo* and Objenesis** *https://github.com/EsotericSoftware/kryo **http://objenesis.org/
  11. 11. 11 HHooww fa fsat sist “ifsa s“tf”a?st”?
  12. 12. 12 Remote Service Admin  Export and import a simple Greeting service on localhost String greet(String name){return “Hello ”+name};  Perform 10000 calls 7 6 ms) (5 time AIOLOS 4 DOSGi call ECF Generic 3 Average ECF R_OSGi 2 1 0
  13. 13. 13 Remote Service Admin  Export and import a simple Greeting service on localhost String greet(String name){return “Hello ”+name};  Perform 10000 calls 1 0.8 0.6 0.4 0.2 0 AIOLOS DOSGi ECF Generic ECF R_OSGi Average call time (ms)
  14. 14. 14 Proxy Manager Core Monitoring Deployment Repository Deployment Proxy Manager Manager Topology Manager Remote Service Admin Service Monitor Node Monitor Cloud Manager Platform Manager
  15. 15. 15 Proxy Manager  Create a smart proxy for each OSGi service A  Use OSGi Hooks B Proxy B AIOLOS  service.EventHook : create proxy before service is registered  service.FindHook : hide original service reference  Implement a ProxyPolicy to select service implementation
  16. 16. 16 Topology Manager Core Monitoring Deployment Repository Deployment Proxy Manager Manager Topology Manager Remote Service Admin Service Monitor Node Monitor Cloud Manager Platform Manager
  17. 17. 17 Topology Manager  Export local application services  Import remote services that are requested on the local framework  i.e. using service.FindHook  Discover other nodes in the network  i.e. SLP discovery implementation
  18. 18. 18 Monitoring Core Monitoring Deployment Repository Deployment Proxy Manager Manager Topology Manager Remote Service Admin Service Monitor Node Monitor Cloud Manager Platform Manager
  19. 19. 19 Monitoring  Node monitoring  Access to device parameters (e.g. CPU usage, …)  Implemented by reading /proc/ filesystem on *nix  Service monitoring  Collect method execution information using callbacks from the proxies  Available metrics: execution time, size of the arguments, size of the return value, ...
  20. 20. 20 What's the overhead?
  21. 21. 21 Overhead  Perform 1 million greet method calls on local instance with and without proxying/monitoring 1000 800 600 400 200 0 Proxy and Monitor Proxy Only No Proxy Average call time (ns) Overhead of proxy/monitoring less than 1 us
  22. 22. 22 Deployment Manager Core Monitoring Deployment Repository Deployment Proxy Manager Manager Topology Manager Remote Service Admin Service Monitor Node Monitor Cloud Manager Platform Manager
  23. 23. 23 Deployment Manager  Provides an interface to start/stop application components on a node  Also provides (stateless) bundle migration:  Start component on target node  Once started, switch all proxy references  Stop component on source node
  24. 24. 24 Repository Core Monitoring Deployment Repository Deployment Proxy Manager Manager Topology Manager Remote Service Admin Service Monitor Node Monitor Cloud Manager Platform Manager
  25. 25. 25 Repository  Implements the OSGi Repository 1.0 spec  Makes application bundles available for installation at runtime  Is used by the Deployment Manager to find and resolve artifacts to be deployed
  26. 26. 26 Cloud Manager Core Monitoring Deployment Repository Deployment Proxy Manager Manager Topology Manager Remote Service Admin Service Monitor Node Monitor Cloud Manager Platform Manager
  27. 27. 27 Cloud Manager  Allows for automatic scaling in a cloud  Uses Apache jClouds* for cloud interfacing  currently tested with Amazon EC2 and OpenStack  Enables application scaling on a service-level  i.e. by using a round-robin ProxyPolicy *https://jclouds.apache.org/
  28. 28. 28 Platform Manager Core Monitoring Deployment Repository Deployment Proxy Manager Manager Topology Manager Remote Service Admin Service Monitor Node Monitor Cloud Manager Platform Manager
  29. 29. 29 Use cases
  30. 30. 30 Mobile offloading  Choose the fastest instance to execute the call  Monitor information allows to estimate local/remote time  Smart proxy enables fast switching A B Proxy B Remote Service Admin B AIOLOS Proxy´ B AIOLOS [T Verbelen, P Simoens, F De Turck, B Dhoedt, “AIOLOS: Middleware for improving mobile application performance through cyber foraging”, Journal of Systems and Software 85 (11), 2629-2639]
  31. 31. Component-based cloud scaling  Scale specific application components based on service monitoring information 31  Scale both VMs and components  ProxyPolicy determines load balancing strategy [S Bohez, T Verbelen, P Simoens, B Dhoedt, “Enabling Component-based Mobile Cloud Computing with the AIOLOS Middleware”, ARM'14, Bordeaux, France]
  32. 32. 32 Thank you! An OSGi-based platform bridging the gap between mobile devices and the Cloud. Website http://aiolos.intec.ugent.be Source https://github.com/aiolos-dev Repositories http://aiolos.intec.ugent.be/repositories

×