A Self-Adaptive Deployment Framework for Service-Oriented Systems Sander van der Burg Eelco Dolstra Delft University of Technology, EEMCS, Department of Software Technology May 24, 2011 Sander van der Burg, Eelco Dolstra A Self-Adaptive Deployment Framework for Service-Oriented Syst
25
Embed
A Self-Adaptive Deployment Framework for Service-Oriented Systems
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
A Self-Adaptive Deployment Framework for
Service-Oriented Systems
Sander van der Burg Eelco Dolstra
Delft University of Technology, EEMCS,
Department of Software Technology
May 24, 2011
Sander van der Burg, Eelco Dolstra A Self-Adaptive Deployment Framework for Service-Oriented Syst
Service Oriented Computing
The Service Oriented Computing (SOC) paradigm is very popularto build distributed applications.
Sander van der Burg, Eelco Dolstra A Self-Adaptive Deployment Framework
Service Oriented Computing
Systems are composed of distributable components (or services),working together to achieve a common goal.
Sander van der Burg, Eelco Dolstra A Self-Adaptive Deployment Framework
Networks
Services are deployed in networks of machines having variousproperties and capabilities.
Sander van der Burg, Eelco Dolstra A Self-Adaptive Deployment Framework
Networks
Various events may occur in a network of machines:
Crashing machines
Adding a new machine
Change of a capability (e.g. increase of RAM)
Sander van der Burg, Eelco Dolstra A Self-Adaptive Deployment Framework
Implications
Events have a number of implications:
The system may partially or completely break
The deployment may become suboptimal
Sander van der Burg, Eelco Dolstra A Self-Adaptive Deployment Framework
Self-adaptive deployment
In case of an event, a redeployment may be performed
(Re)deployment is difficult, time consuming and error prone
Sander van der Burg, Eelco Dolstra A Self-Adaptive Deployment Framework
Software deployment
Software deployment
All of the activities that make a software system available for useCarzaninga et al.
Sander van der Burg, Eelco Dolstra A Self-Adaptive Deployment Framework
Deployment tooling
Some deployment tools reconfigure service behaviour andconnections, but do not redeploy a complete system
A number of deployment tools are designed for specificcomponent technologies
e.g. DRAGO, OSGi
A number of deployment planning algorithms have beendeveloped, but little of them are used in tooling whichperform actual deployment.
Sander van der Burg, Eelco Dolstra A Self-Adaptive Deployment Framework
The distribution generator uses a QoS model to implement adistribution policy
By composing functions, a desirable distribution can begenerated
Sander van der Burg, Eelco Dolstra A Self-Adaptive Deployment Framework
Distribution generator
Typically, a QoS model has the following structure:
Candidate host selection phase. For each service, decide whichhost is suitable by looking to service and system properties
Division phase. Divide services across the candidate hosts,using some strategy.
Sander van der Burg, Eelco Dolstra A Self-Adaptive Deployment Framework
Distribution generator
Various filter functions are supported:
One-dimensional (highest bidder, lowest bidder, greedy)Multi-way cut approximation (to reduce the amount ofnetwork links)Minimum set cover (cost efficient deployment)Vertex coloring (to maximize the number of network linksusing the minimum amount of machines)
Framework is extensible; custom filter functions can be easilyimplemented
Sander van der Burg, Eelco Dolstra A Self-Adaptive Deployment Framework
Evaluation
Example cases:
Staff Tracker. Toy SOA system which comes in two variants(PHP/MySQL and Webservices).
ViewVC. Open-source web based Subversion repository viewer(http://viewvc.tigris.org).
SDS2. Industrial SOA case study from Philips Research.
Sander van der Burg, Eelco Dolstra A Self-Adaptive Deployment Framework