• Aucun résultat trouvé

Part V – Conclusions and future work

A.4 Organisation du manuscrit

Ce manuscrit est organisé dans cinq parties.

La première partie présente le contexte de notre travail. Le chapitre 2 introduit le

paradigme Cloud computing, et plus particulièrement l’infrastructure comme un service (Infrastructure-as-a-Service). Ce chapitre se referme sur les problématiques de recherche émer- gées au fur et à mesure que le Cloud Computing s’est développé vers un paradigme popu- laire autant au niveau de l’industrie, que dans la communauté scientifique. Parmi ces défis, nous nous concentrons davantage sur la gestion de données. Ainsi, le chapitre 3 présente un survol des systèmes de stockage distribuées, à savoir les systèmes de fichiers parallèles, des exemples de systèmes dédiés aux applications de traitement de données intensives, les services de données des Clouds Infrastructure-as-a-Service, des Clouds Platform-as-a-Service, ainsi que des services internes à certains Clouds. Le chapitre analyse les différents choix opé- rés par les systèmes précédemment cités, mais aussi les propriétés nécessaires aux services Cloud pour gérer efficacement des grandes quantités de données.

Le chapitre 4 aborde le problème du calcul autonomique appliqué aux Clouds. Il pré- sente les principes du calcul autonomique puis discute plus en détail les propriétés d’auto- connaissance, d’auto-protection, et d’auto-configuration par rapport aux Clouds et aux ser- vices de gestion de données. Le chapitre 5 présente en détail BlobSeer, un système de gestion de données qui vise les applications distribuées à accès intensif aux données. Le chapitre

A.4 – Organisation du manuscrit 157 présente les principes de conception, l’architecture, ainsi que les opérations d’accès aux don- nées de BlobSeer. BlobSeer est utilisé dans la suite de la thèse pour étudier des mécanismes d’auto-gestion et le service de gestion de données des clouds.

La seconde partie présente la première contribution de cette thèse, qui comprend un en- semble de canevas conçus dans le but d’ajouter des propriétés d’auto-gestion à des sys- tèmes de stockage de données. Le chapitre 6 se concentre sur trois approches génériques pour l’auto-gestion, visant à définir des mécanismes d’auto-connaissance, auto-protection et auto-configuration pour des systèmes de stockage de données distribués. Une présenta- tion de haut niveau de l’architecture du système d’auto-protection est proposée, ainsi que quelques algorithmes centraux décrivant des politiques d’utilisation et de détection de com- portements non-conformes.

Dans le chapitre 7, nous validons les plates-formes d’auto-gestion susmentionnées en les intégrant dans BlobSeer. Nous analysons les détails d’implémentation et les modules d’interfaçage requis pour équiper BlobSeer avec des mécanismes d’introspection, le cane- vas de sécurité et l’auto-configuration du nombre de nœuds de stockage. L’implémentation proposée pour les mécanismes d’introspection est basée sur la connection de BlobSeer à l’environnement de monitoring MonALISA. Des techniques d’agrégation et de cache sont utilisées afin de proposer un système performant. Ensuite, le chapitre décrit l’implémenta- tion de l’auto-protection en commençant par analyser des failles de sécurité de BlobSeer puis en se focalisant sur une attaque de type déni de service. Les différents éléments du système sont plus détaillés, comme en particulier le format de la description des politiques au travers d’un exemple.

Le dernier chapitre de cette partie, à savoir le chapitre 8, introduit Grid’5000, notre plate- forme expérimentale constituée d’une grille de calcul de grande taille, ainsi que les outils de déploiement que nous avons développés pour exécuter et évaluer les canevas d’auto-gestion proposés. Ce chapitre propose une évaluation de deux mécanismes décrits au chapitre pré- cédent, l’introspection et l’auto-protection, sur la plate-forme expérimentale Grid’5000. Les expériences ont été réalisées à l’aide de scripts s’appuyant sur les outils de Grid’5000 tels que Oar, kadeploy, taktuk et l’API Grid’5000. Des expériences jusqu’à 150 nœuds de stockage BlobSeer montrent que l’ajout de mécanismes d’introspection via MonALISA n’a pas généré de surcoût visible pour des écritures de tailles conséquentes. Des exemples d’utilisation des facilités offertes par l’introspection sont présentées, comme par exemple le nombre d’accès aux données, ainsi que la taille des données par version. Le chapitre se termine par une analyse des performances du mécanisme d’auto-protection. Tout d’abord, il montre que les clients malicieux ont bien un impact négatif sur les performances mais que les mécanismes proposés détectent les clients malicieux : ainsi les performances des clients non malicieux sont maintenues. Ensuite, le chapitre présente une évaluation du coût de détection.

