19
0
Fork 0
wiki/HowtoGlusterFS.md

128 lines
2.5 KiB
Markdown
Raw Normal View History

2016-11-11 13:20:23 +01:00
# Howto GlusterFS
2018-07-10 15:28:17 +02:00
TODO : Description, vocabulaire (peer, brick, volume)...
## Configuration d'un nouveau cluster
### Installation
~~~
# apt install glusterfs-server
~~~
### Création du cluster
~~~
srv1# gluster peer probe <adresse IP srv2>
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
2018-07-10 15:28:17 +02:00
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 <IP srv1>:/srv/gluster/foovol <IP srv2>:/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
2016-11-11 13:20:23 +01:00
~~~
# gluster volume status all
# gluster volume status all clients
# gluster volume status all (mem|fd|inode|callpool)
~~~
2018-02-27 18:28:43 +01:00
2018-02-27 20:51:38 +01:00
# Lister les peers
~~~
# gluster peer status
~~~
2018-02-27 18:28:43 +01:00
# Lister les volumes
~~~
2018-02-27 20:52:01 +01:00
# gluster volume list
2018-02-27 18:28:43 +01:00
~~~
# Voir la santé du volume "foo"
~~~
# gluster volume heal foo info
~~~
2018-02-27 20:37:12 +01:00
# Forcer un 'heal' pour le volume "bar"
2018-02-27 18:28:43 +01:00
~~~
# gluster volume heal bar
~~~
2018-07-10 15:28:17 +02:00
# 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
<gfid:1b82dc4fd-3d3f-4dc1-89a9-0783b2c10bc> - Is in split-brain
Status: Connected
Number of entries: 1
Brick tac.example.net:/srv/gluster/foovol
<gfid:1b82dc4fd-3d3f-4dc1-89a9-0783b2c10bc> - 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/)