Contributions to Large-scale Distributed Systems The infrastructure Viewpoint - Toward Fog and Edge Computing as The Next Utility Computing Paradigm?
Contributions aux systèmes distribués à large échelle la vision infrastructure - Vers le Fog et l’Edge computing comme nouveau modèle d’informatique utilitaire ?
Abstract
Afin de satisfaire la demande croissante de calcul et de stockage, les systèmes informatiques n’ont cessé d’évoluer. Des super-ordinateurs (« mainframes ») à l’avènement des infrastructures actuelles dites d’informatique en nuage, les évolutions ont été rythmées par les avancées technologiques réalisées depuis les années 1960 dans le domaine de la conception des ordinateurs bien évidemment mais également dans celui des communications. En effet, parce qu’ils permettent de fournir des capacités au delà de celles pouvant être délivrées par une unique machine, les systèmes informatiques ont évolué dès les années 1990 vers un modèle d’infrastructure distribuée reposant sur une interconnexion de plusieurs machines distinctes. Cependant, de part leur complexité d’administration et d’utilisation, il a fallut attendre près de vingt ans d’activités de recherche et de transferts technologiques pour démocratiser ces infrastructures aussi bien dans les domaines scientifiques qu’industriels.
Parmi les technologies qui ont permis cette adoption massive des infrastructures distribuées, les technologies de virtualisation système ont joué un rôle clé. La virtualisation système peut être vue comme une couche d’abstraction entre le matériel et les logiciels applicatifs. Cette abstraction permet une division des ressources physiques proposées par une machine en plusieurs éléments « virtuels ». Chacun de ces éléments peut être affecté à la volée à chacune des applications en fonction de leurs besoins, offrant ainsi une plus grande flexibilité dans la gestion des ressources disponibles. Parmi les abstractions disponibles, la machine virtuelle est probablement la plus connue. Une machine virtuelle fournit une vision abstraite d’une machine physique avec sa propre pile logicielle ( i.e., un système d’exploitation, des bibliothèques et les applicatifs à exécuter). Cette vision plus ou moins réduite des ressources disponibles est rendue possible grâce à un hyperviseur déployé sur la machine physique. Un hyper- viseur peut être vue comme un système d’exploitation traditionnel qui exécute des machines virtuelles en place des processus usuels. En d’autres termes, il est en charge de superviser et d’exécuter l’ensemble des machines virtuelles qui sont présentes sur la machine physique. L’utilisation des machines virtuelles offre plusieurs avantages
du point de vue des utilisateurs. Tout d’abord, elle permet de configurer la totalité de la pile logicielle présente dans la machine virtuelle et de sauvegarder cette pile logicielle de manière pérenne. Ce mécanisme permet de redémarrer cet environnement « virtualisé » à chaque fois que nécessaire sans se préoccuper de l’endroit où la ma-
chine virtuelle sera démarrée. De plus, en s’appuyant sur la granularité offerte par la machine virtuelle pour développer les applications (en particulier des applications n tiers), il est possible d’adapter le nombre de machines virtuelles de manière à satisfaire la qualité de service attendue. Le terme d’élasticité est souvent employé pour
décrire ce phénomène d’adaptation. Enfin, l’utilisation des machines virtuelles offre une isolation plus forte entre les différents services qui sont exécutés simultanément sur une même machine physique. En effet, l’hyperviseur doit assurer qu’une machine virtuelle ne puisse en aucun cas accéder aux ressources affectées aux autres machines
virtuelles co-localisées sur la même machine physique.
Bien que les technologies de virtualisation aient joué un rôle important dans l’adoption quasi-unanime aujourd’hui du modèle d’informatique en nuage, notamment sur les solutions « Infrastructure-as-a-Service » (IaaS), elles ont également conduit à de nouveau défis scientifiques et techniques, notamment sur les aspects qui ont trait à la gestion des ressources offertes par l’infrastructure (c.-à-d. l’ensemble des serveurs de calcul, de stockage et des liens réseau) ou encore à la gestion du cycle de vie des machines virtuelles (création, mise en pause, redémarrage et migration) au travers cette même infrastructure.
Dans ce manuscrit je présente une synthèse des principaux travaux que j’ai réalisés autour ces problématiques depuis mon arrivée en 2008 dans l’équipe ASCOLA. Plus précisément, je me concentre sur trois axes dans lesquels j’ai réalisés diverses contributions. Le premier axe aborde la problématique du placement dynamique des machines virtuelles. Le second traite de la mise en place d’abstractions et de modèles exactes permettant l’étude via simulation des défis relatifs à la gestion et l’utilisation de machines virtuelles dans une infrastructure distribuée à large-échelle. Enfin, le troisième et dernier axe décrit une nouvelle génération d’infrastructure visant à corriger les problèmes intrinsèques au modèle d’informatique en nuage reposant sur un nombre limité de centres de données à large échelle. Cet autour de cet axe et des perspectives que je souhaite y donner pour les prochaines années que je conclus ce document.
Origin | Files produced by the author(s) |
---|
Loading...