Назад | Перейти на главную страницу

клонирование гостевой ОС kvm в файл vmdk

У меня есть производственная среда, в которой у меня есть 4 гостевые ОС, работающие на сервере Ubuntu, который использует kvm. Эти ОС находятся в настройке на основе LVM. Я хочу, чтобы эти виртуальные машины также были в формате vmdk. Где люди будут проводить эксперименты с этими виртуальными машинами, так что это в среде vmware (или это может быть Xen тоже) будет отличаться от kvm server. Я не буду иметь никакого контроля над этой другой средой, поэтому я хочу предоставить людям образы vmdk этих виртуальных машин.

Производственные виртуальные машины по-прежнему будут работать на сервере kvm, но виртуальные машины, на которых будут проводиться эксперименты, будут иметь тип vmdk. (Vmdk является ограничением)

Вот результат lvscan

 ACTIVE            '/dev/abcd/lvm1' [100.00 GiB] inherit
  ACTIVE            '/dev/abcd/lvm2' [150.00 GiB] inherit
  ACTIVE            '/dev/abcd/lvm3' [50.00 GiB] inherit
  ACTIVE            '/dev/abcd/lvm4' [100.00 GiB] inherit

Теперь предположим, что / dev / abcd / lvm4 - это виртуальная машина, с которой я собираюсь начать этот эксперимент.

Итак, следующий способ правильного перехода на сервер 1 (где работает kvm)

Шаг 1 qemu-img create -f vmdk myos.vmdk 10G

После этого шага, как мне продолжить заполнение образа vmdk, который я только что создал, всем содержимым, которое находится в lvm? Есть идеи по этой части?

dd if=/dev/abcd/lvm1 of=myos.vmdk

если myos.vmdk не в порядке, сделайте это

dd if=/dev/abcd/lvm1 of=my_raw_disk.img
qemu-img convert my_raw_disk.img myos.vmdk

может быть несколько вариантов, которые вы захотите при преобразовании, просто посмотрите на man qemu-img.

пс:

будет хорошо, если вы сможете остановить vms во время этой операции, в противном случае вы можете попробовать как есть, но ... вы можете сначала посмотреть снимки lvm.