La troisième partie introduit la plate-forme Nimbus, un système open-source proposant un Cloud Infrastructure-as-a-Service, et insiste sur Cumulus, le service de stockage de don- nées de Nimbus. Ensuite, le chapitre 10 présente notre contribution concernant la gestion de données dans le Cloud. Ce chapitre étudie les modifications à apporter à BlobSeer pour servir de service de stockage à Cumulus. Nous avons conçu un système de fichiers reposant sur BlobSeer afin de munir Cumulus d’un support de stockage efficace pour la gestion de

données de très grande taille. Le chapitre débute en présentant une extension ajoutant une interface orientée système de fichiers à BlobSeer. Le cœur de cette couche est un gestionnaire d’espace de nommage. Ce gestionnaire est centralisé et implémente un espace de nommage hiérarchique, supportant plusieurs versions d’un fichier, fonctionnalité directement offerte par BlobSeer. Bien qu’offrant une interface à la POSIX, la sémantique est différente car elle reprend celle de BlobSeer (écriture concurrente, versioning de fichier, et une opération ap- pend) afin de permettre une utilisation dédiée efficace. Le chapitre décrit l’implémentation du gestionnaire d’espace de nommage ainsi que l’intégration de BlobSeer comme couche de stockage dans Cumulus. Nous concluons cette partie sur un ensemble de benchmarks qui évaluent la performance et la capacité de passer à l’échelle de l’implémentation du service Cumulus et de son support de stockage bâti à partir de BlobSeer.

La quatrième partie comprend deux chapitres qui proposent plusieurs évaluations du ser- vice de stockage Cloud basé sur BlobSeer dans le contexte des applications réelles. Le cha- pitre 11 examine des aspects liés à la performance et au coûts de l’exécution des applications MapReduce dans des environnements Cloud. Il compare comment deux benchmarks, grep et sort, se comportent en terme de performance et de coût entre des exécutions Grillle et Clouds. Hadoop est utilisé sur Grid’5000 avec ou sans Nimbus. Les experiments montrent que la virtualisation apporte un surcoût qui peut ne pas être négligeable. En prenant comme coûts financiers ceux d’Amazon, on a calculé les coûts pour les deux benchmarks et on a montré que les coûts sont dominés par le transfert des données.

Dans le chapitre 12, nous avons analysé l’impact de l’utilisation des systèmes de sto- ckage Cloud pour des applications fortement couplées, telles que le Cloud Model 1 (CM1), un logiciel de simulation numérique permettant à modeler une gamme diverse de phéno- mènes atmosphériques. Cette application, de manière assez représentative des applications HPC, suppose un accès partagé à un espace de stockage. Afin de contourner les limitations des Clouds qui ne permettent pas simplement de partager un espace de stockage persistant entre VM, nous proposons de détourner les appels aux entrées/sorties vers une API de type Amazon S3. Cela est rendu transparent via l’utilisation de FUSE. Ainsi, le chapitre décrit une étude de faisabilité en ajoutant un noyau de système de fichier au dessus de l’API S3. Ces deux chapitres incluent des expérimentations réalisées grâce à des centaines de nœuds appartenant à Grid’5000.

La cinquième partie synthétise les contributions de cette thèse dans le chapitre 13 et dis- cute une série de défis de recherche inexplorés qui ont été révélés par ces travaux dans le chapitre 14.

Documents relatifs