21 votes

Quel système de fichiers pour un LVM de disques volumineux (8 To) ?

J'ai un serveur Linux avec de nombreux disques de 2 To, actuellement tous dans un LVM ce qui donne environ 10 To d'espace. J'utilise tout cet espace sur une partition ext4, et j'ai actuellement environ 8,8 To de données.

Le problème est que j'ai souvent des erreurs sur mes disques, et même si je les remplace (c'est-à-dire que je copie le contenu du vieux disque sur un nouveau avec dd puis je mets le nouveau dans le serveur) dès que les erreurs apparaissent, j'ai souvent environ 100 Mo de données corrompues dessus. Cela rend e2fsck fou à chaque fois, et il faut souvent une semaine pour remettre le système de fichiers ext4 en état de fonctionnement.

La question est donc : Que me recommanderiez-vous d'utiliser comme système de fichiers sur mon LVM ? Ou que me recommanderiez-vous de faire à la place (je n'ai pas vraiment besoin du LVM) ?

Profil de mon système de fichiers :

  • de nombreux dossiers de différentes tailles totales (certains totalisant 2 To, d'autres totalisant 100 Mo)
  • près de 200 000 fichiers de tailles différentes (3/4 d'entre eux font environ 10 Mo, 1/4 entre 100 Mo et 4 Go ; je ne peux actuellement pas obtenir plus de statistiques sur les fichiers car ma partition ext4 est complètement détruite depuis quelques jours)
  • beaucoup de lectures mais peu d'écritures
  • et j'ai besoin de tolérance aux pannes (j'ai arrêté d'utiliser mdadm RAID car cela n'apprécie pas d'avoir UNE erreur sur le disque entier, et j'ai parfois des disques défaillants, que je remplace dès que possible, mais cela signifie que je peux avoir des données corrompues sur mon système de fichiers)

Le principal problème sont les disques défaillants ; je peux perdre certains fichiers, mais je ne peux pas me permettre de tout perdre en même temps.

Si je continue à utiliser ext4, j'ai entendu dire que je devrais essayer de créer des systèmes de fichiers plus petits et de les "fusionner" de quelque manière que ce soit, mais je ne sais pas comment.

J'ai entendu dire que btrfs serait bien, mais je ne trouve aucun indice sur la manière dont il gère la perte d'une partie d'un disque (ou d'un disque entier), lorsque les données ne sont PAS répliquées (mkfs.btrfs -d single ?).

Tout conseil sur la question sera le bienvenu, merci d'avance !

22voto

c2h5oh Points 1489

Il ne s'agit pas d'un problème de système de fichiers, mais des limitations physiques des disques. Voici quelques données :

Les disques SATA sont couramment spécifiés avec un taux d'erreur de lecture irrécupérable (URE) de 10^14. Cela signifie que 1 octet par 12 To sera irrécupérable même si les disques fonctionnent correctement.

Cela signifie que sans RAID, vous perdrez des données même si aucun disque ne tombe en panne - le RAID est votre seule option.

Si vous optez pour le RAID5 (capacité totale n-1, où n = nombre de disques), ce n'est toujours pas suffisant. Avec un RAID5 de 10 To composé de 6 disques durs de 2 To, vous aurez 20% de chances qu'un disque tombe en panne par an et avec la défaillance d'un seul disque, en raison de l'URE, vous aurez 50% de chances de reconstruire avec succès le RAID5 et de récupérer 100% de vos données.

En gros, avec la capacité élevée des disques et une URE relativement élevée, vous avez besoin du RAID6 pour être protégé même contre la défaillance d'un seul disque.

Lisez ceci : http://www.zdnet.com/blog/storage/why-raid-5-stops-working-in-2009/162

13voto

Sven Points 95985

Faites-vous une faveur et utilisez un RAID pour vos disques, cela pourrait même être un RAID logiciel avec mdadm. Pensez également à pourquoi vous "obtenez souvent des erreurs sur vos disques" - ce n'est pas normal sauf lorsque vous utilisez des disques SATA de classe bureau bon marché au lieu de disques de qualité RAID.

Après cela, le système de fichiers n'est plus aussi important - ext4, xfs sont tous les deux de bons choix.

8voto

user35818 Points 91

J'ai eu de la chance avec ZFS, vous pourriez vérifier s'il est disponible sur la distribution que vous utilisez. Juste un avertissement, cela signifiera probablement reconstruire tout votre système, mais cela offre vraiment de bonnes performances et une tolérance aux pannes.

8voto

jammus Points 1796

J'ajoute progressivement de nouveaux disques de tailles plus grandes

Comme vous êtes intéressé par l'utilisation de LVM et que vous souhaitez gérer plusieurs disques, la réponse simple serait d'utiliser la fonction de miroir intégrée à LVM. Il suffit d'ajouter tous les volumes physiques à votre LVM. Lorsque vous créez un volume logique, passez l'option --mirrors. Cela duplique vos données.

Une autre option pourrait être de simplement configurer plusieurs paires RAID1. Ensuite, ajoutez tous les volumes RAID1 en tant que PV à votre VG. Ensuite, chaque fois que vous souhaitez étendre votre stockage, il vous suffit d'acheter une paire de disques.

7voto

nex3 Points 4309

Vous devriez vraiment utiliser un RAID 5, 6, 10, 50, ou 60. Voici quelques ressources pour vous aider à démarrer :

Informations de base sur les RAIDs

Tutoriels et installations

Consultez mes liens délicieux pour plus de liens sur les RAIDs : http://delicious.com/slmingol/raid

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X