Qu'est-ce que le Split-Brain?
Comme mentionné dans la documentation officielle sur la gestion de Split-Brain fournie par RedHat, le split-brain est un état où des incohérences de données ou de disponibilité provenant de la maintenance de deux ensembles de données distincts avec chevauchement de portée, soit en raison de serveurs dans une conception de réseau, ou une condition de défaillance basée sur des serveurs qui ne communiquent pas et ne synchronisent pas leurs données entre eux. Et c'est un terme applicable à la configuration répliquée.
Faites attention à ce qu'il soit dit "une condition de panne basée sur des serveurs qui ne communiquent pas et ne synchronisent pas leurs données entre eux" - en raison de toute probabilité - mais cela ne signifie pas que vos nœuds pourraient perdre la connexion. Le pair peut être encore en cluster et connecté.
Types de cerveau divisé:
Nous avons trois types différents de split-brain, et pour autant que je puisse voir le vôtre, c'est split-brain d'entrée. Pour expliquer trois types de split-brain:
Données split-brain: Le contenu du fichier sous split-brain est différent dans différentes paires de répliques et la guérison automatique n'est pas possible.
Métadonnées split-brain :, Les métadonnées des fichiers (exemple, attribut étendu défini par l'utilisateur) sont différentes et la guérison automatique n'est pas possible.
Entrée split-brain: Cela se produit lorsqu'un fichier a différents gfids sur chacune des paires de répliques.
Qu'est-ce que GFID?
L'identifiant de fichier interne GlusterFS (GFID) est un uuid unique à chaque fichier de l'ensemble du cluster. Ceci est analogue au numéro d'inode dans un système de fichiers normal. Le GFID d'un fichier est stocké dans son xattr nommé trusted.gfid
. Pour trouver le chemin depuis GFID, je vous recommande fortement de lire cet article officiel fourni par GlusterFS.
Comment résoudre le split-brain d'entrée?
Il existe plusieurs méthodes pour empêcher le split-brain de se produire, mais pour le résoudre, les fichiers de lien gfid correspondants doivent être supprimés. Les fichiers gfid-link sont présents dans le répertoire .glusterfs du répertoire de niveau supérieur de la brique. Par ailleurs, méfiez-vous qu'avant de supprimer les liens gfid, vous devez vous assurer qu'il n'y a pas de liens durs vers les fichiers présents sur cette brique. S'il existe des liens physiques, vous devez également les supprimer. Ensuite, vous pouvez utiliser le processus d'auto-guérison en exécutant les commandes suivantes.
En attendant, pour afficher la liste des fichiers sur un volume qui sont dans un état de cerveau divisé, vous pouvez utiliser:
# gluster volume heal VOLNAME info split-brain
Vous devez également savoir que pour les volumes répliqués, lorsqu'une brique se déconnecte et revient en ligne, l'auto-réparation est nécessaire pour resynchroniser toutes les répliques.
Pour vérifier l'état de guérison des volumes et des fichiers, vous pouvez utiliser:
# gluster volume heal VOLNAME info
Puisque vous utilisez la version 3.5, vous ne disposez pas de la réparation automatique. Donc, après avoir effectué les étapes mentionnées précédemment, vous devez déclencher l'auto-guérison. Faire cela:
Uniquement sur les fichiers à soigner:
# gluster volume heal VOLNAME
Sur tous les fichiers:
# gluster volume heal VOLNAME full
J'espère que cela vous aidera à résoudre votre problème. Veuillez lire les documents officiels pour plus d'informations. À votre santé.