LINUX:Glusterfs - Type Distribué-Dispersé

De WIKI sur Linux (ADB)
Aller à la navigation Aller à la recherche

retour au menu de Glusterfs - Gestion des serveurs


But

Ce cinquième type distribué-dispersé correspond au RAID60. Les fichiers sont distribués sur les divers espaces disques individuels des machines du cluster. Chaque fichier est découpé en morceaux égaux ou blocs, le dernier est complété par du vide et il y a un ou plusieurs blocs de contrôle. Chaque espace disque accueille à tour de rôle un de ces blocs. C'est une combinaison du type précédent (Type Dispersé) et du type "distribué" (Type Distribué)vu plus haut.

Ce type est particulièrement adapté aux gros fichiers.

Notons que les commandes peuvent se faire à partir de n'importe quel serveur du cluster.


Paramètres

Pour ce type, il faut définir les nombres de blocs.

Ils sont définis au travers de trois paramètres:

  • disperse : le nombre total de blocs
  • disperse-data : le nombre de blocs qui vont contenir les parties des fichiers
  • redundancy : le nombre de blocs de contrôle

Ces trois paramètres doivent répondre aux contraintes suivantes:

  • disperse = disperse-data + redundancy
  • disperse = "nombre d'espaces disques individuels" / N "N" étant le nombre de "distributions. (multiple de)

Si un paramètre est omis, il est déduit de ces contraintes.


Dispersé sur douze espaces disques sur 6 machines

Cet exemple va créer un volume utilisant douze espaces disques individuels se trouvant sur six machines. Nous utiliserons deux blocs de contrôle.


Mise en place

La commande suivante crée un volume nommé "diskgfs11" sur les machines "sv1.home.dom", "sv2.home.dom", "sv3.home.dom", "sv4.home.dom", "sv5.home.dom" et "sv6.home.dom":

gluster volume create diskgfs11 disperse-data 4 redundancy 2 transport tcp \
                               sv1.home.dom:/disk1/glusterfs/brique11 sv2.home.dom:/disk1/glusterfs/brique11 \
                               sv3.home.dom:/disk1/glusterfs/brique11 sv4.home.dom:/disk1/glusterfs/brique11 \
                               sv5.home.dom:/disk1/glusterfs/brique11 sv6.home.dom:/disk1/glusterfs/brique11 \
                               sv1.home.dom:/disk2/glusterfs/brique11 sv2.home.dom:/disk2/glusterfs/brique11 \
                               sv3.home.dom:/disk2/glusterfs/brique11 sv4.home.dom:/disk2/glusterfs/brique11 \
                               sv5.home.dom:/disk2/glusterfs/brique11 sv6.home.dom:/disk2/glusterfs/brique11

Sur chacune de ces machines, un sous-répertoire "brique11" est créé automatiquement sous le répertoire "/disk1/glusterfs". Je conseille fortement de ne pas créer ce répertoire "brique11" au préalable. Glusterfs va lui attribuer des droits spéciaux à ne pas modifier. Et en cas de réutilisation, vous aurez des problèmes. Pour une question de clarté, nous utilisons la même arborescence de répertoires.


On remarque tout de suite que comme le système RAID60, si deux disques entrent en erreur, on ne perd pas ces fichiers.


Maintenant que ce volume est créé, il faut le démarrer pour le rendre accessible grâce à la commande suivante:

gluster volume start diskgfs11


Statut

Les informations ci-dessus peuvent être obtenues grâce à la commande suivante pour le volume "diskgfs11":

gluster volume status diskgfs11

qui donne:



Status of volume: diskgfs11
Gluster process                              TCP Port  RDMA Port  Online  Pid
-------------------------------------------------------------------------------
Brick sv1.home.dom:/disk1/glusterfs/brique11 49807     0          Y       4173
Brick sv2.home.dom:/disk1/glusterfs/brique11 56253     0          Y       2546
Brick sv3.home.dom:/disk1/glusterfs/brique11 50624     0          Y       2579
Brick sv4.home.dom:/disk1/glusterfs/brique11 49849     0          Y       1912
Brick sv5.home.dom:/disk1/glusterfs/brique11 56993     0          Y       1990
Brick sv6.home.dom:/disk1/glusterfs/brique11 49218     0          Y       27707
Brick sv1.home.dom:/disk2/glusterfs/brique11 51119     0          Y       4205
Brick sv2.home.dom:/disk2/glusterfs/brique11 49870     0          Y       2577
Brick sv3.home.dom:/disk2/glusterfs/brique11 51638     0          Y       2610
Brick sv4.home.dom:/disk2/glusterfs/brique11 59772     0          Y       1943
Brick sv5.home.dom:/disk2/glusterfs/brique11 56856     0          Y       2021
Brick sv6.home.dom:/disk2/glusterfs/brique11 54038     0          Y       27722
Self-heal Daemon on localhost                N/A       N/A        Y       3529
Self-heal Daemon on sv2.home.dom             N/A       N/A        Y       2199
Self-heal Daemon on sv4.home.dom             N/A       N/A        Y       1566
Self-heal Daemon on sv3.home.dom             N/A       N/A        Y       2223
Self-heal Daemon on sv5.home.dom             N/A       N/A        Y       1574
Self-heal Daemon on sv6.home.dom             N/A       N/A        Y       26472
  
Task Status of Volume diskgfs11
------------------------------------------------------------------------------
There are no active volume tasks


D'autres informations peuvent être obtenues:

gluster volume info diskgfs11

qui donne:


Volume Name: diskgfs11
Type: Distributed-Disperse
Volume ID: 4819eb7d-74ab-448a-b741-cb03d47ab4bb
Status: Started
Snapshot Count: 0
Number of Bricks: 2 x (4 + 2) = 12
Transport-type: tcp
Bricks:
Brick1: sv1.home.dom:/disk1/glusterfs/brique11
Brick2: sv2.home.dom:/disk1/glusterfs/brique11
Brick3: sv3.home.dom:/disk1/glusterfs/brique11
Brick4: sv4.home.dom:/disk1/glusterfs/brique11
Brick5: sv5.home.dom:/disk1/glusterfs/brique11
Brick6: sv6.home.dom:/disk1/glusterfs/brique11
Brick7: sv1.home.dom:/disk2/glusterfs/brique11
Brick8: sv2.home.dom:/disk2/glusterfs/brique11
Brick9: sv3.home.dom:/disk2/glusterfs/brique11
Brick10: sv4.home.dom:/disk2/glusterfs/brique11
Brick11: sv5.home.dom:/disk2/glusterfs/brique11
Brick12: sv6.home.dom:/disk2/glusterfs/brique11
Options Reconfigured:
storage.fips-mode-rchecksum: on
transport.address-family: inet
nfs.disable: on

Comme dans le cas précédent, on remarque la notation du nombre de briques: 2 x (4 + 2) = 12

  • présence de distribution double (le "2" du début)
  • disperse-data = 4
  • redundancy = 2
  • disperse = 6
  • nombre total de blocs = 12




retour au menu de Glusterfs - Gestion des serveurs