Energy efficient resource allocation in cloud computing environments. (Allocation des ressources efficaces en énergie dans les environnements Cloud)

L'informatique en nuage (Cloud Computing) a emerge comme un nouveau paradigme pour offrir des ressources informatiques a la demande et pour externaliser des infrastructures logicielles et materielles. Le Cloud Computing est rapidement et fondamentalement en train de revolutionner la facon dont les services informatiques sont mis a disposition et geres. Ces services peuvent etre demandes a partir d'un ou plusieurs fournisseurs de Cloud d'ou le besoin de la mise en reseau entre les composants des services informatiques distribues dans des emplacements geographiquement repartis. Les utilisateurs du Cloud veulent aussi deployer et instancier facilement leurs ressources entre les differentes plateformes heterogenes de Cloud Computing. Les fournisseurs de Cloud assurent la mise a disposition des ressources de calcul sous forme des machines virtuelles a leurs utilisateurs. Par contre, ces clients veulent aussi la mise en reseau entre leurs ressources virtuelles. En plus, ils veulent non seulement controler et gerer leurs applications, mais aussi controler la connectivite reseau et deployer des fonctions et des services de reseaux complexes dans leurs infrastructures virtuelles dediees. Les besoins des utilisateurs avaient evolue au-dela d'avoir une simple machine virtuelle a l'acquisition de ressources et de services virtuels complexes, flexibles, elastiques et intelligents. L'objectif de cette these est de permettre le placement et l'instanciation des ressources complexes dans des infrastructures de Cloud distribues tout en permettant aux utilisateurs le controle et la gestion de leurs ressources. En plus, notre objectif est d'assurer la convergence entre les services de cloud et de reseau. Pour atteindre ces objectifs, cette these propose des algorithmes de mapping d'infrastructures virtuelles dans les centres de donnees et dans le reseau tout en respectant les exigences des utilisateurs. Avec l'apparition du Cloud Computing, les reseaux traditionnels sont etendus et renforces avec des reseaux logiciels reposant sur la virtualisation des ressources et des fonctions reseaux. En plus, le nouveau paradigme d'architecture reseau (SDN : Software Defined Networks) est particulierement pertinent car il vise a offrir la programmation du reseau et a decoupler, dans un equipement reseau, la partie plan de donnees de la partie plan de controle. Dans ce contexte, la premiere partie de la these propose des algorithmes optimaux (exacts) et heuristiques de placement pour trouver le meilleur mapping entre les demandes des utilisateurs et les infrastructures sous-jacentes, tout en respectant les exigences exprimees dans les demandes. Cela inclut des contraintes de localisation permettant de placer une partie des ressources virtuelles dans le meme nœud physique. Ces contraintes assurent aussi le placement des ressources dans des nœuds distincts. Les algorithmes proposes assurent le placement simultane des nœuds et des liens virtuels sur l'infrastructure physique. Nous avons propose aussi un algorithme heuristique afin d'accelerer le temps de resolution et de reduire la complexite du probleme. L'approche proposee se base sur la technique de decomposition des graphes et la technique de couplage des graphes bipartis. Dans la troisieme partie de la these, nous proposons un cadriciel open source (framework) permettant d'assurer la mise en reseau dynamique entre des ressources Cloud distribues et l'instanciation des fonctions reseau dans l'infrastructure virtuelle de l'utilisateur. Ce cadriciel permettra de deployer et d'activer les composants reseaux afin de mettre en place les demandes des utilisateurs. Cette solution se base sur un gestionnaire des ressources reseaux "Cloud Network Gateway Manager" et des passerelles logicielles permettant d'etablir la connectivite dynamique et a la demande entre des ressources cloud et reseau [. ]