# Howto GlusterFS TODO : Description, vocabulaire (peer, brick, volume)... ## Configuration d'un nouveau cluster ### Installation ~~~ # apt install glusterfs-server ~~~ ### Création du cluster ~~~ srv1# gluster peer probe peer probe: success. ~~~ Note : srv1 et srv2 doivent pouvoir communiquer entre eux sans restriction au niveau réseau. Vérification : ~~~ # gluster peer status Number of Peers: 1 Hostname: xxx Uuid: xxxxx State: Peer in Cluster (Connected) ~~~ ### Création d'un volume Ici _/srv/gluster/_ est un montage d'un volume dédié pour GlusterFS et le volume à créer se nomme _foovol_. Créer le répertoire sur chaque serveur : ~~~ # mkdir /srv/gluster/foovol ~~~ Puis sur un des serveurs, créer le volume GlusterFS ~~~ # gluster volume create foovol replica 2 :/srv/gluster/foovol :/srv/gluster/foovol volume create: foovol: success: please start the volume to access data # gluster volume start foovol volume start: foovol: success ~~~ Vérification : ~~~ # gluster volume info […] ~~~ Sur la machine cliente, on peut maintenant monter le volume : ~~~ # echo "srv1:/foovol /mnt/foovol glusterfs defaults 0 0" >>/etc/fstab # mkdir /mnt/foovol # mount /mnt/foovol ~~~ ## Administration ~~~ # gluster volume status all # gluster volume status all clients # gluster volume status all (mem|fd|inode|callpool) ~~~ # Lister les peers ~~~ # gluster peer status ~~~ # Lister les volumes ~~~ # gluster volume list ~~~ # Voir la santé du volume "foo" ~~~ # gluster volume heal foo info ~~~ # Forcer un 'heal' pour le volume "bar" ~~~ # gluster volume heal bar ~~~ # Cas pratiques ## Récupération d'un split-brain - Forcer l'utilisation d'un réplicas comme source de résolution Dans une situation de split-brain, on peut avoir : ~~~ # gluster volume heal foo info Brick tic.example.net:/srv/gluster/foovol - Is in split-brain Status: Connected Number of entries: 1 Brick tac.example.net:/srv/gluster/foovol - Is in split-brain Status: Connected Number of entries: 1 ~~~ Dans ce cas, on peut définir que c'est le réplica "tic" qui va être utilisé pour rétablir le reste du cluster avec la commande : ~~~ # gluster volume heal foo split-brain source-brick tic.example.net:/srv/gluster/foovol gfid:1b82dc4fd-3d3f-4dc1-89a9-0783b2c10bc Healed gfid:1b82dc4fd-3d3f-4dc1-89a9-0783b2c10bc ~~~ [Plus de documentation](https://docs.gluster.org/en/v3/Troubleshooting/resolving-splitbrain/)