J'ai mis en place un raid logiciel Linux niveau 5 composé de disques 4 * 2 To. La baie de disques a été créée avec une taille de bande de 64 Ko et aucun autre paramètre de configuration. Après la reconstruction initiale, j'ai essayé de créer un système de fichiers et cette étape prend très longtemps (environ une demi-heure ou plus). J'ai essayé de créer un système de fichiers xfs et ext3, les deux ont pris beaucoup de temps, avec mkfs.ext3 j'ai observé le comportement suivant, qui pourrait être utile:
- l'écriture des tables d'inode s'exécute rapidement jusqu'à ce qu'elle atteigne 1053 (~ 1 seconde), puis elle écrit environ 50, attend deux secondes, puis les 50 suivantes sont écrites (selon l'affichage de la console)
- lorsque j'essaie d'annuler l'opération avec Control + C, elle se bloque pendant une demi-minute avant d'être vraiment annulée
Les performances des disques individuellement sont très bonnes, j'ai exécuté bonnie ++ sur chacun séparément avec des valeurs d'écriture / lecture d'environ 95/110 Mo / s. Même lorsque j'exécute bonnie ++ sur chaque lecteur en parallèle, les valeurs ne sont réduites que d'environ 10 Mo. J'exclus donc la planification du matériel / des E / S en général comme source de problème.
J'ai essayé différents paramètres de configuration pour stripe_cache_size et readahead size sans succès, mais je ne pense pas qu'ils soient pertinents pour l'opération de création de système de fichiers.
Les détails du serveur:
- Serveur Linux 2.6.35-27-générique # 48-Ubuntu SMP x86_64 GNU / Linux
- mdadm - v2.6.7.1
Quelqu'un at-il une suggestion sur la façon de déboguer davantage cela?
la source
time mkfs.xfs -l sunit=128 -d agsize=64g,sunit=128,swidth=512 -b size=4096 /dev/md0 -f
ce qui prenait à peu près le même temps que mkfs sans aucun paramètreJe soupçonne que vous rencontrez le petit problème d'écriture RAID5 typique. Pour les écritures inférieures à la taille d'une bande, il doit effectuer une lecture-modification-écriture pour les données et la parité. Si l'écriture a la même taille que la bande, elle peut simplement écraser la parité, car elle sait quelle est la valeur et n'a pas à la recalculer.
la source
Vos performances mkfs et système de fichiers ultérieures pourraient s'améliorer si vous spécifiez la largeur de foulée et de bande lors de la création du système de fichiers. Si vous utilisez les blocs 4k par défaut, votre foulée est de 16 (bande RAID de 64k divisée par bloc de système de fichiers de 4k) et votre largeur de bande est de 48 (foulée de système de fichiers de 16 multipliée par les 3 disques de données de votre baie).
la source