Systmes quorums dynamiques et projet Vi Sa Ge

  • Slides: 39
Download presentation
Systèmes à quorums dynamiques et projet Vi. Sa. Ge Ivan Frain Institut de Recherche

Systèmes à quorums dynamiques et projet Vi. Sa. Ge Ivan Frain Institut de Recherche en Informatique de Toulouse (IRIT) Grenoble - 17/11/2006

Plan ¡ ¡ ¡ Cohérence des réplicas et systèmes à quorums Problème de la

Plan ¡ ¡ ¡ Cohérence des réplicas et systèmes à quorums Problème de la charge des noeuds Protocoles de reconfiguration de systèmes à quorums l l l ¡ Vi. Sa. Ge : intergiciel de stockage pour grille l l ¡ Un cadre de construction Prise en compte de la charge des nœuds de stockage Prise en compte de la latence réseau Architecture logicielle Carnet de route Conclusion et Perspectives Grenoble - 17/11/2006 2

Problème de la cohérence Règle: chacun lit et écrit sa copie locale Copie de

Problème de la cohérence Règle: chacun lit et écrit sa copie locale Copie de Paul Ecrire Lire Paul Copie de Jeanne Ecrire Lire Jeanne Grenoble - 17/11/2006 3

Problème de la cohérence Premier exemple de solution : ROWA Règle: chacun lit sa

Problème de la cohérence Premier exemple de solution : ROWA Règle: chacun lit sa copie locale mais écrit toutes les copies Ecrire Lire Paul Jeanne Grenoble - 17/11/2006 4

Problème de la cohérence Deuxième exemple de solution : un système à quorums Règle

Problème de la cohérence Deuxième exemple de solution : un système à quorums Règle : chacun lit et écrit une majorité de copies Remarque : ajout d’un numéro de version aux copies Ecrire Lire Paul Version 0 1 Version ? Ecrire Lire Version 2 0 Nicolas Version ? Ecrire Version 1 2 0 Jeanne Grenoble - 17/11/2006 5

Systèmes à quorums : définition ¡ Quorum q - Ensemble minimum de copies impliquées

Systèmes à quorums : définition ¡ Quorum q - Ensemble minimum de copies impliquées dans une opération de lecture ou d’écriture afin que l’opération réussisse. ¡ Coterie C - Ensemble des quorums possibles pour un groupe de copies et un protocole donné l Intersection : l Minimalité : Grenoble - 17/11/2006 6

Systèmes à quorums : coterie en arbre ¡ Protocole de Agrawal et Abbadi [1]

Systèmes à quorums : coterie en arbre ¡ Protocole de Agrawal et Abbadi [1] P 1 P 2 P 3 P 4 P 5 ¡ P 6 ¡ Nœuds organisés logiquement en arbre ¡ Quorum = un chemin de la racine à une feuille = {P 1, P 2, P 4} ¡ Coterie = {{P 1, P 2, P 4}, {P 1, P 2, P 5}, {P 1, P 3, P 6}, {P 1, P 3, P 7}} P 7 Sur quel critère construire la coterie ? l l Les solutions existantes : latence réseau Notre solution : charge des noeuds Grenoble - 17/11/2006 7

Charge d’une coterie : définition ¡ Un nœud possédant une réplique : ¡ Charge

Charge d’une coterie : définition ¡ Un nœud possédant une réplique : ¡ Charge d’un nœud : ¡ Charge d’un Quorum : ¡ Charge d’une Coterie : Grenoble - 17/11/2006 8

Problème P 1 12 P 3 40 15 P 4 50 P 5 P

Problème P 1 12 P 3 40 15 P 4 50 P 5 P 6 P 7 23 9 8 21 23 40 15 40 50 50 180 Grenoble - 17/11/2006 9

Protocoles de reconfiguration de systèmes à quorums ¡ Reconfiguration = changement de coterie ¡

