Ordonnancement et déploiement d’applications de gestion de données à grande échelle sur des plates-formes de type Clouds (Adrian Muresan)

par le 04/03/2013

http://tel.archives-ouvertes.fr/tel-00793092

L’usage des plateformes de Cloud Computing offrant une Infrastructure en tant que service (IaaS) a augmenté au sein de l’industrie. Les infrastructures IaaS fournissent des ressources virtuelles depuis un catalogue de types prédéfinis. Les avancées dans le domaine de la virtualisation rendent possible la création et la destruction de machines virtuelles au fur et à mesure, avec un faible surcout d’exploitation. En conséquence, le bénéfice offert par les plate-formes IaaS est la possibilité de dimensionner une architecture virtuelle au fur et à mesure de l’utilisation, et de payer uniquement les ressources utilisées. D’un point de vue scientifique, les plateformes IaaS soulèvent de nouvelles questions concernant l’efficacité des décisions prises en terme de passage à l’échelle, et également l’ordonnancement des applications sur les plateformes dynamiques. Les travaux de cette thèse explorent ce thème et proposent des solutions à ces deux problématiques. La première contribution décrite dans cette thèse concerne la gestion des ressources. Nous avons travaillé sur le redimensionnement automatique des applications clientes de Cloud afin de modéliser les variations d’utilisation de la plateforme. De nombreuses études ont montré des autosimilarités dans le trafic web des plateformes, ce qui implique l’existence de motifs répétitifs pouvant être périodiques ou non. Nous avons développé une stratégie automatique de dimensionnement, capable de prédire le temps d’utilisation de la plateforme en identifiant les motifs répétitifs non périodiques. Dans un second temps, nous avons proposé d’étendre les fonctionnalités d’un intergiciel de grilles, en implémentant une utilisation des ressources à la demandes.Nous avons développé une extension pour l’intergiciel DIET (Distributed Interactive Engineering Toolkit), qui utilise un marché virtuel pour gérer l’allocation des ressources. Chaque utilisateur se voit attribué un montant de monnaie virtuelle qu’il utilisera pour exécuter ses tâches. Le mécanisme d’aide assure un partage équitable des ressources de la plateforme entre les différents utilisateurs. La troisième et dernière contribution vise la gestion d’applications pour les plateformes IaaS. Nous avons étudié et développé une stratégie d’allocation des ressources pour les applications de type workflow avec des contraintes budgétaires. L’abstraction des applications de type workflow est très fréquente au sein des applications scientifiques, dans des domaines variés allant de la géologie à la bioinformatique. Dans ces travaux, nous avons considéré un modèle général d’applications de type workflow qui contient des tâches parallèles et permet des transitions non déterministes. Nous avons élaboré deux stratégies d’allocations à contraintes budgétaires pour ce type d’applications. Le problème est une optimisation à deux critères dans la mesure où nous optimisons le budget et le temps total du flux d’opérations. Ces travaux ont été validés de façon expérimentale par leurs implémentations au sein de la plateforme de Cloud libre Nimbus et de moteur de workflow MADAG présent au sein de DIET. Les tests ont été effectuées sur une simulation de cosmologie appelée RAMSES. RAMSES est une application parallèle qui, dans le cadre de ces travaux, a été portée sur des plateformes virtuelles dynamiques. L’ensemble des résultats théoriques et pratiques ont débouché sur des résultats encourageants et des améliorations.