Au fur et à mesure que la taille des membres du cluster augmente, nous pouvons modifier le facteur de réplication de 2 à 3 pour gérer des échecs supplémentaires. Cette augmentation, bien entendu, réduit l’espace disque utilisable en créant des copies redondantes supplémentaires des données.
Nutanix résout cet inconvénient avec la fonctionnalité Erasure Coding (EC-X), qui augmente l’espace disque utilisable tout en maintenant la même résilience de cluster en répartissant les blocs de données individuels et les blocs de parité associés sur les nœuds plutôt que sur les disques, formant une bande d’effacement.
En cas d’échec, le système utilise le bloc de parité avec les blocs restants dans la bande d’effacement pour recalculer les données manquantes sur un nouveau nœud. Tous les blocs associés aux bandes de codage d’effacement sont stockés sur des nœuds séparés. Chaque nœud peut alors participer aux reconstructions suivantes, ce qui réduit le temps de reconstruction potentiel.
Comment fonctionne l’Erasure Coding
Considérons un cluster à 6 nœuds avec un facteur de redondance 2, qui contient quatre blocs de données (a, b, c et d). Le texte noir dans la figure suivante représente les blocs de données et le texte orange représente les copies.
Lorsque les données deviennent froides, le moteur de codage d’effacement calcule la valeur de la parité (P) en effectuant une opération OU exclusif. Une fois la parité calculée, les copies sont supprimées et remplacées par les informations de parité, comme illustré dans la figure suivante.
La présence de la parité assure la redondance (car les données peuvent être reconstruites en cas de panne), et permet simultanément un gain de place, car les données sont désormais (a + b + c + d + P) au lieu de 2 x (a + b + c + d).
En cas d’échec, comme illustré dans la figure suivante, le bloc de données manquant est reconstruit à l’aide du reste de la bande codée d’effacement (a b d et P). Le bloc restauré (bloc c, dans cet exemple) est alors placé sur un nœud qui n’a pas d’autres membres de cette bande codée d’effacement.
Comme pour la compression et la déduplication, vous pouvez activer l’Erasure Coding lors de la création d’un nouveau conteneur de stockage ou de la mise à jour d’un conteneur existant. Dans la section Paramètres avancés de la boîte de dialogue, le codage d’effacement est disponible sous forme de case à cocher, similaire à la compression et à la déduplication. Cependant, contrairement à la compression et à la déduplication, le codage d’effacement (EC-X) a des exigences spécifiques en matière de taille de cluster.
Comme le montre la figure suivante, un minimum de 4 nœuds est nécessaire pour activer l’Erasure Coding dans un cluster avec RF2, tandis qu’au moins 6 nœuds sont nécessaires dans un cluster avec RF3. Si le nombre de nœuds dans le cluster est inférieur au nombre requis, l’Erasure Coding ne peut pas être activé.
Apprenez-en plus sur Nutanix !