Protocoles de reconfiguration de systèmes à quorums ¡ Reconfiguration = changement de coterie ¡ But : utiliser une coterie mieux adaptée à l’environnement ¡ Un protocole de reconfiguration : l Quand effectuer une reconfiguration? ¡ Politique de récupération des informations l l ¡ Politique de déclenchement l l l Récupération à la demande Récupération périodique Déclenchement à la demande Déclenchement périodique Comment effectuer une reconfiguration? ¡ Grenoble - 17/11/2006 Politique de reconfiguration 10

Trois protocoles de reconfiguration pour systèmes à quorums en arbre ¡ Reconfiguration en fonction

Trois protocoles de reconfiguration pour systèmes à quorums en arbre ¡ Reconfiguration en fonction de la charge des nœuds l l ¡ Protocole des permutations élémentaires Protocole de permutation globale Reconfiguration en fonction de la charge et de la latence réseau l Protocole de permutation hybride Grenoble - 17/11/2006 11

Protocole des permutations élémentaires (1/2) ¡ Politique de reconfiguration l Permuter deux nœuds parents

Protocole des permutations élémentaires (1/2) ¡ Politique de reconfiguration l Permuter deux nœuds parents si le père est plus chargé que le fils 15 15 40 9 50 50 23 9 8 21 23 40 8 21 40 40 50 50 23 40 50 50 9 8 15 … 50 15 9 23 40 8 21 23 40 50 50 23 40 50 21 Grenoble - 17/11/2006 12

Protocole des permutations élémentaires (2/2) ¡ Politique d’information à la demande l l ¡

Protocole des permutations élémentaires (2/2) ¡ Politique d’information à la demande l l ¡ Politique de déclenchement à la demande l ¡ Un des clients est choisit A chacune de ses opérations de lecture ou d’écriture (un quorum) Si une permutation élémentaire est possible dans le quorum contacté lors d’une opération de lecture ou d’écriture Problème l Les nœuds les plus chargés se trouvent dans les feuilles 8 8 15 21 9 9 23 40 50 21 23 40 50 15 Grenoble - 17/11/2006 13

Protocole de permutation globale Politique de reconfiguration ¡ l agréger les noeuds les plus

Protocole de permutation globale Politique de reconfiguration ¡ l agréger les noeuds les plus chargés dans le même sous arbre 8 8 15 23 23 23 9 40 40 50 50 21 21 ¡ Politique d’information périodique ¡ Politique de déclenchement périodique Grenoble - 17/11/2006 50 50 9 40 40 21 21 15 15 14

Prise en compte de la latence réseau Temps de réponse d’une coterie ¡ Temps

Prise en compte de la latence réseau Temps de réponse d’une coterie ¡ Temps de réponse d’un nœud Pj vis-à-vis d’un autre nœud Pi : ¡ Temps de réponse d’un quorum vis-à-vis d’un noeud Pi : ¡ Temps de réponse d’une coterie vis-à-vis d’un nœud Pi : Grenoble - 17/11/2006 15

Le problème P 1 P 2 P 3 P 4 P 5 P 6

Le problème P 1 P 2 P 3 P 4 P 5 P 6 P 7 80 20 90 40 110 50 30 Grenoble - 17/11/2006 16

Protocole de permutation hybride ¡ Politique de reconfiguration l Pj Médiane ¡ P 1

Protocole de permutation hybride ¡ Politique de reconfiguration l Pj Médiane ¡ P 1 P 2 P 3 P 4 P 5 P 6 P 7 180 120 290 240 310 50 30 80 20 190 140 210 150 130 180 120 90 40 110 250 230 180 120 190 140 210 150 130 Politique d’information périodique l l ¡ Permutation globale avec temps de réponse médians Récupération de la latence la première fois Récupération des charges les autres fois Politique de déclenchement périodique Grenoble - 17/11/2006 17

Évaluation des protocoles de reconfiguration ¡ Algorithme de Shvartsman et Lynch l l ¡

