Я не совсем уверен, как сформулировать этот вопрос (отсюда и плохое название), поэтому позвольте мне привести пример того, что я пытаюсь сделать.
На моем (старом) хосте Xen я могу представить файловые системы LVM непосредственно каждому гостю. Эти файловые системы фактически создаются и форматируются на хосте и передаются напрямую. Например, для одного из моих хостов, использующих отдельные разделы tmp и swap, я определяю хранилище следующим образом:
диск = [
'phy: / dev / vg1 / guest1-swap, sda1, w',
'phy: / dev / vg1 / guest1-disk, sda2, w',
'phy: / dev / vg1 / guest1-tmp, sda3 , ш ',
]
Итак, guest1-swap отформатирован как раздел подкачки, guest1-disk и guest1-tmp отформатированы с ext4, и с точки зрения гостя он просто видит их как три отформатированных раздела в / dev / sda.
(Это может показаться большой работой, но есть сценарии инициализации, такие как удивительные инструменты xen , которые автоматизировали почти все).
Это обеспечивает некоторые действительно полезные возможности, две из которых я особенно заинтересован в выяснении для KVM:
Смонтируйте гостевые файловые системы с хост-ОС . Я могу выполнить монтирование только для чтения любой гостевой файловой системы в любое время, даже когда гость работает. Это имеет побочное преимущество, позволяя my создавать снимки LVM любого существующего тома во время работы гостя. Таким образом, я могу централизованно создавать резервные копии всех моих гостей во время работы с хоста.
Изменение громкости онлайн . Поскольку тома содержат стандартные файловые системы Linux, я могу использовать комбинацию lvextend и resize2fs для расширения моих гостевых файловых систем, когда они находятся в сети.
В настоящее время я настраиваю хост KVM, который заменит хост Xen. Подобно настройке Xen, я использую LVM для обеспечения прямого доступа к файловой системе, но KVM / qemu ведет себя по-другому, так как всегда создает файл образа для гостей, даже на томе LVM. С точки зрения гостя, он видит это как неразмеченный диск, и гость может применить метку раздела, а затем создать разделы и файловые системы.
С точки зрения гостя это нормально, но с точки зрения сервера / управления это кажется гораздо менее гибким, чем описанная мной установка Xen. Я все еще новичок в KVM, поэтому я могу (надеюсь) что-то упустить.
Я столкнулся с этой проблемой, когда пытался повторно внедрить свое прежнее решение для резервного копирования на хосте KVM, и команда mount прервалась, когда я попытался смонтировать одну из файловых систем гостя. Таким образом, решение этой проблемы является моей текущей заботой, но это также заставило меня беспокоиться об изменении размера, потому что я уверен, что эта проблема также возникнет в какой-то момент.
Итак, вот мои вопросы:
Есть ли способ заставить kvm / qemu напрямую использовать файловые системы томов LVM, как я описал для моей установки Xen? Я использую libvirt для управления, если это имеет значение.
Если нет, что я могу сделать, чтобы получить аналогичные функции монтирования / резервного копирования в KVM? Я видел дискуссии об использовании libguestfs с FUSE для этого, но действительно ли это лучший вариант? Я бы предпочел придерживаться нативного монтирования файловой системы, если это вообще возможно.
Также, если нет, возможно ли изменить размер файловой системы в режиме онлайн под KVM? Я нашел несколько обсуждений / статей об этом, но ответы, кажется, повсюду без четких и определенно простых решений.
Извините за длинный пост, просто хотел убедиться, что это было ясно. Пожалуйста, дайте мне знать, если я могу предоставить любую другую информацию, которая будет полезна. С нетерпением жду обсуждения. :-)