Je ne sais pas trop comment formuler cette question (d'où le mauvais titre), alors laissez-moi vous donner un exemple de ce que j'essaie de faire.
Sur mon (ancien) hôte Xen, je peux présenter des systèmes de fichiers LVM directement à chaque invité. Ces systèmes de fichiers sont en fait créés et formatés sur l'hôte, et transmis directement à travers. Par exemple, pour un de mes hôtes utilisant un tmp séparé et des partitions de swap, je définis le stockage comme ceci:
disk = [
'phy: / dev / vg1 / guest1-swap, sda1, w',
'phy: / dev / vg1 / guest1-disk, sda2, w',
'phy: / dev / vg1 / guest1-tmp, sda3 , w ',
]
Ainsi, guest1-swap est formaté comme une partition de swap, guest1-disk et guest1-tmp sont formatés avec ext4, et du point de vue de l'invité, il les considère simplement comme trois partitions formatées sous / dev / sda.
(Cela peut sembler beaucoup de travail, mais il existe des scripts d'approvisionnement, tels que les impressionnants outils xen , qui automatisent à peu près tout).
Cela fournit des capacités vraiment utiles, dont deux m'intéressent particulièrement à trouver pour KVM:
Montez les systèmes de fichiers invités à partir du système d'exploitation hôte . Je peux faire un montage en lecture seule de n'importe quel système de fichiers invité à tout moment, même lorsque l'invité est en cours d'exécution. Cela a l'avantage secondaire de permettre à my de créer des instantanés LVM de tout volume existant pendant que l'invité est en cours d'exécution. De cette façon, je suis en mesure de sauvegarder de manière centralisée tous mes invités, en cours d'exécution, à partir de l'hôte.
Redimensionnement du volume en ligne . Étant donné que les volumes contiennent des systèmes de fichiers Linux standard, je peux utiliser une combinaison de lvextend et resize2fs pour développer mes systèmes de fichiers invités, à nouveau lorsqu'ils sont en ligne.
Je configure actuellement un hôte KVM qui remplacera l'hôte Xen. Semblable à la configuration Xen, je tire parti de LVM pour fournir un accès direct au système de fichiers, mais KVM / qemu se comporte différemment en ce qu'il crée toujours un fichier image pour les invités, même sur le volume LVM. Du point de vue de l'invité, il voit cela comme un disque non partitionné, et c'est à l'invité d'appliquer une étiquette de partition, puis de créer les partitions et les systèmes de fichiers.
D'un point de vue invité, c'est bien, mais d'un point de vue serveur / gestion, il semble être beaucoup moins flexible que la configuration Xen que j'ai décrite. Je suis encore nouveau sur KVM, donc je peux (espérons-le) manquer quelque chose.
J'ai rencontré ce problème en essayant de réimplémenter mon ancienne solution de sauvegarde sur l'hôte KVM et la commande de montage s'est étouffée lorsque j'ai essayé de monter l'un des systèmes de fichiers de l'invité. Donc, répondre à cela est ma préoccupation actuelle, mais cela m'a également préoccupé par le redimensionnement, car je suis sûr que ce problème se posera à un moment donné également.
Donc, voici mes questions:
Existe-t-il un moyen pour que kvm / qemu utilise les systèmes de fichiers de volume LVM directement comme je l'ai décrit pour ma configuration Xen? J'utilise libvirt pour la gestion si cela fait une différence.
Sinon, que puis-je faire pour obtenir des fonctionnalités de montage / sauvegarde similaires sous KVM? J'ai vu des discussions sur l'utilisation de libguestfs w / FUSE pour ce faire, mais est-ce vraiment la meilleure option? Je préfère m'en tenir à un montage de système de fichiers natif si possible.
Sinon, est-il possible de redimensionner un système de fichiers en ligne sous KVM? J'ai trouvé plusieurs discussions / howtos à ce sujet, mais les réponses semblent être partout sans solutions claires et certainement pas simples.
Désolé pour le long post, je voulais juste m'assurer qu'il était clair. Veuillez me faire savoir si je peux fournir d'autres informations qui pourraient être utiles. Dans l'attente de la discussion. :-)