web-dev-qa-db-fra.com

Server de fichiers - Configuration de stockage: RAID vs lvm vs zfs quelque chose d'autre ...?

Nous sommes une petite entreprise qui fait une édition vidéo, entre autres et nécessitons un endroit pour conserver des copies de sauvegarde des fichiers multimédias volumineux et faciliter la partager.

J'ai une boîte configurée avec Ubuntu Server et 4 x 500 Go de lecteurs. Ils sont actuellement configurés avec Samba comme quatre dossiers partagés que les postes de travail Mac/Windows peuvent voir bien, mais je veux une meilleure solution. Il y a deux raisons majeures à cela:

  1. 500 Go n'est pas vraiment assez grand (certains projets sont plus grands)
  2. Il est lourde pour gérer la configuration actuelle, car des disques durs individuels ont des quantités différentes d'espace libre et de données dupliquées (pour la sauvegarde). C'est déroutant maintenant et cela ne s'aggravera qu'une fois qu'il y a plusieurs serveurs. ("Le projet est sur Sever2 dans Share4", etc.)

Ainsi, j'ai besoin d'un moyen de combiner des disques durs de manière à éviter une perte de données complète avec la défaillance d'un seul lecteur. Les utilisateurs ne voient donc qu'une seule part sur chaque serveur. J'ai terminé Linux Software Raid5 et j'ai eu une mauvaise expérience avec elle, mais j'essayerais à nouveau. LVM semble ok mais il semble que personne ne l'utilise. ZFS semble intéressant mais c'est relativement "nouveau".

Quelle est la manière la plus efficace et la moins risquée de combiner le disque dur qui convient à mes utilisateurs?


EDIT: Le but ici est essentiellement de créer des serveurs contenant un nombre arbitraire de disques durs, mais limite la complexité d'une perspective d'utilisateur final. (c'est-à-dire qu'ils voient un "dossier" par serveur) sauvegarde des données n'est pas un problème ici, mais comment chaque solution répond à une défaillance matérielle est une préoccupation sérieuse. C'est pourquoi j'ai forfairé Raid, LVM, ZFS et qui sait - quoi ensemble.

Mon expérience préalable avec RAID5 était également sur une boîte de serveur Ubuntu et il y avait un ensemble de circonstances difficiles et improbables qui ont conduit à une perte de données compléter. Je pourrais éviter Ça à nouveau mais qu'il a été laissé avec un sentiment que j'ajoutais un point de défaut supplémentaire inutile au système.

Je n'ai pas utilisé RAID10, mais nous sommes sur le matériel de produits de base et la plupart des lecteurs de données par boîte sont à peu près fixés à 6. Nous avons beaucoup de lecteurs de 500 Go et 1,5 TB est joli petit. (toujours une option pour au moins un serveur, toutefois)

Je n'ai aucune expérience avec LVM et j'ai lu des rapports contradictoires sur la manière dont il gère l'échec de la conduite. Si une configuration de LVM (non rayée) peut gérer un seul lecteur d'échec et ne lâche que les fichiers ayant une partie stockée sur ce lecteur (et stocké la plupart des fichiers sur un seul lecteur uniquement), nous pourrions même vivre avec cela.

Mais tant que je dois apprendre quelque chose de totalement nouveau, je peux aussi bien aller jusqu'au bout de ZFS. Contrairement à LVM, cependant, je devrais aussi changer mon système d'exploitation (?) Afin que cela augmente la distance entre l'endroit où je suis et où je veux être. J'ai utilisé une version de Solaris à UNI et cela ne l'dérangerait pas terriblement, cependant.

À l'autre bout sur le spectre informatique, je pense que je peux aussi explorer Freeenas et/ou OpenFiler, mais cela ne résout pas vraiment le problème de la combinaison de lecteurs.

35
privatehuff

