Product SiteDocumentation Site

42.3. Миграция ВМ из внешнего гипервизора

Экспорт ВМ из внешнего гипервизора обычно заключается в переносе одного или нескольких образов дисков с файлом конфигурации, описывающим настройки ВМ (ОЗУ, количество ядер). Образы дисков могут быть в формате vmdk (VMware или VirtualBox), или qcow2 (KVM). Наиболее популярным форматом файла конфигурации для экспорта ВМ является стандарт OVF.

Примечание

Для ВМ Windows необходимо также установить паравиртуализированные драйверы Windows.

42.3.1. Миграция KVM ВМ в PVE

В данном разделе рассмотрен процесс миграции ВМ из OpenNebula в PVE.
Выключить ВМ на хосте источнике. Найти путь до образа жесткого диска, который используется в ВМ (в данной команде 14 — id образа диска ВМ):
$ oneimage show 14
IMAGE 14 INFORMATION
ID             : 14
NAME           : ALT Linux p9
USER           : oneadmin
GROUP          : oneadmin
LOCK           : None
DATASTORE      : default
TYPE           : OS
REGISTER TIME  : 04/30 11:00:42
PERSISTENT     : Yes
SOURCE         : /var/lib/one//datastores/1/f811a893808a9d8f5bf1c029b3c7e905
FSTYPE         : save_as
SIZE           : 12G
STATE          : used
RUNNING_VMS    : 1

PERMISSIONS
OWNER          : um-
GROUP          : ---
OTHER          : ---

IMAGE TEMPLATE
DEV_PREFIX="vd"
DRIVER="qcow2"
SAVED_DISK_ID="0"
SAVED_IMAGE_ID="7"
SAVED_VM_ID="46"
SAVE_AS_HOT="YES"
где /var/lib/one//datastores/1/f811a893808a9d8f5bf1c029b3c7e905 — адрес образа жёсткого диска ВМ.
Скопировать данный образ на хост назначения с PVE.

Примечание

В OpenNebula любой диск ВМ можно экспортировать в новый образ (если ВМ находится в состояниях RUNNING, POWEROFF или SUSPENDED):
$ onevm disk-saveas <vmid> <diskid> <img_name>  [--type type --snapshot snapshot]
где --type <type> — тип нового образа (по умолчанию raw); --snapshot <snapshot_id> — снимок диска, который будет использован в качестве источника нового образа (по умолчанию текущее состояние диска).
Экспорт диска ВМ:
$ onevm disk-saveas 125 0 test.qcow2
Image ID: 44
Информация об образе диска ВМ:
$ oneimage show 44
MAGE 44 INFORMATION
ID             : 44
NAME           : test.qcow2
USER           : oneadmin
GROUP          : oneadmin
LOCK           : None
DATASTORE      : default
TYPE           : OS
REGISTER TIME  : 07/12 21:34:42
PERSISTENT     : No
SOURCE         : /var/lib/one//datastores/1/9d6336a88d6ab62ea1dce65d81e55881
FSTYPE         : save_as
SIZE           : 12G
STATE          : rdy
RUNNING_VMS    : 0

PERMISSIONS
OWNER          : um-
GROUP          : ---
OTHER          : ---

IMAGE TEMPLATE
DEV_PREFIX="vd"
DRIVER="qcow2"
SAVED_DISK_ID="0"
SAVED_IMAGE_ID="14"
SAVED_VM_ID="125"
SAVE_AS_HOT="YES"

VIRTUAL MACHINES
Информация о диске:
$ qemu-img info /var/lib/one//datastores/1/9d6336a88d6ab62ea1dce65d81e55881
image: /var/lib/one//datastores/1/9d6336a88d6ab62ea1dce65d81e55881
file format: qcow2
virtual size: 12 GiB (12884901888 bytes)
disk size: 3.52 GiB
cluster_size: 65536
Format specific information:
    compat: 1.1
    compression type: zlib
    lazy refcounts: false
    refcount bits: 16
    corrupt: false
    extended l2: false
На хосте назначения подключить образ диска к ВМ (рассмотрено подключение на основе Directory Storage), выполнив следующие действия:
  1. Создать новую ВМ в веб-интерфейсе PVE или командой:
    # qm create 120 --bootdisk scsi0 --net0 virtio,bridge=vmbr0 --scsihw virtio-scsi-pci
    
  2. Чтобы использовать в PVE образ диска в формате qcow2 (полученный из другой системы KVM, либо преобразованный из другого формата), его необходимо импортировать. Команда импорта:
    # qm importdisk <vmid> <source> <storage> [OPTIONS]
    
    Импорт диска f811a893808a9d8f5bf1c029b3c7e905 в хранилище local, для ВМ с ID 120 (подразумевается, что образ импортируемого диска находится в каталоге, из которого происходит выполнение команды):
    # qm importdisk 120 f811a893808a9d8f5bf1c029b3c7e905 local --format qcow2
    importing disk 'f811a893808a9d8f5bf1c029b3c7e905' to VM 120 ...
    …
    Successfully imported disk as 'unused0:local:120/vm-120-disk-0.qcow2'
    
  3. Привязать диск к ВМ.
    В веб-интерфейсе PVE: перейти на вкладку Оборудование, созданной ВМ. В списке устройств будет показан неиспользуемый жесткий диск, выбрать его, выбрать режим SCSI и нажать кнопку Добавить:
    Добавление диска к ВМ
    В командной строке:
    # qm set 120 --scsi0 local:120/vm-120-disk-0.qcow2
    update VM 120: -scsi0 local:120/vm-120-disk-0.qcow2
    
Донастроить параметры процессора, памяти, сетевых интерфейсов, порядок загрузки. Включить ВМ.