Utilisation de lecteurs 4k avec md / LVM / dm-crypt

8

Je sais que je dois aligner mes disques 4k sur un multiple de 8 secteurs, mais qu'en est-il de md-RAID / LVM / dm-crypt? Comment puis-je dire à ces couches que mon lecteur est en 4K? S'ils ne respectent pas la taille du secteur 4k, l'alignement de la partition est inutile. Comment aligner LVM / md / crypto-couches? Merci.

Vincent
la source
2
Je pensais juste, "Hmm, 4 kilo-octets semble terriblement petit pour un lecteur de disque". C'est peut-être le nouveau 640k.
Tom O'Connor
@À M. De nombreux systèmes de fichiers utilisent une taille de bloc de 4 Ko, de sorte que des secteurs plus importants entraîneraient de nombreuses écritures de lecture-modification-réduction des performances. Deuxièmement, la tendance vers des secteurs plus importants consistait principalement à augmenter l'efficacité de l'ECC, et il y a des rendements décroissants pour le rendre encore plus grand.
janneb
@janneb Vous êtes Buzz Killington AICMFP
Tom O'Connor

Réponses:

4

Faites attention! Les étiquettes gpt, requises pour les disques> 2 TiB, ont une longueur de 39 (512 octets). Donc, si vous créez votre première partition immédiatement après l'étiquette, elle ne se trouvera pas sur une limite de 4 Ko.

GNU parted ne le fait pas par défaut, probablement parce que de nombreux lecteurs "Advanced Format" prétendent à tort que leurs secteurs physiques , et pas seulement leurs secteurs logiques, ne font toujours que 512B.

Donc, si vous utilisez GNU parted, assurez-vous que chaque partition démarre sur un LBA divisible par 8 (les LBA restent 512B, donc 8 * 512B = 4KiB). Les LBA commencent à 0, alors démarrez la première partition à "40s".

De plus, si vous utilisez GRUB, laissez de la place pour son bootstrap de deuxième étape. Les étiquettes MS-DOS sont de 63 secteurs, avec suffisamment d'espace inutilisé pour que GRUB stocke son bootstrap de deuxième étape, mais il n'y a pas d'espace inutilisé dans une étiquette gpt. Faites donc une petite partition 1, définissez son indicateur "bios_grub", puis créez vos "vraies" partitions après cela - en vous assurant que chacune commence sur un LBA qui est un multiple de 8.

Phil Karn
la source
3

Voir https://ata.wiki.kernel.org/index.php/ATA_4_KiB_sector_issues

La version courte est que si vous avez une distribution récente, elle devrait automatiquement faire la bonne chose. Pour les distributions plus anciennes, c'est un peu plus compliqué.

Pour LVM, vous devriez étudier l' --dataalignmentoption pvcreateou les distributions encore plus anciennes -–metadatasize.

MD, AFAIK, place ses propres métadonnées à la fin des partitions, elles doivent donc toujours être alignées sur la partition sous-jacente.

Pour mkfs, encore une fois, le système de fichiers doit être aligné sur la partition sous-jacente. Pour certains systèmes de fichiers, vous pouvez ajouter des options de largeur et de taille de bande au cas où vous exécutez sur un périphérique RAID, afin que le système de fichiers puisse essayer d'aligner les éléments sur les limites de la bande RAID.

janneb
la source
1

le problème est principalement avec l'alignement de la partition commençant par la structure du disque sous-jacent. pour que les disques à compatibilité ascendante `` mentent '' au bios / os qu'ils ont 512B secteurs, alors qu'en fait ils ont 4096B secteurs dans le cas des disques durs modernes, 32-64kB secteurs dans le cas des raids / ssds de décapage les plus courants.

des partitions mal alignées nuiront à vos performances. j'ai fait quelques benchmarks uniquement sur des partitions régulières sur le dessus du disque - sans lvm et mes résultats mesurés avec bonnie ++ étaient sans alignement approprié:

Sequential Output Block: 29MB/s
Sequential Output Rewrite: 20MB/s

avec alignement:

Sequential Output Block: 70MB/s
Sequential Output Rewrite: 37MB/s

vérifiez ceci pour l'alignement lvm.

pQd
la source
0

La plupart des distributions plus récentes sont mises à jour pour en savoir plus sur la chose 4K. Je viens de construire une configuration md-RAID / LVM / XFS sur un tas de disques de 2 To sans aucun problème. Je n'ai rien fait de spécial.

Porche
la source
Je ne suis pas d'accord ... bien sûr - tout fonctionne, mais les partitions sont mal alignées, ce qui nuit aux performances.
pQd
Eh bien, cela soulève des questions. J'ai plusieurs raids différents en utilisant des disques de 2 To à 500 Go avec un LVM au-dessus d'eux formatés avec XFS. Alors, comment tout fonctionnerait-il exactement si tous les disques n'étaient pas en 4K? J'adorerais faire des repères mais mon serveur terra est plus lent que les disques, donc ce serait inutile.
Porche