LVM est en fait très fortement utilisé. Fondamentalement, LVM se trouve au-dessus de la couche matérielle (pilote). Il n'ajoute aucune redondance ni une fiabilité accrue (il repose sur le système de stockage sous-jacent pour gérer la fiabilité). Au lieu de cela, il fournit beaucoup de flexibilité ajoutée et de fonctionnalités supplémentaires. LVM ne doit jamais voir un disque disparaître ou échouer, car la défaillance du disque doit être gérée par RAID (Soyez-lui logiciel ou matériel). Si vous perdez un disque et que vous ne pouvez pas continuer à fonctionner (reconstruire le raid, etc.), vous devriez aller à des sauvegardes. Essayer de récupérer les données d'un tableau incomplet ne doit jamais être nécessaire (si c'est le cas, vous devez réévaluer toute votre conception).

Parmi les choses que vous obtenez avec LVM sont la capacité de cultiver et de rétrécir facilement des partitions/des systèmes de fichiers, la possibilité d'allouer de manière dynamique de nouvelles partitions, de la possibilité d'instantané des partitions existantes et de monter les instantanés comme des partitions en lecture seule ou en écriture. Les instantanés peuvent être incroyablement utiles, en particulier pour des choses comme des sauvegardes.

Personnellement, j'utilise LVM pour chaque partition (sauf/boot) sur chaque boîte que je construise et que je le fais depuis 4 ans. Traiter avec des boîtes non-LVM'ed est une douleur énorme lorsque vous souhaitez ajouter ou modifier votre disposition de disque. Si vous utilisez Linux, vous voulez absolument utiliser LVM. [Remarque: Ce produit ci-dessus sur LVM a été mis à jour pour mieux expliquer ce que c'est et comment il convient à l'équation de stockage.]

Quant à la raid, je ne fais pas de serveurs sans raid. Avec les prix du disque aussi bon marché qu'ils sont, j'irais avec RAID1 ou RAID10. Plus rapide, plus simple et beaucoup plus robuste.

Honnêtement, sauf si vous êtes marié à Ubuntu (que je recommanderais normalement), ou si la case effectue d'autres tâches, vous voudrez peut-être examiner OpenFiler . Il allume votre boîte dans un appareil de stockage avec une interface Web et gérera tout le RAID/LVM/etc. pour vous et vous permettra d'exporter le stockage comme SMB, NFS, ISCSI, etc. Slick Little Configuration.

28

ZFS est vraiment fiable et il est certain que votre enfer de gestion de stockage de beaucoup plus facile. En prime: SMB est intégré à ZFS à OpenSolaris et gère très bien le raid. Attendez quelques jours, téléchargez la version 2009.6 publiée et donnez-la sur une machine à tester. Je suis sûr que vous aimerez ZFS.

Et à propos de votre commentaire ZFS ÊTRE NOUVEAU: Pas très nouveau!

13
Wijnand

La question centrale est: "Quelle est l'importance de ces données?"

Si la réponse est "Je peux le recréer facilement" que vous voulez RAID5, éventuellement avec LVM sur le dessus de celui-ci pour la simplicité de la gestion.

Si la réponse est "Je peux le recréer, mais cela prendrait un moment et que les gens se plainent" que vous voulez RAID 6 ou plus probablement RAID 1/10.

Si la réponse est "personne ne fonctionne aucun travail pendant que je le recrée et assurez-vous qu'il est un peu parfait", vous voulez ZFS/RAID-Z

Notez que vous êtes toujours capable de le recréer. RAID n'est pas une sauvegarde.

9
user2108

Pour connecter beaucoup de lecteurs dans le même châssis, un contrôleur de raid matériel est le meilleur outil. Il fournira de nombreux connecteurs SATA pour vos entraînements, la redondance via RAID-5 ou de préférence RAID-6, et May Fournir une meilleure performance.

Les performances du logiciel RAID sont souvent meilleures que la raid matérielle dans des repères, cependant, la servage de fichiers et le RAID logiciel sont à la fois intenses de la CPU et en compétition pour vos transformateurs tout en travaillant. Mon expérience montre que si vous n'utilisez que des systèmes Dual-Core Core, le matériel de matériel correctement configuré battra les mains du logiciel.

Bon contrôleurs matériels avec bon support Linux:

  • Areca
  • 3ware
  • la nouvelle série Adaptec (les vieux sont Sloooooow)
  • Lsi megaraid
5
wazoox

RAID n'est pas comme LVM. Vous pouvez utiliser RAID pour effectuer des partitions de tolérance de défaut, mais LVM est utilisé pour faciliter la partitionnement de disque et l'édition de System. Vous pouvez utiliser RAID sur LVM ou ZFS (ZFS peut fonctionner à la fois RAID et LVM). À mon avis, ZFS fonctionne mieux que LVM, mais:

  • sur Solaris 10/11/Opensolaris uniquement, vous ne pouvez pas l'utiliser de Linux
  • ZFS est la gestion de disque et le système de fichiers, LVM permet d'utiliser tout système de fichiers dont vous avez besoin.

Sur Ubuntu, je préfère utiliser RAID5 MD avec LVM.

4
Paul Rudnitskiy

Jetez un coup d'œil sur ce que Nexenta et Opensolaris proposent et je pense que vous serez très satisfait de ce que vous pouvez obtenir pour rien. Il est dit que les prochaines sorties d'OpenFiler utiliseront également le port FreeBsd ZFS (cependant, ils sont assez en retard dans une perspective de fonctionnalité).

Cela étant dit, j'essaie d'éviter de faire RAID5, RAID6 ou RAID50 dans des logiciels et préférez utiliser des contrôleurs matériels pour décharger tout le fichier XOR Work. RAID1 et RAID10 dans le logiciel Linux. Là, j'ai mis LVM sur eux pour permettre une plus grande flexibilité dans ce que j'ai fait avec les blocs que j'ai après la redondance en place. RAID + LVM + XFS est ma configuration Linux préférée., Mais je prendrais des ZFS sur tout le jour.

4
jharley

J'ai couru le serveur de fichiers pour une entreprise/une situation très similaire. Fondamentalement, un département graphique de 3 personnes avec 30 To de stockage et le budget Shoestring d'une petite entreprise. Nos projets typiques ont couru de 0,5 To à 6 To. Et le serveur de fichiers servait une ferme de rendu importante qui pourrait vraiment la battre.

Dans ma configuration, j'ai rencontré un serveur 3U exécutant Linux avec des matricios externes RAID6 RAID A-t-elle attachée à celle-ci. J'ai géré les volumes physiques et logiques avec LVM et a dirigé le système de fichiers XFS. Ce que je ferais, c'est créer un volume logique pour chaque projet, puis le développer comme le projet a grandi. Lorsque le projet a été effectué, je pourrais archiver le travail pour enregistrer et souffler le volume logique. Cela reviendrait cet espace dans le groupe de volumes où il serait réaffecté au prochain projet.

C'était un moyen très propre d'utiliser notre stockage, mais il y a deux inconvénients à cette approche. Vous finissez par avoir à la micromanage des tailles des volumes logiques essayant d'équilibrer la quantité d'espace allouée à un volume logique afin que vous ayez suffisamment d'espace pour faire votre travail, mais pas trop l'affecter et finir par la gaspillage d'espace. Notre ferme de rendu était capable de générer de nombreuses TB de données par jour et si vous n'avez pas prêté une attention particulière à cela, vous manqueriez d'espace à la hâte. Je configurais éventuellement des scripts qui surveillaient les tendances de l'espace disponible sur les volumes logiques et les développeraient automatiquement. Même avec cela en place avec 80 volumes logiques, il y avait beaucoup d'espace inutilisé lié à tous les volumes logiques. J'ai déjà laissé entendre au 2e problème .... LVM ne fait pas vraiment de la fine provisioning et XFS ne vous permet que de développer un système de fichiers. Donc, sur une allocation d'espace à un volume logique peut s'ajouter à beaucoup d'espace inutilisable.

C'était toute la configuration il y a environ 5 ans et si je le faisais aujourd'hui, j'utiliserais OpenSolaris et ZFS. La principale raison est que l'approche de stockage groupée ZFS signifie moins de gestion du volume. Vous pouvez toujours séparer chaque projet dans son propre système de fichiers, mais sans avoir à la micromanie des tailles des volumes individuels. ZFS a d'autres très belles caractéristiques qui en font un meilleur choix, mais il existe d'autres questions sur Serverfault qui vont dans cela.

À mon avis, ZFS est simplement la meilleure solution gratuite disponible aujourd'hui.

2
3dinfluence

Certaines choses à considérer si vous restez avec Linux:

  • Pensez aussi au système de fichiers aussi. Votre exemple de 400 Go est à peu près la plus grande capacité que je recommanderais avec une bonne conscience pour EXT3. Je ne recommande pas de créer des systèmes de fichiers ext3 beaucoup plus grands, car par exemple. Le temps FSCK peut être énorme. Créez plusieurs plus petites au lieu d'un grand système de fichiers.
  • Comme vous avez mentionné les données vidéo: EXT3 poignées Les fichiers volumineux inefficient car il devra créer des blocs de métadonnées indirects, à double indirecte et triple-indirecte pour stocker la données de grands fichiers et vous paierez le prix. De nos jours, Ext4 prend en charge les étendues et gère cela beaucoup mieux. Mais alors, c'est plutôt nouveau et par ex. Red Hat Enterprise Linux 5 ne le supporte pas encore. (Certaines distributions d'entreprise soutiendront des alternatives telles que XFS).
  • S'il y a , corruption de données sur tout bloc de données, vous aurez du mal à le remarquer avec des systèmes de fichiers Linux. Zfs d'autre part checksums Toutes les métadonnées et et vérifie également la CheckSum Chaque fois que les données sont lues à partir du disque. (Il y a aussi un nettoyage de fond)
  • RAID Le temps de reconstruction sur Linux est proportionnel à la taille du disque car la couche RAID ne connaît pas le contenu du système de fichiers (couche). Le temps de reconstruction RAID-Z de ZFS dépend de la quantité de données réelles sur le disque défaillant, car seulement Les blocs utilisés seront copiés/reconstruits sur un disque de remplacement.
  • Voulez-vous instantané vos systèmes de fichiers? Les instantanés LVM ne se comparent même pas aux instantanés instantanés de ZFS. Ce dernier peut également facilement être exposé aux utilisateurs finaux par ex. pour des restaurations faciles.
  • Utilisez RAID6 (RAID-Z2) et non seulement RAID5 (RAID-Z) avec de grands disques (> 500 Go), car il est probable qu'un autre disque échouera pendant reconstruit.
