19 research outputs found

    Scénarios pour un Micro Smart Grid Autonomique

    Get PDF

    La gestion des ressources pour des infrastructures vertes par la reconfiguration

    Get PDF
    Cette HDR présente des travaux dans le contexte des systèmes informatiques à grande échelle pouvant être des grilles de calcul ou le cloud computing. Partant de deux constats : la consommation énergétique de ces systèmes est trop importante et ces systèmes sont de plus en complexes, ce mémoire se propose de répondre à la problématique suivante : comment gérer de manière optimale les ressources afin d'obtenir des infrastructures matérielles et logicielles "vertes" c'est à dire efficaces en énergie ? Ces travaux proposent trois axes de recherche : le premier en considérant le système complet et les leviers verts associés, le deuxième en étudiant des politiques d'allocation de ressources avec contraintes d'énergie et de chaleur, le troisième en étudiant des reconfigurations autonomiques d'applications. Pour finir, une description d'un centre de décision autonome pour des infrastructures vertes est proposée

    Modèle à Composant pour Plate-forme Autonomique

    Get PDF
    In the last decades, computing environments have been getting more and more complex, filled with miniaturized and sophisticated devices that can handle mobility and wireless communications. Ubiquitous computing, as envisioned by Mark Weiser in 1991, promote the seamless integration of those computing environments with the real world in order to offer new kinds of applications. However, writing software for ubiquitous environments raises numerous challenges, mainly the problem of how to make an application adapt itself in an ever changing context. From another perspective, as classical softwares were growing in size and complexity, IBM proposed the concept of autonomic computing to help to contain the burden of administering massive and numerous systems. This PhD thesis is based on an approach where applications are designed in terms of components using and providing services. A development model based on a reference architecture for the conception of ubiquitous applications is proposed, greatly inspired by researches in the autonomic computing field. In this model, the application is managed by a hierarchy of autonomic managers, that base their decisions on a central representation of the system. The fulfilment of this contribution requires to make the underlying middleware more reflexive, in order to support new kinds of runtime adaptations. We also provide a model that depicts the running system and its dynamics in a uniform way, based on REST principles. Applications relying on this reflexive middleware and represented by this model are what we called Autonomic-Ready. Implementations of our proposals have been integrated in the Apache Felix iPOJO service-oriented component model. The system representation, named Everest, is provided as a OW2 Chameleon subproject. Validation is based on the iCASA pervasive environment development and simulation environment.Ces dernières décennies, les environnements informatiques sont devenus de plus en plus complexes, parsemés de dispositifs miniatures et sophistiqués gérant la mobilité et communiquant sans fil. L'informatique ubiquitaire, telle qu'imaginée par Mark Weiser en 1991, favorise l'intégration transparente de ces environnements avec le monde réel pour offrir de nouveaux types d'applications. La conception de programmes pour environnements ubiquitaires soulève cependant de nombreux défis, en particulier le problème de rendre une application auto-adaptable dans un contexte en constante évolution. Parallèlement, alors que la taille et la complexité de systèmes plus classiques ont explosé, IBM a proposé le concept d'informatique autonomique afin de réduire le fardeau de l'administration de systèmes imposants et largement disséminés. Cette thèse se base sur une approche où les applications sont conçues sous la forme de composants utilisant et fournissant des services. Un modèle de développement fondé sur une architecture de référence pour la conception d'applications ubiquitaires est proposée, fortement inspiré des recherches dans le domaine de l'informatique autonomique. Dans ce modèle, les applications sont prises en charge par une hiérarchie de gestionnaires autonomiques, qui appuient leurs décisions sur une représentation centrale du système. La mise en œuvre de cette contribution requiert de rendre la couche d'exécution sous-jacente plus réflexive, en vue de supporter de nouveaux types d'adaptations à l'exécution. Nous proposons également un modèle qui décrit le système à l'exécution et reflète sa dynamique de manière uniforme, suivant les principes du style d'architecture REST. Les applications reposant sur ce cette couche d'exécution réflexive et représentées par ce modèle sont qualifiées d'Autonomic-Ready. L'implantation de nos propositions ont été intégrées dans le modèle à composant orienté service Apache Felix iPOJO. Le modèle de représentation du système, nommé Everest, est publié en tant que sous-projet d'OW2 Chameleon. Ces propositions ont été évaluées et validées par la conception et l'exécution d'une application ubiquitaire sur iCASA, un environnement de développement et de simulation

    Gestion autonomique de performance, d'énergie et de qualité de service. Application aux réseaux filaires, réseaux de capteurs et grilles de calcul

    Get PDF
    La motivation principale de cette thèse est de faire face à l'accroissement de la complexité des systèmes informatiques, qui, dans un futur proche ( de l'ordre de quelques années) risque fort d'être le principal frein à leur évolution et à leur développement. Aujourd'hui la tendance s'inverse et le coût de gestion humaine dépasse le coût des infrastructures matérielles et logicielles. De plus, l'administration manuelle de grands systèmes (applications distribuées, réseaux de capteurs, équipements réseaux) est non seulement lente mais aussi sujette à de nombreuses erreurs humaines. Un des domaines de recherche émergent est celui de l'informatique autonomique qui a pour but de rendre ces systèmes auto-gérés. Nous proposons une approche qui permet de décrire des politiques de gestion autonomiques de haut niveau. Ces politiques permettent au système d'assurer quatre propriétés fondamentales de l'auto-gestion: l'auto-guérison, l'auto-configuration, l'auto-protection et l'auto-optimisation. Nos contributions portent sur la spécification de diagrammes de description de politiques de gestion autonomiques appelés (S)PDD "(Sensor) Policy Description Diagrams". Ces diagrammes sont implémentés dans le gestionnaire autonomique TUNe et l'approche a été validée sur de nombreux systèmes: simulation électromagnétique répartie sur grille de calcul, réseaux de capteurs SunSPOT, répartiteur de calcul DIET. Une deuxième partie présente une modélisation mathématique de l’auto-optimisation pour un « datacenter ». Nous introduisons un problème de minimisation d’un critère intégrant d’une part la consommation électrique des équipements du réseau du « datacenter » et d’autre part la qualité de service des applications déployées sur le « datacenter ». Une heuristique permet de prendre en compte les contraintes dues aux fonctions de routage utilisées. ABSTRACT : The main challenge of this thesis is to cope with the growing complexity of IT systems. In a near future (mainly the next few years) this complexity will prevent new developments and system evolutions. Today the trend is reversing and the managing costs are overtaking the hardware and software costs. Moreover, the manual administration of large systems (distributed applications, sensor networks, and network equipment) is not only slow but error-prone. An emerging research field called autonomic computing tries to bring up self-managed systems. We introduce an approach that enable the description of high level autonomic management policies. These policies allow the system to ensure four fundamental properties for self-management: self-healing, self-self-configuring, self-protecting and self-optimizing. We specify autonomic management Policy Description Diagrams (PDD) and implement them in Toulouse University Network (TUNe). We validated our approach on many systems: electromagnetic simulations distributed on computer grids (grid’5000), wireless sensor networks with SunSPOTs and the computing scheduler DIET. A second part of this thesis presents a mathematical modeling for self-optimizing datacenters. We introduce a minimization problem with a criterion integrating both the electrical consumption of the datacenter networking equipment and the quality of service of the deployed applications. A heuristic takes into account the routing functions used on the network

    Adaptation autonomique d'applications pervasives dirigée par les architectures

    Get PDF
    The autonomic adaptation of software application is becoming increasingly important in many domains, including pervasive field. Indeed, the integration fo different application resources (physical devices, services and third party applications) often needs to be dynamic and should adapt rapidly and automatically to changes in the execution context. To that end, service-oriented components offer support for adaptation at the architectural level. However, they do not allow the formalisation of all the design constraints that must be guaranteed during the execution of the system. To overcome this limitation, this thesis modeled the design, deployment and runtime architectures. Also, it proposes to establish links between them and has developed algorithms to check the validity of an execution architecture with respect to its architectural design. This led us to consider the entire life cycle of components and to define a set of concepts to be included in architectures supporting variability. This formalisation can be exploited both by a human administrator and by an autonomic manager that has its knowledge base increased and structured. The implementation resulted in the realization of a knowledge base, providing a studio (Cilia IDE) for the design, deployment and supervision of dynamic applications, as well as an autonomic manager that can update the structure of pervasive applications. This thesis has been validated using a pervasive application called “Actimetry”, developed in the FUI~MEDICAL project.La problématique d'adaptation autonomique prend de plus en plus d'importance dans l'administration des applications modernes, notamment pervasives. En effet, la composition entre les différentes ressources de l'application (dispositifs physiques, services et applications tierces) doit souvent être dynamique, et s'adapter automatiquement et rapidement aux évolutions du contexte d'exécution. Pour cela, les composants orientés services offrent un support à l'adaptation au niveau architectural. Cependant, ils ne permettent pas d'exprimer l'ensemble des contraintes de conception qui doivent être garanties lors de l'exécution du système. Pour lever cette limite, cette thèse a modélisé les architectures de conception, de déploiement et de l'exécution. De plus, elle a établi des liens entre celle-ci et proposé des algorithmes afin de vérifier la validité d'une architecture de l'exécution par rapport à son architecture de conception. Cela nous a conduits à considérer de près le cycle de vie des composants et à définir un ensemble de concepts afin de les faire participer à des architectures supportant la variabilité. Notons que cette formalisation peut être exploitée aussi bien par un administrateur humain, que par un gestionnaire autonomique qui voit ainsi sa base de connaissances augmentée et structurée. L'implantation a donné lieu à la réalisation d'une base de connaissance, mise à disposition d'un atelier (Cilia IDE) de conception, déploiement et supervision d'applications dynamiques, ainsi que d'un gestionnaire autonomique capable de modifier la structure d'une application pervasive. Cette thèse a été validée à l'aide d'une application pervasive nommée >, développée dans le cadre du projet FUI~MEDICAL

    Kevoree (Model@Runtime pour le développement continu de systèmes adaptatifs distribués hétérogènes)

    Get PDF
    La complexité croissante des systèmes d'information modernes a motivé l'apparition de nouveaux paradigmes (objets, composants, services, etc), permettant de mieux appréhender et maîtriser la masse critique de leurs fonctionnalités. Ces systèmes sont construits de façon modulaire et adaptable afin de minimiser les temps d'arrêts dus aux évolutions ou à la maintenance de ceux-ci. Afin de garantir des propriétés non fonctionnelles (par ex. maintien du temps de réponse malgré un nombre croissant de requêtes), ces systèmes sont également amenés à être distribués sur différentes ressources de calcul (grilles). Outre l'apport en puissance de calcul, la distribution peut également intervenir pour distribuer une tâche sur des nœuds aux propriétés spécifiques. C'est le cas dans le cas des terminaux mobiles proches des utilisateurs ou encore des objets et capteurs connectés proches physiquement du contexte de mesure. L'adaptation d'un système et de ses ressources nécessite cependant une connaissance de son état courant afin d'adapter son architecture et sa topologie aux nouveaux besoins. Un nouvel état doit ensuite être propagé à l'ensemble des nœuds de calcul. Le maintien de la cohérence et le partage de cet état est rendu particulièrement difficile à cause des connexions sporadiques inhérentes à la distribution, pouvant amener des sous-systèmes à diverger. En réponse à ces défi scientifiques, cette thèse propose une abstraction de conception et de déploiement pour systèmes distribués dynamiquement adaptables, grâce au principe du Model@Runtime. Cette approche propose la construction d'une couche de réflexion distribuée qui permet la manipulation abstraite de systèmes répartis sur des nœuds hétérogènes. En outre, cette contribution introduit dans la modélisation des systèmes adaptables la notion de cohérence variable, permettant ainsi de capturer la divergence des nœuds de calcul dans leur propre conception. Cette couche de réflexion, désormais cohérente "à terme", permet d'envisager la construction de systèmes adaptatifs hétérogènes, regroupant des nœuds mobiles et embarqués dont la connectivité peut être intermittente. Cette contribution a été concrétisée par un projet nommé ''Kevoree'' dont la validation démontre l'applicabilité de l'approche proposée pour des cas d'usages aussi hétérogènes qu'un réseau de capteurs ou une flotte de terminaux mobiles.The growing complexity of modern IT systems has motivated the development of new paradigms (objects, components, services,...) to better cope with the critical size of their functionalities. Such systems are then built as a modular and dynamically adaptable compositions, allowing them to minimise their down-times while performing evolutions or fixes. In order to ensure non-functional properties (i.e. request latency) such systems are distributed across different computation nodes. Besides the added value in term of computational power (cloud), this distribution can also target nodes with dedicated properties such as mobile nodes and sensors (internet of things), physically close to users for interactions. Adapting a system requires knowledge about its current state in order to adapt its architecture to its evolving needs. A new state must be then disseminated to other nodes to synchronise them. Maintaining its consistency and sharing this state is a difficult task especially in case of sporadic connexions which lead to divergent state between sub-systems. To tackle these scientific problems, this thesis proposes an abstraction to design and deploy distributed adaptive systems following the Model@Runtime paradigm. From this abstraction, the proposed approach allows defining a distributed reflexive layer to manipulate heterogeneous distributed nodes. In particular, this contribution introduces variable consistencies in model definition and divergence in system conception. This reflexive layer, eventually consistent allows the construction of distributed adapted systems even on mobile nodes with intermittent connectivity. This work has been realized in an open source project named Kevoree, and validated on various distributed systems ranging from sensor networks to cloud computing.RENNES1-Bibl. électronique (352382106) / SudocSudocFranceF

    Approche dirigée par les contrats de niveaux de service pour la gestion de l'élasticité du "nuage"

    Get PDF
    L informatique en nuage révolutionne complètement la façon de gérer les ressources. Grâce à l élasticité, les ressources peuvent être provisionnées en quelques minutes pour satisfaire un niveau de qualité de service (QdS) formalisé par un accord de niveau de service (SLA) entre les différents acteurs du nuage. Le principal défi des fournisseurs de services est de maintenir la satisfaction de leurs consommateurs tout en minimisant le coût de ces services. Du point de vue SaaS, ce défi peut être résolu d une manière ad-hoc par l allocation/-libération des ressources selon un ensemble de règles prédéfinies avec Amazon Auto Scaling par exemple. Cependant, implémenter finement ces règles d élasticité n est pas une tâche triviale. D une part, la difficulté de profiler la performance d un service compromet la précision de la planification des ressources. D autre part, plusieurs paramètres doivent être pris en compte, tels que la multiplication des types de ressources, le temps non-négligeable d initialisation de ressource et le modèle de facturation IaaS. Cette thèse propose une solution complète pour la gestion des contrats de service du nuage. Nous introduisons CSLA (Cloud ServiceLevel Agreement), un langage dédié à la définition de contrat de service en nuage. Il adresse finement les violations SLA via la dégradation fonctionnelle/QdS et des modèles de pénalité avancés. Nous proposons, ensuite, HybridScale un framework de dimensionnement automatique dirigé par les SLA. Il implémente l élasticité de façon hybride : gestion réactive-proactive, dimensionnement vertical horizontalet multi-couches (application-infrastructure). Notre solution est validée expérimentalement sur Amazon EC2.Cloud computing promises to completely revolutionize the way to manage resources. Thanks to elasticity, resources can be provisioning within minutes to satisfy a required level of Quality of Service(QoS) formalized by Service Level Agreements (SLAs) between different Cloud actors. The main challenge of service providers is to maintain its consumer s satisfaction while minimizing the service costs due to resources fees. For example, from the SaaS point of view, this challenge can be achieved in ad-hoc manner by allocating/releasing resources based on a set of predefined rules as Amazon Auto Scaling implements it. However, doing it right in a way that maintains end-users satisfaction while optimizing service cost is not a trivial task. First, because of the difficulty to profile service performance,the accuracy of capacity planning may be compromised. Second, several parameters should be taken into account such as multiple resource types, non-ignorable resource initiation time and IaaS billing model. For that purpose, we propose a complete solution for Cloud Service Level Management. We first introduce CSLA (Cloud Service LevelAgreement), a specific language to describe SLA for Cloud services. It finely expresses SLA violations via functionality/QoS degradationand an advanced penalty model. Then, we propose HybridScale, an auto-scaling framework driven by SLA. It implements the Cloud elasticity in a triple hybrid way : reactive-proactive management, vertical horizontal scaling at cross-layer (application-infrastructure). Our solution is experimentally validated on Amazon EC2.NANTES-ENS Mines (441092314) / SudocSudocFranceF

    Livre blanc sur les grilles de production

    No full text

    Gestion de contexte pour l'optimisation de l'accès et l'adaptation des services sur des environnements hétérogènes

    Get PDF
    Dans le domaine des TIC, les services de demain seront certainement basés sur des systèmes ubiquitaires, omniprésents et pervasifs. Ces systèmes devront prendre en considération différents paramètres provenant de l environnement de l utilisateur, c est à dire son contexte. Le contexte de l utilisateur peut être composé d informations statiques ou dynamiques, objectives ou subjectives, quantitatives ou qualitatives. Il peut inclure des données telles que la localisation géographique, les caractéristiques du terminal utilisé, la température ambiante, l humeur de l utilisateur. Afin d améliorer la QoS et la QoE, les services et les systèmes doivent être adaptés aux changements du contexte des utilisateurs. Le contexte doit donc être collecté et interprété et les règles d adaptation du système doivent être définies. Sur les systèmes étendus, riches, dynamiques et hétérogènes, tels que ceux considéré dans le cadre de cette thèse, ces opérations doivent être automatisées. Vu la quantité et la complexité des données contextuelles à considérer, l utilisation de la sémantique dans la gestion de contexte peut faciliter cette automatisation et ouvrir la porte au raisonnement et à l adaptation automatiques. Aujourd hui, peu de solutions viables existent pour cette problématique. Nous proposons alors d utiliser et d adapter des mécanismes et technologies provenant du web sémantique pour décrire et manipuler les informations de contexte. Dans un premier temps, nous avons proposé une méthodologie de conception qui nous permit de proposer Ubiquity-Ont : une ontologie générique au domaine des TIC, flexible et extensible. Les données de contexte ont alors été décrites sous forme de concepts et d instances, reliés par des relations sémantiques. Nous avons ensuite proposé une architecture overlay, composée de deux niveaux de vitalisation et permettant d intégrer un gestionnaire de contexte, basé sur la sémantique, sur des environnements réseaux et services. Cette solution overlay permet de (a) masquer l hétérogénéité des composants du système et (b) d augmenter virtuellement les entités du système existant par les capacités nécessaires à la manipulation et au raisonnement sur les données sémantiques du contexte. Nos propositions ont étés implémentées et testées sur une plateforme réelle et appliquées à deux cas d études : Gestion de la mobilité sur des environnements de réseaux d accès hétérogènes et Optimisation de la consommation d énergie dans les terminaux mobilesFuture Information and Telecommunication Systems are expected to be pervasive and ubiquitous solutions, able to consider users context and to automatically adapt to their environments. Traditional configuration and management tools are not adapted. The richness, the heterogeneity and the complexity of the upcoming systems require automated solutions able to gather contextual information, to reason on them and to make the appropriate adaptation decisions. The representation and the sharing of contextual information is a key issue. In this thesis, we proposed and used a methodology to conceive Ubiquity-Ont , a generic ontology dedicated to Information and Telecommunication Systems. Contextual information are the described through semantic concepts, instances and relations. We then proposed an overlay architecture, composed of two virtualization layers that can integrate a semantic context management framework over existing networking environments. This architecture is able (a) to hide any heterogeneity among the system components and (b) to augment the different entities with additional capacities for context gathering, reasoning and sharing operations. The proposed solutions were then implemented and tested in Lab for two applications. The fisrt is related to mobility management over heterogeneous Wireless Networks and the second aims to power optimization on mobile terminals. These two case studies helped in proving and enhancing the proposed solutionsEVRY-INT (912282302) / SudocSudocFranceF

    RoSe (un framework pour la conception et l'exécution d'applications distribuées dynamiques et hétérogènes)

    Get PDF
    L'adaptation est aujourd'hui devenue un enjeu majeur en Génie Logiciel. Les ingénieurs sont en effet régulièrement confrontés à des demandes d'évolution qui peuvent prendre de nombreuses formes : mises à jour, nouvelles versions, besoins en nouvelles fonctionnalités, etc. Cette tendance est accrue par l'émergence de nouveaux domaines tels que l'informatique ubiquitaire ou le cloud computing qui exigent des changements dynamiques dans des environnements en constante évolution. Ainsi, dans ces domaines, les ressources sont souvent élastiques, volatiles et hétérogènes. Cette thèse s'intéresse en particulier à la conception et à l'exécution d'applications distribuées composées d'entités hétérogènes et qui nécessitent d'être adaptées durant l'exécution. Notre approche s'appuie sur les modèles à composant orientés service et sur les styles d'architectures SOA et REST. Nous proposons un framework, nommé RoSe, qui permet l'import de ressources distantes dans un framework à composant orienté service et l'export de service locaux. RoSe permet aux développeurs et aux administrateurs de gérer la distribution des applications de manière totalement indépendante et dynamique grâce à un langage de configuration et d'une API dite fluent. Le framework lui-même est modulaire et flexible et supporte l'ajout et le retrait de composants durant l'exécution. L'implantation de RoSe est hébergée au sein du projet OW2 Chameleon et est aujourd'hui utilisée dans plusieurs projets industriels et académiques.Adaptation has now become a major challenge in Software Engineering. Engineers are indeed regularly confronted with requests for changes that can take many forms: updates, new versions, new features need etc. This trend is enhanced by the emergence of new areas such as ubiquitous computing or cloud computing that require dynamic changes in rapidly constantly evolving environments. For instance, in these areas, resources are often elastic, volatile and heterogeneous. %This thesis focuses especially in the design and execution of distributed applications composed of heterogeneous entities which need to be adapted at runtime. Our approach is based on service-oriented component models and on the SOA and REST architectural styles. We propose a framework, named RoSe, which enables the import of remote resources in a service-oriented component framework and the export of local services. RoSe allows developers and administrators to manage the distribution of their application in a totally independent and dynamic way thanks to a configuration language and a fluent API. The framework itself is modular, flexible and supports the addition and removal of components during execution. The implementation of RoSe is hosted by OW2 in the Chameleon project and is now used in several industrial and academic projects.SAVOIE-SCD - Bib.électronique (730659901) / SudocGRENOBLE1/INP-Bib.électronique (384210012) / SudocGRENOBLE2/3-Bib.électronique (384219901) / SudocSudocFranceF
    corecore