Go to main content
Guide d'administration des systèmes Oracle® ZFS Storage Appliance, version OS8.6.x

Quitter la vue de l'impression

Mis à jour : Septembre 2016
 
 

Prévention des états split-brain

Un mode d'échec courant dans les systèmes clustérisés est le split-brain. Dans cette condition, chacun des contrôleurs clustérisés croit que son pair subit une défaillance et tente une reprise. En dehors de toute logique supplémentaire, cet état peut entraîner une large gamme de comportements inattendus et destructifs qu'il peut être difficile de diagnostiquer ou de corriger. Le déclenchement canonique de cette condition est l'échec du moyen de communication partagé par les contrôleurs. Dans le cas des appareils de la série Oracle ZFS Storage Appliance, cela aurait lieu en cas d'échec des liaisons d'E/S du cluster. En plus de la redondance à liaison triple associée (une seule liaison est requise pour éviter le déclenchement de la reprise), le logiciel de l'appareil exécute également une procédure d'arbitrage afin de déterminer le contrôleur qui poursuivra la reprise.

Un certain nombre de mécanismes d'arbitrage sont utilisés par des produits similaires. En général, ils impliquent l'utilisation de disques de quorum (à l'aide de réservations SCSI) ou de serveurs de quorum. Pour prendre en charge l'utilisation de disques ATA sans recourir à du matériel supplémentaire, l'appareil Oracle ZFS Storage Appliance utilise une approche différente basée sur la topologie Fabric de stockage elle-même afin de fournir l'exclusivité mutuelle requise. Le processus d'arbitrage consiste à tenter d'exécuter une commande SAS ZONE LOCK sur chacun des expandeurs SAS visibles dans la topologie Fabric de stockage dans un ordre prédéfini. L'appareil sur lequel aboutit la tentative d'obtention des verrouillages poursuit la reprise, l'autre est réinitialisé. Dans la mesure où un appareil clustérisé qui est initialisé et détecte que son pair est inaccessible tente la reprise et effectue le même processus d'arbitrage, il est réinitialisé dans une boucle continue jusqu'à ce qu'au moins une liaison d'E/S du cluster soit restaurée. Cela garantit que la panne qui s'en suit sur l'autre contrôleur n'entraîne pas d'interruption de service étendue. Ces verrous de zone SAS sont libérés lors du rétablissement ou environ 10 secondes après le renouvellement de l'accès à la topologie Fabric de stockage pour le contrôleur dont l'état est AKCS_OWNER.

Le mécanisme d'arbitrage est simple, peu onéreux et ne nécessite pas de matériel supplémentaire. Il repose sur les appareils clustérisés ayant accès à au moins un expandeur SAS commun dans la topologie Fabric de stockage. Dans des conditions normales, chaque appareil a accès à tous les expandeurs et l'arbitrage est réalisé à l'aide d'au moins deux verrous de zone SAS. Il est néanmoins possible de concevoir des scénarios à pannes multiples dans lesquels les appareils n'ont accès à aucun expandeur commun. Par exemple, si deux des câbles SAS sont débranchés ou si une étagère de disques est mise hors tension, chaque appareil a accès à des sous-ensembles disjoints d'expandeurs. Dans ce cas, chaque appareil verrouille tous les expandeurs accessibles, conclut que son pair subit une défaillance et tente de procéder à la reprise. Cela peut entraîner des blocages irrécupérables en raison des conflits d'affiliation de disque et/ou d'une grave altération de données.

Notez que, bien que les conséquences de cet état soient graves, elles ne surviennent qu'en cas de pannes multiples (souvent après quatre pannes ou plus). La solution de clustering intégrée aux appareils de la gamme Oracle ZFS Storage Appliance a été conçue pour garantir l'absence de point de panne unique et protéger les données et la disponibilité contre toute panne éventuelle sans impliquer de coûts ou de complexité supplémentaires. Il reste possible qu'un grand nombre de pannes multiples entraîne une perte de service et/ou de données, de la même manière qu'aucune configuration RAID n'offre de protection contre un nombre illimité de défaillances de disque.

Figure 20  Prévention des conditions split-brain

image:Prévention des états split-brain

Heureusement, la plupart de ces scénarios de panne sont dus à une erreur humaine et peuvent être entièrement évités si le matériel est correctement installé et si vous formez du personnel à la configuration du cluster et aux meilleures pratiques de gestion. Les administrateurs doivent toujours veiller à ce que les trois liaisons d'E/S du cluster soient connectées et fonctionnelles (voir illustration) et s'assurer que le câblage du stockage respecte le schéma de configuration fourni avec vos appareils. Il est particulièrement important que les deux chemins soient détectés vers chaque étagère de disques (voir illustration) avant et après la mise en production du cluster, exception faite évidemment des modifications temporaires de câblage pour prendre en charge les améliorations des fonctionnalités ou le remplacement des composants défectueux. Les administrateurs doivent utiliser des alertes pour surveiller l'état des liaisons d'interconnexion du cluster et des chemins d'étagères de disques et corriger rapidement toute panne. En vous assurant du maintien de la connectivité, vous pourrez protéger à la fois la disponibilité et l'intégrité des données en cas de défaillance d'un composant matériel ou logiciel.

Figure 21  Cluster à deux chemins

image:Cluster à deux chemins

Rubriques connexes