Tout d'abord, l'ordre des LUKS et LVM dépend de si vous souhaitez avoir différents mots de passe LUKS ou d'autres paramètres pour différents LV. Si, par exemple, vous devez configurer différents mots de passe pour différents LV, vous devez absolument mettre LUKS au-dessus de LVM. D'un autre côté, si tous les LV partagent le même mot de passe et les mêmes paramètres comme keylen, vous voudriez avoir LUKS en dessous de LVM, de sorte que vous n'ayez pas à faire face à la surcharge d'avoir plus d'une partition LUKS (pensez à ce que vous devrait faire quand vous devez changer le mot de passe).
Deuxièmement, vous voulez presque toujours que le RAID soit le niveau le plus bas, de sorte que lorsqu'un disque meurt, il puisse être échangé facilement et de manière transparente. Si vous deviez configurer un RAID au-dessus de LVM, vous auriez à remplacer un PV quand un disque meurt, ce serait une grosse douleur dans le cou. De plus, le RAID au-dessus de LVM annulerait totalement la flexibilité de LVM. Vous devrez alors probablement reconfigurer la deuxième couche de LVM au-dessus du RAID!
Par conséquent, parce que dans la plupart des cas, les gens n'ont qu'à utiliser un seul mot de passe, cela suffira:
RAID -> LUKS -> LVM -> ext4
Dans certains cas, vous devrez peut-être utiliser LVM pour combiner plusieurs périphériques RAID en un grand volume, alors vous pouvez faire:
RAID -> LVM -> LUKS (-> LVM) -> ext4
Théoriquement, l'ordre ne devrait pas affecter beaucoup les performances, si chaque couche est correctement configurée , et dans la pratique, je n'ai pas vu cette configuration avoir des performances particulièrement mauvaises. La chose la plus importante est probablement l'alignement:
- assurez-vous que vos partitions sont alignées à 1 Mo (très important pour les SSD);
- pour la couche RAID, choisissez judicieusement la taille des morceaux ;
- pour LVM, assurez-vous de régler
--dataalignment
pour correspondre à la taille de bloc RAID ( cela peut être utile).
Aussi, si sur SSD, assurez-vous d'activer le pass-through LUKS TRIM / DISCARD en ajoutant rd.luks.options=discard
à /etc/default/grub
et discard
à /etc/crypttab
(c'est ce que je fais sur Red Hat / Fedora Linux. Cela pourrait être un peu différent sur Debian.) LVM et RAID devraient automatiquement prendre en charge la suppression si vous utilisez un noyau new-ish.
Bien sûr, ce ne sont que des directives générales. Si vous avez des besoins particuliers, n'hésitez pas à mettre à jour votre question ou commentaire ici.