[Projet] GlusterFS – Ajout et gestion des clients

GlusterFS Header

Suite au premier article où nous avions créé et démarré notre volume GlusterFS, je vous propose maintenant d’ajouter un premier client à notre infrastructure. Dans le cadre de mon projet, ce client n’est autre qu’un cluster Apache Actif / Actif hébergeant l’API du projet qui, je vous le rappelle, est détaillé par ici.

Rappels

Je suis en environnement entièrement virtualisé sous VMware Workstation 10. Machines virtuelles Debian 7.2 Stable toujours fraîchement installées ! Je travaille ici sur ce qui sera un cluster Apache mais je n’aborde pour le moment que la partie GlusterFS, Apache fera l’objet d’articles dédiés.

Voici ce que je cherche à mettre en place :

Installation des paquets

Vous n’allez pas me croire, il suffit simplement d’envoyer un :

apt-get install glusterfs-client

Et c’est tout…

Ajouter des autorisations sur la configuration du cluster

Oui normalement n’importe qui ne peut pas monter notre volume comme ça. On a un minimum de protection, un filtrage par IP en fait, et il va donc falloir autoriser nos hôtes à accéder au volume. Mes hôtes sont adressés en 10.5.0.0/24, j’utilise donc :

gluster volume set gfsvol auth.allow 10.5.0.\*

Mais vous pouvez très bien ajouter des IP une par une, en les séparant par des virgules. La ligne auth.allow: 10.5.0.* doit alors apparaître dans le résultat retourné par la commande gluster volume info.

Montage du volume Gluster

Montage manuel

Là aussi c’est à mourir d’ennui tellement c’est simple. Je vous l’avais dit, notre volume géant glusterfs va se comporter comme un volume classique pour nos hôtes. Et pour monter un volume sous Linux on utilise… mount ! La commande est de la forme mount -t glusterfs hôte:/volume point/de/montage, soit pour moi :

mount -t glusterfs GFS-01:/gfsvol /srv/gluster

Pour vérifier, j’utilise la commande df -h :

df -h /srv/gluster 
Sys. fich.     Taille Util. Dispo Uti% Monté sur
GFS-01:/gfsvol    20G   33M   20G   1% /srv/gluster

On dirait que ça a fonctionné ! Ah au fait, inutile de vous rappeler que le nom « GFS-01 » doit être solvable… Sinon, remplacez le nom par l’IP ou mettez à jour fichier hosts ou entrées DNS.

Automatisation du montage

On édite simplement le fichier /etc/fstab. Voici la ligne que je vous propose d’ajouter :

GFS-01:/gfsvol  /srv/gluster    glusterfs       defaults,_netdev        0       0

On retrouve en fait la syntaxe de la commande mount précédente.

OK, super ! Mais tu n’as monté que le premier nœud du cluster GlusterFS là ! GFS-02 n’est pas monté ! Que se passe-t-il si GFS-01 tombe ?

En fait si, lorsque nous avons utilisé la commande mount sur GFS-01, on a juste permis au client Gluster de récupérer la configuration du cluster sur GFS-01. Cette configuration contient les noms de tous les autres nœuds. Tout s’est fait de manière transparente ! Vous allez voir dans le test suivant la puissance de cet outil.

Expérimentations et test

Après avoir réalisé ces étapes sur le deuxième client, on va pouvoir commencer à tester l’ensemble. Histoire de changer un peu j’ai décidé de me lancer dans les screencasts !

La commande utilisée pour forcer la synchronisation :

find /srv/gluster -noleaf -print0 | xargs --null stat > /dev/null 2> /var/log/glusterfs/srv-gluster.log

La prochaine fois…
Les prochains articles porteront sur la configuration avancée de Gluster, mais avant on a un cluster Apache Actif / Actif à mettre en place !

Cet article vous a plu ? Partagez-le sur les réseaux sociaux !

Twitter Facebook Google Plus email