Quels sont les avantages de Logical Volume Manager [fermé]

11

Quelles sont les fonctionnalités et les avantages potentiels de Logical Volume Manager au-delà de ce qui est détaillé sur sa page Wikipedia?

LanceBaynes
la source
1
Par contre quoi ?? Vraiment, c'est une question trop vague..pas étonnant qu'on ait voté contre.
Nandhini Anand
Veuillez préciser vos options.
Ori
1
Wow - reformuler cette question a obtenu une excellente réponse de Matt Simmons!
dunxd
1
Pour être complet, il convient également de regarder les dangers et les mises en garde de LVM: serverfault.com/questions/279571/lvm-dangers-and-caveats
RichVel

Réponses:

33

Tiré directement de mon entrée de blog: http://www.standalone-sysadmin.com/blog/2008/09/introduction-to-lvm-in-linux/

Tout d'abord, permet de discuter de la vie sans LVM. Dans le mauvais vieux temps, vous aviez un disque dur. Ce disque dur peut avoir des partitions. Vous pouvez installer des systèmes de fichiers sur ces partitions, puis utiliser ces systèmes de fichiers. Montez dans les deux sens. Cela ressemblait beaucoup à ceci:

Vous avez le lecteur réel, dans ce cas sda. Sur ce lecteur se trouvent deux partitions, sda1 et sda2. Il y a aussi de l'espace libre inutilisé. Chacune des partitions a un système de fichiers qui est monté. Le type de système de fichiers réel est arbitraire. Vous pourriez l'appeler ext3, reiserfs, ou quoi d'autre. La chose importante à noter est qu'il existe une corrélation directe entre les partitions de disque et les systèmes de fichiers possibles.

Ajoutons une gestion logique du volume qui recrée exactement la même structure:

Maintenant, vous voyez les mêmes partitions, mais il y a une couche au-dessus des partitions appelée "Volume Group", littéralement un groupe de volumes, dans ce cas des partitions de disque. Il peut être acceptable de considérer cela comme une sorte de disque virtuel que vous pouvez partitionner. Puisque nous correspondons exactement à notre configuration précédente, vous ne voyez pas encore les points forts du système. Vous remarquerez peut-être qu'au-dessus du groupe de volumes, nous avons créé des volumes logiques, qui peuvent être considérés comme des partitions virtuelles, et c'est sur ceux-ci que nous construisons nos systèmes de fichiers.

Voyons ce qui se passe lorsque nous ajoutons plusieurs volumes physiques:

Ici, nous avons trois disques physiques, sda, sdb et sdc. Chacun des deux premiers disques a une partition occupant tout l'espace. Le dernier, sdc, possède une partition occupant la moitié du disque, la moitié restant de l'espace libre non partitionné.

Nous pouvons voir le groupe de volumes au-dessus de celui qui comprend tous les volumes actuellement disponibles. C'est là que réside l'un des principaux arguments de vente. Vous pouvez créer une partition logique aussi grande que la somme de vos disques. À bien des égards, cela est similaire à la façon dont fonctionne le niveau RAID 0, sauf qu'il n'y a pas de répartition du tout. Les données sont écrites pour la plupart linéairement. Si vous avez besoin de redondance ou que les performances augmentent grâce au RAID, assurez-vous de placer vos volumes logiques au-dessus des matrices RAID. Les tranches RAID fonctionnent exactement comme les disques physiques ici.

Maintenant, nous avons ce groupe de volumes qui prend 2 et 1/2 disques. Il a été découpé en deux volumes logiques, dont le premier est plus grand que n'importe lequel des disques. Les volumes logiques ne se soucient pas de la taille des disques physiques réels, car tout ce qu'ils voient, c'est qu'ils sont découpés dans myVolumeGroup01. Cette couche d'abstraction est importante, comme nous le verrons.

Que se passe-t-il si nous décidons que nous avons besoin de l'espace inutilisé, car nous avons ajouté plus d'utilisateurs?

Normalement, nous aurions du mal à utiliser le mappage un à un, mais avec des volumes logiques, voici ce que nous pouvons faire:

Ici, nous avons pris l'espace précédemment libre sur / dev / sdc et créé / dev / sdc2. Ensuite, nous avons ajouté cela à la liste des volumes qui composent myVolumeGroup01. Une fois cela fait, nous étions libres d'étendre l'un ou l'autre des volumes logiques si nécessaire. Depuis que nous avons ajouté des utilisateurs, nous avons augmenté myLogicalVolume2. À ce stade, tant que le système de fichiers / home le supportait, nous étions libres de l'agrandir pour remplir l'espace supplémentaire. Tout cela parce que nous avons extrait notre stockage des disques physiques sur lesquels il vit.