Évaluation des protocoles de reconfiguration ¡ Algorithme de Shvartsman et Lynch l l ¡ Plusieurs lecteurs et plusieurs rédacteurs Supporte la reconfiguration dynamique de coterie ¡ Propriété d’intersection entre deux coteries Implémentation dans le simulateur Neko de Urban, Défago et Schiper l l La grille simulée utilise 7, 15, 31, 63 et 127 réplicas (nœuds) La charge d’un nœud n’évolue pas trop vite Les nœuds ne sont pas dédiés au système de stockage 3 contextes de simulation : ¡ ¡ ¡ l La latence au niveau des serveurs est dominante (contexte LS) La latence réseau est dominante (contexte LR) Les latences serveur et réseau sont équivalentes (contexte LEQ) Temps de simulation fixe Grenoble - 17/11/2006 18

Sans reconfiguration avec 7 noeuds Contexte LS Contexte LEQ Contexte LR Grenoble - 17/11/2006

Sans reconfiguration avec 7 noeuds Contexte LS Contexte LEQ Contexte LR Grenoble - 17/11/2006 19

Protocole des permutations élémentaires Contexte LS et 7 réplicas Sans reconfiguration Grenoble - 17/11/2006

Protocole des permutations élémentaires Contexte LS et 7 réplicas Sans reconfiguration Grenoble - 17/11/2006 Protocole des permutations élémentaires 20

Protocole de permutation globale Contexte LS et 31 réplicas Sans reconfiguration Grenoble - 17/11/2006

Protocole de permutation globale Contexte LS et 31 réplicas Sans reconfiguration Grenoble - 17/11/2006 Protocole de permutation globale Période = 200 K 21

Protocole de permutation hybride Contexte LEQ et 63 réplicas Sans reconfiguration Grenoble - 17/11/2006

Protocole de permutation hybride Contexte LEQ et 63 réplicas Sans reconfiguration Grenoble - 17/11/2006 Protocole de permutation hybride Période = 200 K 22

Synthèse des résultats Calcul du débit d’opérations (throughput) pour un temps de simulation fixé

Synthèse des résultats Calcul du débit d’opérations (throughput) pour un temps de simulation fixé ¡ Contexte LS LR LEQ Nœuds 7 Elem Sans Hybride 100 K 15 Elem Sans Hybride 300 K 31 Globale 200 K Hybride 300 K Hybride 100 K 63 Sans Hybride 400 K Hybride 200 K 127 Sans Hybride 300 K Grenoble - 17/11/2006 23

Grenoble - 17/11/2006 24

Grenoble - 17/11/2006 24

Architecture physique d’une grille Grenoble - 17/11/2006 25

Architecture physique d’une grille Grenoble - 17/11/2006 25

Composants logiciels de Vi. Sa. Ge Application Administration Et Monitoring Concurrence Système de gestion

Composants logiciels de Vi. Sa. Ge Application Administration Et Monitoring Concurrence Système de gestion de fichiers et Cohérence Virtualisation Communication Fabrique Grenoble - 17/11/2006 26

Vi. Sa. Ge : carnet de route 1. Expression des besoins Aujourd’hui 2. Architecture

Vi. Sa. Ge : carnet de route 1. Expression des besoins Aujourd’hui 2. Architecture et Design Prototypage 3. 1 Prototypage Développement 3. 2 Développement 4. Gridification 5. Tests in situ Tests 0 février 2005 Grenoble - 17/11/2006 2 4 8 17 21 24 mars 2007 27

Conclusion ¡ Protocoles de reconfiguration : l l l Définition de la charge et

Conclusion ¡ Protocoles de reconfiguration : l l l Définition de la charge et du temps de réponse d’une coterie Variation de la charge des nœuds est un problème Protocoles de reconfiguration ¡ ¡ ¡ l ¡ Permutations élémentaires Permutation globale Permutation hybride Amélioration du débit d’opération sous certaines conditions Projet Vi. Sa. Ge : l Proposition d’un nouvel intergiciel dédié a stockage de données sur grille : Vi. Sa. Ge ¡ ¡ Grenoble - 17/11/2006 Interface fichier fournissant une certaine qualité de service Différentes méthodes de gestion de la cohérence 28

Perspectives ¡ Protocoles de reconfiguration : l l l Preuve de l’algorithme des permutations