2
knweiss

RAID VS LVM n'est pas vraiment une bonne comparaison qu'ils effectuent des rôles distincts et sont fréquemment utilisés ensemble. RAID est utilisé pour la redondance d'entraînement, LVM peut être utilisé pour rompre votre appareil RAID dans des volumes logiques, il est utilisé pour un redimensionnement facile et pour prendre des instantanés.

2
Zoredache

Désolé, ce serait un commentaire mais je n'ai pas le rep ...

Comment Raid-Z ou RAIDZ2 fournit-il une meilleure redondance que RAID6?

ZFS a des checksumming partout

À propos de la question initiale. Quelles que soient les données que j'utiliseriez 2 parité active par 10 disques. Je voudrais utiliser une carte RAID de bonne qualité que les 3ware sont excellentes. Personnellement, j'utilise le raid matériel avec la sauvegarde de la batterie. Lvm Juste pour que vous puissiez migrer facilement les données à la fin de la vie du matériel. XFS comme système de fichiers.

1
James

Vous voudrez peut-être consulter AFS. Cela vous donnera une certaine mesure des deux disponibilités (vous pouvez accéder à ces fichiers sur et hors de votre réseau) et de redondance (les fichiers peuvent être répliqués). Pour un flux de travail où vous ouvrez un fichier, ouvrez-le pendant un certain temps, puis sauvegardez-le, ce serait mieux (d'un point de vue réseau) que NFS, au moins plus âgé NFS.

1
Chris

Utilisez l'utilitaire "MDADM" pour créer un tableau RAID-5 de vos lecteurs.

Cela fournit la redondance dont vous avez besoin. Donc, si un lecteur est mort, vous pouvez le remplacer sans perte de données, et vous donne également une utilisation de 3 des 4 disques.

Je vous recommanderais également de créer un volume LVM sur le raid, vous pouvez donc partitionner l'espace au besoin.

1
ph.

Pourquoi n'utilisez-vous pas de disque ou de carte SSD pour que le serveur système puisse démarrer et que 500 Go en tant que stockage. Utilisez un disque de 500 Go et quand il devient une échange complète, c'est manuellement. Vous pouvez faire la sauvegarde plus tard dans un autre ordinateur avec calme. Parce que pendant que le disque dur tourne (filature), il peut être endommagé. Quoi qu'il en soit, si vous connectez tous les disques en même temps, ils tournent tous et ne peuvent pas endommager si vous l'utilisez ou non. La probabilité d'échec soulevez lorsque vous avez plus de disques allumé. Utilisez un par temps et échangez-le lorsque vous êtes complet ou dans une période de temps anticipant une défaillance (utilisez-le aussi le SMART capacité à vous débarrasser de cela). Utilisez un disque de transport ou utilisez un SCSI externe./Adaptateur de disque SATA Vous n'avez donc pas besoin de dissacher le serveur d'ordinateur chaque fois que vous échangez un disque. C'est la forme la plus sécurisée et la plus fiable. L'utilisation de RAID est plus chère et que vous ne perdez simplement de disques (parce que vous laissez tomber Risque de devenir endommagé pour seulement le laisser allumer? stupide, ou pas?). Si vous voulez plus de DataTatrougouts, utilisez une configuration RAID pour cela, je suppose est un bon choix mais ne faites pas confiance à une configuration de l'ordinateur. La sauvegarde doit être fait toujours manuellement avec une personne (l'administrateur du réseau ou du serveur). C'est l'une des œuvres d'un administrateur. Vous pouvez utiliser des bandes, des DVD, Bluheray ou d'autres disques pour faire la sauvegarde. Mais vous aurez toujours besoin d'un support de stockage fiable et d'une Le disque en cours d'exécution n'est pas un. Un disque éteint et bien enregistré (en frais et libre d'humidit y place) est un support de stockage fiable.

0
Anyeos