LVM doit-il être utilisé pour les partitions lors de la création d'images de machine virtuelle (par exemple, des images KVM)? Il semble que cela ajoute de la complexité si vous voulez, par exemple, monter une image qcow2 dans l'hôte si l'image contient des partitions LVM.
D'un autre côté, il ne semble pas que les avantages des partitions LVM soient aussi importants sur une image de machine virtuelle, car il est beaucoup plus facile de mettre une machine virtuelle hors ligne et de redimensionner des partitions que sur un système physique.
lvm
kvm
virtualization
Lorin Hochstein
la source
la source
Réponses:
"Ça dépend."
Si vous vous trouvez dans un environnement que vous contrôlez (vmware ou kvm ou autre) et que vous pouvez prendre vos propres décisions sur la qualité de service du disque, il est recommandé de ne pas utiliser LVM dans vos ordinateurs virtuels. Cela n'apporte pas beaucoup de flexibilité que vous ne pouviez pas obtenir au niveau de l'hyperviseur.
N'oubliez pas que l'hyperviseur est déjà en train de réaliser efficacement ces tâches. Si vous voulez pouvoir redimensionner arbitrairement les systèmes de fichiers (une bonne idée), créez simplement un disque virtuel distinct pour chaque système de fichiers.
Une chose à laquelle vous pourriez penser en allant dans cette voie. Vous n'avez même pas nécessairement besoin de mettre des partitions sur vos disques virtuels de cette façon. Par exemple, vous pouvez créer un disque virtuel pour
/home
; c'est à l'/dev/vdc
intérieur de votre vm. Lors de la création du système de fichiers, faites quelque chose commemke2fs -j /dev/vdc
au lieu de spécifier une partition.C'est une bonne idée, mais ... la plupart des outils (et des autres administrateurs qui vous suivent) s'attendent à voir des partitions sur chaque disque. Je recommanderais simplement de mettre une seule partition sur le disque et d'en finir. Cependant, cela signifie une étape supplémentaire lors du redimensionnement du système de fichiers. Et n'oubliez pas d'aligner correctement vos partitions - le bon principe de base est de démarrer la première partition à 1 Mo.
Tout cela dit - Faire tout cela au niveau de l'hyperviseur signifie que vous devez probablement redémarrer la VM pour redimensionner les partitions. L'utilisation de LVM vous permettrait d'ajouter à chaud un disque virtuel (en supposant que votre combinaison hyperviseur / système d'exploitation le permette) et de développer le système de fichiers sans redémarrer. C'est définitivement un avantage.
Pendant ce temps, si vous utilisez un fournisseur de cloud, c'est plus subtil.
Je ne connais pas grand chose d'Azure, de GCP ou de tout autre joueur plus petit, je ne peux donc pas vous aider.
Avec AWS, vous pouvez suivre mon conseil ci-dessus et vous irez souvent très bien. Vous pouvez (maintenant) augmenter la taille des volumes EBS (disques virtuels) à la volée, redimensionner les partitions, etc.
Cependant, dans le cas général, il peut être judicieux de tout placer sur un seul grand volume EBS et d’utiliser LVM (ou, je suppose, des partitions simples). Amazon vous donne une limite IOPS sur chaque volume. Par défaut, cette limite est adaptée à la taille du volume. Par exemple, pour les
gp2
volumes, vous obtenez 3 IOPS par Go (minimum de 100 IOPS). Voir https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html.Pour la plupart des charges de travail, vous souhaiterez que toutes vos IOPS disponibles soient disponibles pour tout système de fichiers, en fonction des besoins du moment. Il est donc logique de créer un grand volume EBS, de regrouper toutes vos IOPS dans un compartiment et de partitionner / LVM.
Exemple:
3 disques avec systèmes de fichiers / zones d'échange indépendants, chacun d'une taille de 100 Go. Chacun obtient 300 IOPS. Les performances sont limitées à 300 IOPS sur chaque disque.
1 disque, 300 Go en taille. Partitions LVM sur le disque de 100 Go chacune. Le disque obtient 900 IOPS. Toutes les partitions peuvent utiliser l’ensemble des 900 IOPS.
la source
Les volumes logiques sont plus faciles à créer, redimensionner, supprimer à la volée.
La question "à LVM ou non" a toujours la même réponse, cela dépend :)
Cela a du sens si vous avez besoin de flexibilité au niveau du (des) disque (s), de la / des partition (s).
Cela n'a pas de sens si vous n'avez pas besoin de la flexibilité fournie par LVM ou si vous ne souhaitez pas tirer parti des autres fonctionnalités de LVM.
la source
En fait, j'aime bien utiliser les LV car ils ne sont pas facilement accessibles depuis le serveur virtuel. Ainsi, ces fichiers ne peuvent pas être facilement détruits / déplacés par hasard.
Autres caractéristiques importantes des LV:
iostat
)Pour réduire la complexité, j'utilise un LV en tant que disque (pas en tant que partition). L'inconvénient est que je ne peux facilement redimensionner la dernière partition du "disque" - mais la disposition de mon disque standard-VM en tient compte (la dernière partition contient donc les données importantes de l'application).
la source
En plus de la flexibilité, les images de machines virtuelles basées sur LVM ont potentiellement moins de temps système, car elles ne sont pas accessibles via un système de fichiers. D'autre part, il vous empêche de déplacer facilement les images, comme vous le feriez avec un fichier. Pas impossible, mais un peu plus compliqué
la source
Ma propre expérience ....
Je voulais utiliser un volume logique (LV) avec LVM2 pour un système de fichiers ext4; pas en tant que disque, ou plutôt, simplement en tant que disque brut non partitionné pour le fs.
Ce que j’ai trouvé, c’est que le démarrage de la machine virtuelle serait arrêté au stade initrd; si je commentais l'
/etc/fstab
entrée, la machine démarrerait. Laisser l'/etc/fstab
entrée commentée n'était pas une solution avec laquelle j'étais heureux de vivre. J'ai donc créé une image disque normale (toujours un volume logique), puis partitionné avec une partition à l'aide defdisk
et créé le système de fichiers sur cette image. Pas d'autres problèmes.Les montures pertinentes dans ma
/etc/fstab
utilisaient UUID.J'ai pensé à utiliser un fichier ou un système de fichiers, mais j'ai décidé de ne pas le
Dans mon cas, j'utilise un système basé sur Debian Jessie, Devuan
la source
En fait, je n'utilise que LVM pour le stockage de sauvegarde au niveau de l'hyperviseur, les fichiers d'image étant destinés aux oiseaux. Je recommanderais également de les utiliser au niveau des invités. Il est vrai que vous ne bénéficierez pas de la mise en commun de sources de stockage disparates ou de l'augmentation de la capacité totale d'espace disque disponible (vous pouvez l'obtenir tout aussi facilement en redimensionnant ce que présente l'hyperviseur), mais vous allouez parfois trop à un seul système de fichiers. . Vous voudrez peut-être un moyen facile de prendre 1 Go de / opt et de le donner à / var (par exemple). Si vous créez des partitions régulières à l'intérieur de la machine virtuelle, le redimensionnement sera d'autant plus difficile.
la source
En plus des autres bonnes réponses, la seule bonne raison d'utiliser LVM dans une machine virtuelle est que vous souhaitez créer un environnement de test et acquérir une expérience pratique de LVM.
Vous pouvez consulter divers HOWTO et tutoriels, vous familiariser avec les tâches administratives courantes (et parfois moins communes) de LVM, configurer différents scénarios de défaillance et apprendre à les gérer.
c'est à dire comme un outil d'auto-apprentissage.
la source
Edit: Ce qui suit n’est plus vrai. L'utilisation de l'allocation dynamique fournie par LVM pour les images de disque de machine virtuelle présente probablement un intérêt situationnel;
Exécutez-vous des machines virtuelles de développement sur un ordinateur portable? alors vous êtes probablement mieux avec QCow2.
Vous gérez une batterie de machines virtuelles pouvant utiliser d’énormes quantités de stockage sur plusieurs disques? LVM est probablement un bon moyen de gérer ce stockage.
Une des raisons de ne pas utiliser LVM est que vous ne pouvez pas surcharger le stockage en utilisant LVM. Si vous créez 10 ordinateurs virtuels avec 100 Go de stockage, vous avez besoin de 1 000 Go de disque, même si 9 ordinateurs virtuels sur dix n'utiliseront jamais que 20 Go de leurs systèmes de fichiers. Les images de disque fragmenté ou les images au format qcow2 peuvent signifier que seul le stockage réellement utilisé par les invités doit leur être attribué.
Si cela vous est réellement utile dépend de ce dont vous avez besoin de votre stockage.
la source