Perspectives ¡ Protocoles de reconfiguration : l l l Preuve de l’algorithme des permutations globales Comparaison avec un plus grand nombre de systèmes à quorums : grilles, hiérarchique… Évaluation en environnement réel : projet Vi. Sa. Ge ¡ ¡ Quels sont les critères de charges à prendre en compte ? Identification de seuils pour effectuer une reconfiguration Historique de l’état des nœuds… Projet Vi. Sa. Ge : l l Terminer l’intégration et les tests Mars 2007 Déploiement et tests sur Grid 5000 Tester avec d’autres applications … des partenariats? Vi. Sa. Ge comme stockage pour une BD distribuée Grenoble - 17/11/2006 29

Références Protocoles de reconfiguration : [1] I. Frain, R. Basmadjian, J-P. Bahsoun and A.

Références Protocoles de reconfiguration : [1] I. Frain, R. Basmadjian, J-P. Bahsoun and A. M’zoughi. How to improve the scalability of read/write operations with dynamic reconfiguration of a tree-structured coterie. In ICPP’ 06 workshops, pages 123 -134, August 2006. [2] I. Frain, A. M’zoughi and J-P. Bahsoun. How to achieve high throughput with dynamic tree-structured coterie. In the 5 th International Symposium on Parallel and Distributed Computing (ISPDC’ 06), July 2006. Projet Vi. Sa. Ge : [3] F. Thiebolt, I. Frain et A. M’zoughi. Virtualisation du stockage dans les grilles informatiques. Dans les 16ème rencontres francophones de parallèlisme, (Renpar’ 05), avril 2005. [4] http: //www. irit. fr/visage Grenoble - 17/11/2006 30

Opération de lecture ou d’écriture Grenoble - 17/11/2006 31

Opération de lecture ou d’écriture Grenoble - 17/11/2006 31

Opération de reconfiguration Grenoble - 17/11/2006 32

Opération de reconfiguration Grenoble - 17/11/2006 32

Protocole de permutation élémentaire Grenoble - 17/11/2006 33

Protocole de permutation élémentaire Grenoble - 17/11/2006 33

Protocoles de permutation globale et de permutation hybride Grenoble - 17/11/2006 34

Protocoles de permutation globale et de permutation hybride Grenoble - 17/11/2006 34

Permutation élémentaire : éléments de preuve Grenoble - 17/11/2006 35

Permutation élémentaire : éléments de preuve Grenoble - 17/11/2006 35

La place de Vi. Sa. Ge au sein des intergiciels existants Grenoble - 17/11/2006

La place de Vi. Sa. Ge au sein des intergiciels existants Grenoble - 17/11/2006 36

Contexte : les grappes de grappes ¡ Grappe de grappes ¡ Réplication de données

Contexte : les grappes de grappes ¡ Grappe de grappes ¡ Réplication de données entre sites distants ¡ Charge des nœuds de stockage et latence réseau Client S 1 GRILLE (WAN) S 5 S 2 S 4 Grenoble - 17/11/2006 S 3 Légende Un réplica 37

Composants logiciels de Vi. Sa. Ge ¡ Vi. Sa. Ge est découpé en 5

Composants logiciels de Vi. Sa. Ge ¡ Vi. Sa. Ge est découpé en 5 composants principaux l l l vcom : un système de communication entre composants vrt : un composant de virtualisation des ressources de stockage visagefs : un système de gestion de fichiers au niveau grille vccc : une librairie de gestion de la concurrence des accès et de gestion de la cohérence des réplicas vam : service d’administration et de monitoring de Vi. Sa. Ge ¡ ¡ ¡ Un module d’administration Un module de monitoring Les composants sont déployés à tous les niveaux de la grille: l l l Hôtes frontaux Hôtes contrôleurs Nœuds de calcul et de stockage Grenoble - 17/11/2006 38

Gestion de la cohérence dans Vi. Sa. Ge : le composant vccc Grenoble -

Gestion de la cohérence dans Vi. Sa. Ge : le composant vccc Grenoble - 17/11/2006 39