Forum Linux.général RAID1 en général et BTRFS en particulier

Posté par . Licence CC by-sa
Tags :
2
27
jan.
2014

Bonjour,

Je me lance dans l'expérimentation de BTRFS dans une configuration RAID 1 et je ne suis pas sûr d'avoir bien compris certaines choses sur le RAID 1 et sur BTRFS.

Contexte :
J'ai choisi RAID 1 pour que la machine continue de fonctionner même si un disque complet flanche complètement. Et j'ai choisi BTRFS pour l'intégrité des données.

Configuration matérielle: 2 disques durs (sda et sdb)

Configuration logicielle :
Debian Testing avec un partitionnement sda1 "/" (BTRFS), sda2 "/home" (BTRFS) et sda3 "swap" (tous en primaire).
J'ai choisi d'utiliser directement le RAID de BTRFS.

Les questions :
1) Est-ce qu'il faut mettre le swap dans le RAID ? Si non je pense que je vais perdre des données si un disque flanche (par exemple pendant un retour d'hibernation) ?
Si oui, comment faire cela avec le RAID de BTRFS ?
2) Que se passe-t-il quand un disque ou une partition flanche ? Que deviennent les références à sda1, sda2 et sda3 (il doit y avoir pleins de références vers sda qui traînent dans /etc ? Je ne vois pas comment le système va comprendre qu'il faut pointer maintenant vers sdb1, sdb2 et sdb3 ).
Peut-être faut-il que je bidouille le /etc/fstab manuellement ?

Merci beaucoup d'avance !

  • # Il faut que tu mettes le système complet sur le RAID si tu veux un fonctionnement 24h sur 24

    Posté par . Évalué à 4.

    En effet, suppose que tu ne mettes pas le disque contenant le swapen RAID : si ton disque contenant le swap vient à flancher, tu risques de planter ton système avecun kernel panic. De même si tu as /user par exemple sur un disque qui flanche : tu ne pourras plus lancer de nouvelles commandes (dans l'hypothèse ou ton disque grille complêtement - si ce ne sont que quelques secteurs qui sont inaccessibles, seules les ressources concernées par ces secteurs seront injoignables). Maintenant je ne sais pas s'il est simple de configurer un RAID pour le filesystem de démarrage avec btrfs. J'ai vu quelques docs sur le net vite fait, mais je n'ai pas trople temps de regarder. Une solution si le boot sur btrfs n'est pas supporté par ta distrib etque tu ne veux pas te prendre la tête avec une config tordue peut-être : partitionner tes disques pour avoir le système de boot/root avec un mirroir LVM ou un raid MD sur une partie de tes disques, et le reste de tes disques en mirroir btrfs pour les données ?

    Pour le 2 : je ne sais pas comment fonctionne btrfs, je ne peux pas te répondre. Je sais juste comment ça fonctionne pour LVM. Donc je laisserais quelqu'un qui a déjà manipulé btrfs te répondre de façon détaillée.

    • [^] # Re: Il faut que tu mettes le système complet sur le RAID si tu veux un fonctionnement 24h sur 24

      Posté par . Évalué à 2.

      Merci pour ton avis.

      1) Le boot en BTRFS est bien supporté pas de soucis. Le seul soucis c'est bien le swap.
      C'est un peu ennuyant d'avoir un configuration compliquée (RAID de BTRFS pour les partitions en BTRFS et RAID via mdadm pour le swap) juste pour gérer ce satané swap !

      Je pensais partir sur un besoin simple (j'ai 2 disques dur et je souhaite utiliser BTRFS en RAID 1) mais je trouve presque rien sur internet sur le sujet (surtout sur le swap).

      Je vais peut-être devoir poser la question directement sur la mailing-list de BTRFS.

      Merci pour ton avis !

  • # il est ou l'onduleur?

    Posté par . Évalué à 1.

    Pour info, le BTRFS supporte très mal les coupures de courants (vécu inside) même en RAID

    Prévoir un onduleur ne serait pas négligeable.

    tant va la cruche à l'eau qu'à la fin elle t'explose en pleine tête

  • # Suggestions

    Posté par . Évalué à 3.

    Pour la première question, effectivement le swap en dehors c'est risqué, mais le swap « à l'intérieur » c'est pas non plus la panacée… Bref, pas de solution miracle, ou alors passer à du device mapper classique (je suppose que tu veux passer à btrfs pour éviter ça).

    Je te conseillerais par contre, pour plus de facilité, de ne pas séparer / de /home complètement, mais de faire tout dans une partition avec un subvolume pour /home ; ça sépare un peu les deux (niveau méta-données), sans être non plus aussi clair qu'avec deux partitions, mais ça t'évite le problème de répartition de l'espace (ils peuvent occuper autant qu'ils veulent tant qu'il y a de la place sur le volume ; tu peux jouer avec les quota après, si tu veux).

    Pour la deuxième question, ça fait un bout de temps qu'on est passé aux UUID ou aux labels, hein… Ne référence jamais directement le nom de ton device, et ça roule : un utilitaire scan les disques pour trouver les partitions btrfs au démarrage. Un peu comme pour LVM. Sache sinon que tu peux utiliser indifféremment /dev/sda ou /dev/sdb dans toutes les commandes btrfs, ça ne change rien pour lui.

    • [^] # Re: Suggestions

      Posté par . Évalué à 2.

      Ok pour le swap. Je suis aussi en train de tester ZFS et celui-ci permet d'avoir le swap « à l'intérieur ». Je ne suis pas sûr que cela marche très bien (je n'ai pas trouvé beaucoup de retour) et il n'est déjà pas compatible avec l'hibernation. Mais c'est déjà ça.

      Pour la partition, j'ai pris l'habitude depuis des lustres d'avoir une partition séparée pour /home. L'espace réservé pour "/" est très largement suffisant et sur un gros disque cette marge n'est pas très pénalisante. Je vois bien l'avantage de n'avoir qu'une seule partition (espace mutualisé et administration simplifiée) mais cela va être dur de changer les habitudes !

      Pour la deuxième question, merci pour la confirmation. Je me doutais que c'était quelque chose dans ce genre là !

      Merci pour ton avis !

      • [^] # Re: Suggestions

        Posté par . Évalué à 3.

        Ok pour le swap. Je suis aussi en train de tester ZFS et celui-ci permet d'avoir le swap « à l'intérieur ». Je ne suis pas sûr que cela marche très bien (je n'ai pas trouvé beaucoup de retour) et il n'est déjà pas compatible avec l'hibernation. Mais c'est déjà ça.

        À noter que cette histoire de swap résistant à la mort d'un disque, c'est uniquement si tu ne supportes pas que ta machine plante dans ce cas. Ça n'a rien à voir avec les pertes de données classiques engendrées par une perte de disque sans RAID. Moi, sur mes machines persos, je tolère des plantages / reboot sauvages (car c'est très rare) : ça ne m'a jamais rien fait perdre de grave. Si tu supportes un reboot (et encore, c'est pas forcé que ça tombe aussi mal) au moment de la perte d'un disque, te prends pas la tête et mes des swaps sur tes deux disques (ou juste un seul, pour diviser les chances par deux…) ; c'est ce que je fais perso. Je sais que le RAID1 c'est pour la continuité, mais c'est déjà pas mal d'avoir juste à rebooter sans se soucier du disque mort en attendant de le remplacer (et au moment du remplacement, ça nécessitera encore un reboot, alors… — oui, je parle de matos standard, pas de « l'entreprise » avec hotswap et tout le bordel).

        • [^] # Re: Suggestions

          Posté par . Évalué à 1.

          C'est une remarque pertinente mais que se passe-t-il en cas de corruption du swap si celui-ci n'est pas géré par ZFS ?
          Par exemple je travaille sur une grosse image en retouche et ça swappe. Manque de bol, mon disque est vieux et commence à avoir les secteurs qui s'affolent dans la zone du swap.
          Est-ce que en sauvant mon travail je ne me retrouve pas avec une image corrompue ?

          • [^] # Re: Suggestions

            Posté par . Évalué à 2.

            Par exemple je travaille sur une grosse image en retouche et ça swappe. Manque de bol, mon disque est vieux et commence à avoir les secteurs qui s'affolent dans la zone du swap.
            Est-ce que en sauvant mon travail je ne me retrouve pas avec une image corrompue ?

            Je ne sais pas vraiment. J'avoue que ton exemple serait peut-être le contre-exemple pour ceux qui ne se soucient pas de la redondance du swap, mais perso ça me paraît tellement peut probable et est classé dans les cas « pas de chance » pour moi, que bon… ton ordi plante, tu as perdu ton image, point. Je n'ai pas le courage de me protéger de ça :-)

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.