3 votes

Ajouter des périphériques btrfs à la matrice raid1, en augmentant la taille totale

J'ai une matrice btrfs comprenant deux disques de 2TB en raid 1. Je manque d'espace, et je veux ajouter deux disques de 3TB que j'ai en réserve. La configuration finale sera 2x2TB+2x3TB. Une redondance en cas de défaillance d'un disque est suffisante pour moi (les données sont également sauvegardées ailleurs).

Je ne sais pas comment procéder : le btrfs wiki indique clairement comment ajouter de nouveaux appareils, mais je ne sais pas ce que cela donnera en termes d'espace disque disponible. Est-ce que je vais me retrouver avec.. :

  1. 2TB d'espace avec redondance 4x ou
  2. 4TB d'espace avec 2x redondance ou
  3. autre chose ?

Sur la base de certaines recherches (par exemple cette réponse) Je pense que le résultat devrait être 2, ce qui est ce que je souhaite. Est-ce correct ?

Une autre possibilité est de passer à une configuration raid 10, si cela est possible avec des disques de taille différente. Si cela est conseillé, comment dois-je procéder sans héberger temporairement les données sur un support externe ?

5voto

cyphun Points 53

2TB d'espace avec redondance 4x ou

Une citation du wiki officiel l'explique en détail :

" btrfs combine d'abord tous les périphériques en un pool de stockage, puis duplique les morceaux au fur et à mesure que les données des fichiers sont créées.

Le RAID-1 est actuellement défini comme "2 copies de toutes les données sur des périphériques différents".

Cela diffère de MD-RAID et dmraid "

- 2 exemplaires seulement.

Une autre possibilité est de passer à une configuration raid 10, si cela est possible avec des disques de taille différente.

Toujours selon la même source : "

Le RAID-10 s'appuie sur ces définitions.

Chaque bande est divisée en exactement 2 jeux RAID-1 et ces jeux RAID-1 sont écrits sur exactement 2 périphériques (donc 4 périphériques au minimum). Un volume btrfs RAID-10 avec 6 périphériques de 1 To produira 3 To d'espace utilisable avec 2 copies de toutes les données. "

comment faire sans héberger temporairement les données sur un support externe ?

Tout est expliqué dans le paragraphe "Conversion" - à partir de btrfs balance sur un point de montage avec les spécifications du profil nécessaire pour les données et les métadonnées. En adaptant trivialement leur exemple, on obtient ceci :

btrfs balance start -dconvert=raid10 -mconvert=raid10 /…mntPoint…

Je suppose qu'il n'y a pas besoin d'intermédiaire balance après avoir ajouté deux nouveaux disques à ce pool - l'ajout lui-même ne rééquilibrera pas le pool, seules les données nouvellement écrites utiliseront des périphériques supplémentaires. Par conséquent, il est assez simple d'ajouter et de commencer à équilibrer n'importe quelle disposition que vous aimez.


Conclusion

Théoriquement, vous obtiendriez le meilleur résultat possible parce que " btrfs regroupe d'abord tous les périphériques dans un pool de stockage. "

Pratique

Il serait très simple de tester tout cela à l'aide d'une installation sur, par exemple, des dispositifs de bouclage de taille beaucoup plus petite.

Un mot d'avertissement

Bien que Btrfs soit devenu assez mature, j'ai entendu dire que la prise en charge de plusieurs périphériques n'était pas encore assez robuste par rapport au mode non-RAID. Je recommanderais d'essayer la conversion mentionnée ci-dessus sur des périphériques de bouclage en premier lieu. et même si l'opération se déroulait avec succès, la sauvegarde des données les plus importantes dans un autre endroit est indispensable. .

Aussi, pour exprimer ma propre opinion, je dirais que je préférerais convertir une telle configuration en LVM-2 traditionnel sur LSR (Linux Software RAID aka MD) qui vous donnerait la possibilité de créer des sous-volumes logiques pour une utilisation ultérieure soit avec Btrfs ou tout autre FS désiré.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X