Implémentation de fstrim Linux sur SSD avec le logiciel md-raid

14

Je construis actuellement un nouveau serveur Ubuntu 13.04 avec 2 SSD de 256 Go dans un miroir de raid pour exécuter une instance MariaDB. Nous plaçons généralement LVM au-dessus du chiffrement dm-crypt au-dessus d'une baie md raid 1 , mais nous n'avons pas utilisé de SSD dans cette configuration auparavant.

Ma question est, puisque nous utiliserons un noyau (3.8) plus récent, il devrait permettre à fstrim d'être appliqué au volume de raid directement si je comprends bien. Puis-je maintenant simplement compter sur cela pour travailler correctement fstrim -v /via un travail cron, tout comme je le ferais si le raid n'était pas en place? Est-ce vrai même avec LVM en plus du volume de raid? Nous prévoyons d'utiliser le chiffrement matériel présent sur les disques, nous n'aurons donc pas besoin de dm-crypt ici.

REMARQUE: je suis conscient qu'il existe plusieurs questions similaires concernant le rétroportage des versions de noyau mises à jour et l'implémentation de la suppression avec le volume md - je demande spécifiquement si fstrimfonctionne contre md-raid sans autre modification dans les noyaux plus récents.

MISE À JOUR: Je voulais juste suivre et poster que cela a bien fonctionné. Il y a maintenant un emploi dans cron.daily qui fonctionne sur fstrim /et /bootet cela fonctionne parfaitement. En outre, il s'est avéré que le cryptage matériel sur les SSD (Samsung 840 Pros) semble nécessiter la prise en charge du TPM, ce que nous n'avons pas, nous avons donc configuré avec le cryptage logiciel comme indiqué dans le lien. En ajoutant discardaux options de /etc/crypttab( pas à /etc/fstab) et issue_discards = 1à la section des périphériques de /etc/lvm/lvm.conf, fstrim fonctionne correctement même à travers les couches LVM, de chiffrement et RAID. Plus d'informations sur la configuration de la suppression / suppression sur les SSD avec LVM et le chiffrement sont disponibles ici.

nedm
la source

Réponses:

11

Les correctifs pour la prise en charge de mdraid RAID 1 et 10 pour TRIM ont augmenté il y a environ un an.

Vous pouvez tester la prise en charge de votre noyau en montant le système de fichiers avec l' discardoption (qui active TRIM automatique). S'il est pris en charge, vous verrez un message dans syslog ou dmesgcomme ceci:

EXT4-fs (md1): re-mounted. Opts: discard,data=ordered

Sinon, vous obtiendriez ceci:

EXT4-fs warning (device md1): ext4_issue_discard:2619: discard not supported, disabling

Vous n'avez pas besoin de redémarrer pour voir si cela fonctionne:

mount /dir -o remount
Michael Hampton
la source
1
Donc, si je vous comprends bien, si le montage avec suppression fonctionne, alors fstrim devrait aussi?
nedm
1
Correct. S'il est entièrement mis en œuvre complètement, cela fonctionnera dans les deux cas.
Michael Hampton
3
N'oubliez pas de modifier les options de montage par la suite, si vous n'avez pas l'intention de faire un TRIM automatique. :)
Michael Hampton
2
Pour mémoire, le support TRIM pour RAID1 a été ajouté le 11 octobre 2012, voir ici lkml.indiana.edu/hypermail/linux/kernel/1203.1/01772.html Donc le noyau 3.4 ne le supporte pas mais le 3.8 le fait (ne sait pas environ 3,5 / 3,6 / 3,7)
Joril
3
@MichaelHampton ce n'est malheureusement pas vrai. Par exemple, avoir le noyau 3.2, avec ext4 sur LVM sur MD (soft) RAID1, (re) monter ext4 avec discard ne signalera pas d'erreur, mais ne fonctionnera pas non plus (comme MD RAID1 dans les noyaux 3.2.x ne prend pas en charge transmission des commandes TRIM). Donc, la seule façon de savoir avec certitude est de le tester
Matija Nalis