D'accord, cela couvre le pourquoi de la gestion de volume logique. Étant donné que vous êtes impatient d'en savoir plus sur la façon de préparer et de construire vos propres systèmes, voici quelques excellentes ressources pour vous aider à démarrer:

http://www.pma.caltech.edu/~laurence/Linux/lvm.html
http://www.freeos.com/articles/3921/
http://www.linuxdevcenter.com/pub/a/linux/2006/04/27/managing-disk-space-with-lvm.html

Matt Simmons
la source
2
+1 pour une excellente description et visualisation.
Daemon of Chaos
5

Vous pouvez utiliser LVM pour faire beaucoup de choses avec les disques. Le principal avantage est la possibilité de développer des systèmes de fichiers à la volée. Supposons que vous configurez un serveur de journaux et que vous savez qu'à l'avenir, vous aurez une tonne de données. Ext3 prend en charge un maximum de 16 To (plus en fonction de votre noyau et de la version d'EL). Mais que se passe-t-il si vous savez que dans 2 ans, vous aurez besoin de 1PB de stockage? Eh bien, cela crée des problèmes. Tout d'abord, votre patron vous regardera avec des cerfs dans les yeux des phares lorsque vous lui direz le prix de ce matériel de stockage. Cela conduit à un autre problème - vous devez commencer par une petite solution que vous pouvez évoluer vers le haut. LVM vous donne cette option. Vous commencez avec quelques disques. Ensuite, vous en ajoutez d'autres, les transformez en groupe logique, les ajoutez au premier volume logique, augmentez la taille du volume et enfin agrandissez le système de fichiers. Voila, tu '

Cela vous évite d'avoir à déplacer les données hors de l'appareil, à reformater les LUN, puis à tout replacer pour effectuer une mise à niveau. Désolé pour la brièveté, j'espère que cela a du sens.

Edit: je dois également noter que si vous avez affaire à 1PB, vous ne voudrez pas utiliser Ext3 ... probablement XFS.

Matthieu
la source
Je n'achète vraiment pas LVM comme mécanisme pour passer de 16 To à 1 PB - vous avez vraiment besoin de ZFS ou similaire qui permet le "provisionnement fin" c'est-à-dire que vous créez un pool de stockage ZFS totalisant environ 1 PB maintenant, mais il n'est que partiellement soutenu par de vrais blocs de stockage. À mesure que vous grandissez, vous ajoutez simplement du stockage au sein du même pool. En utilisant LVM, vous passeriez énormément de temps à redimensionner les FS et à faire des fsck à chaque fois que vous ajoutiez du stockage.
RichVel
4

LVM présente un certain nombre d'avantages indirects. La principale chose que LVM fait est d' abstraire les disques physiques du système d'exploitation . Le principal avantage de cela est tout simplement la flexibilité . La plupart des avantages de LVM ne sont réalisés que lorsque vous avez un système de fichiers qui prend en charge le redimensionnement à la volée. La fonction de base de LVM est décrite ci-dessous:

Les partitions système existent une couche au-dessus du disque

Sans LVM, Linux utilise les partitions situées physiquement sur le disque. Les partitions sont des noms de périphériques directs. La table de partition réside dans le MBR et normalement (dans le cas de partitions étendues logiques) dans l'enregistrement de démarrage étendu (qui vous permet de créer un plus grand nombre de partitions). Les partitions définissent une taille et un typeentre autres attributs (plus précisément, ils définissent un cylindre de début et de fin qui définit essentiellement la taille). Parce qu'ils sont si étroitement liés au disque, il est important de configurer un schéma de partitionnement «correct» lors de l'installation. Si soudainement, une fonction de la machine change ou si vous êtes un novice et que vous n'avez pas compris les implications du partitionnement, ou si vous êtes sous-estimé l'utilisation du disque quelque part, ou les journaux d'une application particulière, changer ce partitionnement peut être lourd. Il existe des outils pour le faire, mais vous devez généralement déplacer les données de la partition pour les modifier. Évidemment, si vous avez quatre partitions, la modification du cylindre de fin de la deuxième partition affecte les cylindres de démarrage des troisième et quatrième partitions et vous vous retrouvez dans une situation désordonnée.

Les naïfs peuvent préconiser l'utilisation d'une seule grande partition, mais vous pouvez vous défaire lorsque vous devez introduire des quotas ou isoler des processus malveillants remplissant des parties de votre système (par exemple / var / log, / tmp, etc.)

Les avantages de ceci sont:

Ajout / suppression de stockage

L'ajout de stockage est généralement trivial. Si vous utilisez un RAID matériel ou logiciel et que vous ajoutez plus de disques, vous devrez souvent jouer avec des liens symboliques pour reconstruire la matrice RAID afin que Linux rende votre nouveau stockage disponible aux emplacements que vous souhaitez.

Prenons l'exemple d'un grand répertoire / home qui se remplit. Cela existe sur un volume RAID 1 à deux disques existant. Vous souhaitez ajouter deux disques supplémentaires. Vous les installez dans une configuration matérielle RAID 1. Sans LVM, vous avez deux options:

  1. Reconstruisez le tableau RAID complet dans une configuration 1 + 0 qui nécessite de déplacer les données hors de la machine, de les reconstruire et de les remettre en marche.
  2. Créez un nouveau groupe de volumes RAID 1 qui est distinct. Linux a déjà le premier volume RAID monté sur / home, vous devez donc monter le deuxième volume RAID sur / home1 ou similaire. Maintenant, pour obtenir les chemins d'accès appropriés pour les utilisateurs qui sont cohérents avec le premier, vous devrez peut-être utiliser des liens symboliques pour obtenir le même effet. De plus, cette solution nécessite une maintenance constante du volume RAID d'origine et potentiellement la migration des données hors de la partition d'origine.

Avec LVM, vous pouvez simplement ajouter le nouveau groupe de volumes RAID 1 au pool de stockage supplémentaire, redimensionner le système de fichiers (à condition qu'il le prenne en charge) et le tour est joué, / home est maintenant soudainement plus grand. Vous n'avez pas besoin de créer de lien symbolique ni de faire de la maintenance sur des données potentiellement en mouvement de / home vers / home1 ou vice versa. Rincer, laver, répéter pour les futures mises à niveau du disque.

Maintenance en ligne

La plupart des tâches LVM, à condition que le matériel le prenne en charge, peuvent être effectuées en ligne, sans redémarrer la machine. Si vous pouvez échanger des disques à chaud sur un système, vous pouvez ajouter de nouveaux disques et ensuite supprimer les anciens disques (peut-être plus petits) pour augmenter les exigences de stockage du système.

L'un des principaux problèmes avec les volumes LVM est qu'à mesure qu'ils approchent de la capacité, la fragmentation peut devenir un problème dans mon expérience. Des volumes> 90% et vraiment> 95% peuvent signifier que vous pouvez vous retrouver avec une mauvaise fragmentation sur le disque en fonction de votre utilisation du disque et des types de fichiers. C'est rarement quelque chose qui vous préoccupe excessivement, c'est le cas avec tout type de gestion de volume / partition, mais c'est la fragmentation sur la couche de volume par opposition à sur la partition qui est le problème ici.

Philip Reynolds
la source
Bonne réponse sur les avantages, mais dans votre point (2) je pense que vous voulez dire "créer un nouveau volume RAID 1 qui ..." plutôt que de créer un VG, car c'est dans le cas non LVM et probablement en utilisant le RAID matériel comme mentionné .
RichVel
1

Vous auriez dû fournir plus d'informations sur la situation dans laquelle vous allez appliquer cela, de cette façon, nous pouvons donner des réponses ciblées plutôt que des réponses générales éventuellement non liées (je ne peux pas commenter autrement, j'aurais dit cela dans un commentaire).

Maintenant sur la question elle-même, vous avez la création, le redimensionnement et la suppression faciles de volumes (aka partitions), et une autre fonctionnalité intéressante (selon votre situation) est la possibilité de créer des instantanés d'un volume.

Indisponible
la source
1

Même si vous êtes déjà sélectionné comme meilleure réponse, j'aimerais apporter mon opinion sur ce sujet. D'après mon expérience, je remettrais en question l'utilité de LVM si vous avez un lecteur physique ou même si vous en avez plusieurs (personnellement, je n'utilise jamais LVM sur le lecteur système). Cependant, LVM est vraiment indispensable en plus du RAID matériel. Cela permet de séparer clairement les fonctions de RAID et LVM - vous utilisez RAID pour gérer la fiabilité et les performances de votre stockage et vous utilisez LVM pour allouer des volumes réels au système. Parfois, cette fonctionnalité se chevauche, c'est-à-dire que LVM peut fournir des fonctionnalités de RAID-0 et RAID-1 mais je ne recommanderais pas d'utiliser l'un des deux avec une construction sérieuse.

Fondamentalement, RAID et LVM vont de pair, en utilisant l'un sans l'autre est généralement sous-optimal.

dtoubelis
la source