• [^] # Re: LVM on LUKS on RAID

    Posté par (site web personnel, Mastodon) . En réponse au journal Volumes logiques et chiffrement : vos solutions ?. Évalué à 7.

    Ah tiens, c’est pas mal !

    Sur mon ordinateur portable ma configuration est celle-ci :

    +------+
    |PHYS | 256G SSD 512G SSD
    +------+ | |
    |GPT | +-----+-----+ |
    | | | | |
    | | sda1 sda2 sdb1
    | | | | |
    | | bios | |
    | | | |
    +------+ | |
    |LUKS | crypt-sys crypt-data
    +------+ | |
    |LVM2 | vg-sys vg-data
    | | | |
    +------+ +-------+--------+ |
    |FS | swap ext4 btrfs btrfs
    +------+ | | | |
    |MOUNT | swap / /home /mnt/data
    +------+
    

    J’hésite à faire un volume étendu entre les deux SSD (marre des liens symboliques !) mais ça augmente la probabilité de panne, déjà qu’il n’y a pas de miroir...

    Sur mon ordinateur fixe, j’ai actuellement ceci (ça va changer) :

    +------+ :
    |PHYS | 128G SSD 4T HDD 4T HDD 4T HDD 4T HDD 64G SSD 64G SSD : 8T SMR
    +------+ | | | | | | | : |
    |GPT | +---+---+ | | | | | | : |
    | | | | | | | | | | : |
    | | sda1 sda2 sdb1 sdc1 sdd1 sde1 sdf1 sdg1 : sde1
    | | | | | | | | | | : |
    | | bios | | | | | | | : |
    | | | | | | | | | : |
    | | | +----+----+ +----+----+ +----+----+ : |
    +------+ | | | | : |
    |RAID1 | | md-data0 md-data1 md-bcache : |
    +------+ | | | | : |
    |LUKS | crypt-sys crypt-data0 crypt-data1 crypt-bcache : crypt-bkp
    +------+ | | | | : |
    |LVM2 | vg-sys vg-data0 vg-data1 | : vg-bkp
    | | | | | | : |
    | | +---+---+ | | | : |
    +------+ | | | | | : |
    |BCACHE| | | +-------------------+-----------------bcache : |
    +------+ | | | | : |
    |FS | swap ext4 btrfs btrfs : |
    +------+ | | | | : |
    |MOUNT | swap / /mnt/data0 /mnt/data1 : /mnt/bkp
    +------+ | :
    |BIND | /home :
    +------+ :
    

    La partition "bios" c’est une petite partition de 4M nécessaire aux systèmes de démarrage non-EFI de démarrer avec une séquence de démarrage traditionnelle àla BIOS sur une partition GPT.

    Le disque tout à droite est un disque de sauvegarde, il y en a plusieurs en fait qui sont des clones exacts, je les fais tourner, ils ont un tiroir hotplug dédié, et quand l’un est dans l’ordinateur pour les sauvegardes quotidiennes (le disque est électriquement éteint en dehors du moment de sauvegarde), les autres sont à plusieurs kilomètres de là. Le disque de sauvegarde est un disque SMR : les données sont écrites par couche, ce qui augmente la densité mais réduit sérieusement les accès en écriture, inutilisable pour une reconstruction RAID, déconseillé pour travailler dessus, impeccable pour des sauvegardes, c’est plus pratique qu’une bande tout de même.

    La configuration RAID/LUKS/LVM est "un peu" overkill parce qu’il y a beaucoup de passif... certains disques qui servaient à autre chose avant on été intégrés tels quels, et par exemple dans certains cas le LVM est resté alors qu’il ne reste plus qu’un volume logique dedans (il fut un temps ou mon premier RAID 4T contenait / et /home, ça faisait sens), beaucoup de couches LVM inutiles donc, et puis le bcache qui se prend deux fois la crypto c’est inutile. Et puis surtout j’en ai marre de faire des liens symboliques entre mes deux raids, aussi.

    Pour les RAID, je sais qu’on peut faire ça directement sur les disques sans partitionnement, mais le partitionnement GPT permet d’utiliser des label de partitions et ça c’est hyper pratique, je nomme tout à tous les étages : partition, volumes logiques, système de fichiers...

    À propos des mots de passe, vu que /boot est dans un volume LUKS, je dois taper le mot de passe (en qwerty !) pour déverrouiller grub, puis le mot de passe LUKS lors de la phase de montage de l’initramfs, puis mon mot de passe d’ouverture de session (qui déverrouille le trousseau puisque c’est le même). Ce qui fait trois mot de passe pour arriver au bureau.

    Puisque mes 4 LUKS actuels (hors sauvegarde) ont le même mot de passe, lorsque l’initramfs me demande le mot de passe, il ne me le demande qu’une fois, et pas 4 fois (ouf) !

    Oui, lorsque le disque de sauvegarde est dans son tiroir, le système voit une surface disque de 24,256 TB, pour 128G de système, 8T de données, 64G de cache et 8T de sauvegarde.

    Dès que j’ai un peu de temps je transforme cela ainsi :

    +------+ :
    |PHYS | 128G SSD 4T HDD 4T HDD 4T HDD 4T HDD 64G SSD 64G SSD : 8T SMR
    +------+ | | | | | | | : |
    |GPT | +---+---+ | | | | | | : |
    | | | | | | | | | | : |
    | | sda1 sda2 sdb1 sdc1 sdd1 sde1 sdf1 sdg1 : sde1
    | | | | | | | | | | : |
    | | bios | | | | | | | : |
    | | | | | | | | | : |
    | | | +----+----+ +----+----+ +----+----+ : |
    +------+ | | | | : |
    |RAID1 | | md-mirror0 md-mirror1 md-mirror2 : |
    | | | | | | : |
    | | | +---------+---------+ | : |
    +------+ | | | : |
    |RAID0 | | md-stripe | : |
    +------+ | | | : |
    |BCACHE| | +---------------------------bcache : |
    +------+ | | : |
    |LUKS | crypt-sys crypt-home : crypt-bkp
    +------+ | | : |
    |LVM2 | vg-sys | : |
    | | | | : |
    +------+ +---+---+ | : |
    |FS | swap ext4 btrfs : |
    +------+ | | | : |
    |MOUNT | swap / /home : /mnt/bkp
    +------+ :
    

    Pour info mon bcache est en RAID1 car je me réserve la possibilité de le configurer en writeback pour les écritures séquentielles, et parce que c’est le SPOF de mon système, ce serait bien entendu bien plus performant en RAID0 mais l’actuel me va très bien, si je vais transformer mon système en RAID0 c’est pour avoir un seule volume /home de 8T et pour en finir avec les montages bind et les liens symboliques, les performances sont déjà très bonnes : mes disques de 4T sont des Constellation ES 3 à 7200tr/min avec 128M de cache, ça envoie du pâté, en fait chacun de ces disques 4T est plus rapide que le SSD 128G qui me sert pour le système et qui est un SSD SATA connu pour être très lent mais pas cher (on me l’a offert en échange d’un service). Les SSD pour le bcache sont des M.2 sur une carte PCIe. Ce ne sont pas des foudres mais c’est sympa, je pourrais toujours les remplacer par plus rapide, et ils n’ont pas besoin d’être très gros.

    Je ne compte pas utiliser les fonctionnalités de RAID de btrfs, je préfère être frileux, idem pour les fonctionnalités de cache de LVM.

    Mon / est toujours en ext4 parce que j’ai pas encore sauté le pas, en fait j’ai mis btrfs sur mes /home dans l’espoir de dédupliquer (mais je n’ai pas encore utilisé cette fonctionnalité, j’y vais doucement).

    Mon swap est complètement inutile, il n’est jamais utilisé, il y a assez de ram pour ne pas en avoir besoin, mais il est là par acquis de conscience.

    Je compte faire des journaux-tuto quand je referai tout cela. :-)

    ce commentaire est sous licence cc by 4 et précédentes