Run-time Coordination of Reconfiguration Requests in Cloud Computing Systems
Coordination de l’exécution des demandes de reconfiguration dans les systèmes de cloud computing
Résumé
Cloud applications and cyber-physical systems are becoming increasingly complex, requiring frequent reconfiguration to adapt to changing needs and requirements. Existing approaches compute new valid configurations either at design time, at runtime, or both. However, these approaches can lead to significant computational or validation overheads for each reconfiguration step. We propose a component-based approach that avoids computational and validation overheads using a representation of the set of valid configurations as a variability model. More precisely, our approach leverages feature models to automatically generate, in a component-based formalism called JavaBIP, run-time variability models that respect the feature model constraints. Produced run-time variability models enable control over application reconfiguration by executing reconfiguration requests in such a manner as to ensure the (partial) validity of all reachable configurations. We evaluate our approach on a simple web application deployed on the Heroku cloud platform. Experimental results show that the overheads induced by generated run-time models on systems involving up to 300 features are negligible, demonstrating the practical interest of our approach.
Les applications en nuage et les systèmes cyber-physiques deviennent de plus en plus complexes, nécessitant une reconfiguration fréquente pour s'adapter à l'évolution des besoins et des exigences. Les approches existantes calculent de nouvelles configurations valides lors de la conception du système, au moment de son exécution ou les deux. Cependant, ces approches peuvent entraîner des surcharges de calcul ou de validation importantes pour chaque étape de reconfiguration. Nous proposons une approche fondée sur un modèle à composants pour éviter les surcharges de calcul et de validation en utilisant une représentation de l'ensemble des configurations valides pour un système grâce aux modèles de variabilité. Plus précisément, notre approche exploite les modèles dits "feature models" pour générer automatiquement des modèles de variabilité dans un formalisme à composants, JavaBIP, qui respectent les mêmes contraintes. Ces modèles de variabilité permettent de contrôler la réconfiguration de l'application en temps d'exécution en exécutant les demandes de reconfiguration de manière à assurer la validité (partielle) de toutes les configurations atteignables. Afin d'évaluer l'intérêt de notre approche, nous l'avons expérimentée sur une application Web déployé sur la plateforme en nuage Heroku. Les surcharges induites par les modèles générés sur des systèmes comportant jusqu'à 300 features s'avèrent négligeables.
Origine | Fichiers produits par l'(les) auteur(s) |
---|