Миграция с VMware на Proxmox- пошаговая инструкция по переносу виртуальных машин

Проблема

Уход зарубежных вендоров и ужесточение лицензионной политики заставляют системных администраторов искать альтернативы VMware vSphere. Proxmox VE открытая платформа виртуализации на базе KVM и LXC становится всё популярнее в корпоративной среде, но сам процесс переезда вызывает массу вопросов. Перенести десятки и сотни виртуальных машин с ESXi на Proxmox без потери данных, с минимизацией простоя и без покупки дорогих средств миграции задача, требующая чёткой методики. Неправильный подход грозит несовместимостью дисковых форматов, сбоем загрузки ВМ после конвертации и потерей сетевых настроек. Миграция с VMware на Proxmox должна быть тщательно спланирована, и в этой статье мы разберём проверенный алгоритм ручного переноса, опираясь на официальные источники и документацию сообщества.

Решение

Будем использовать встроенную утилиту qemu-img для конвертации виртуальных дисков из формата VMDK в QCOW2, а затем создавать и запускать виртуальные машины на Proxmox вручную, что гарантирует контроль над каждым этапом. Такой подход описан в официальном руководстве Proxmox VE Migration Guide и в документации QEMU по работе с образами дисков QEMU Disk Images. Он универсален для любых версий ESXi (6.5, 6.7, 7.0, 8.0) и Proxmox VE (7.x и 8.x). Если же нужна «бесшовная» миграция с минимальным простоем, рассмотрим гибридный подход: синхронизация дисков и живая миграция через резервную копию. В любом случае, предварительное планирование и тестирование на копии данных обязательны.

Пошаговая инструкция

Шаг 1. Предварительные действия на стороне VMware

Перед началом миграции подготовьте виртуальную машину.

  1. Удалите VMware Tools из гостевой ОС (особенно на Windows). После миграции на KVM рекомендуется установить агент qemu-guest-agent на Linux и virtio-драйверы на Windows. Для Windows также замените драйвер контроллера SCSI на стандартный Intel AHCI через утилиту MergeIDE или вручную, иначе ВМ не загрузится после переноса.
  2. Выключите виртуальную машину корректно из гостевой ОС.
  3. Экспортируйте диски—  скачайте VMDK-файлы. Есть несколько способов:
    • Скачать через vSphere Client (Datastore Browser) прямо на рабочую станцию администратора.
    • Скопировать через SCP на промежуточный Linux-сервер: scp root@esxi:/vmfs/volumes/datastore1/VM/VM.vmdk /tmp/ (требуется включить SSH на ESXi).
  4. Задокументируйте конфигурацию исходной ВМ: количество CPU, объём памяти, порядок загрузки, MAC-адреса сетевых адаптеров. В vSphere это можно выгрузить через PowerCLI:

powershell

Get-VM -Name "VMName" | Select-Object Name,MemoryMB,NumCpu,NetworkAdapters

Шаг 2. Конвертация диска VMDK в формат QCOW2

На сервере Proxmox (или на любом Linux-хосте с установленным пакетом qemu-utils) выполните конвертацию:

  1. Установите необходимый пакет:
  2. apt install qemu-utils -y
  3. Переместите файл VMDK на сервер Proxmox через SCP или временную шару Samba/NFS. Предположим, диск находится в /mnt/migration/disk.vmdk.
  4. Выполните конвертацию:
  5. qemu-img convert -f vmdk -O qcow2 /mnt/migration/disk.vmdk /mnt/migration/disk.qcow2
  6. Ключ -f vmdk указывает исходный формат, -O qcow2 — целевой. Процесс может занять от нескольких минут до часов в зависимости от размера диска. Для ускорения можно использовать сжатие:
  7. qemu-img convert -f vmdk -O qcow2 -c /mnt/migration/disk.vmdk /mnt/migration/disk.qcow2
  8. Для тонких дисков (thin provision): если хотите сохранить тонкое выделение, используйте опцию -o preallocation=metadata или предварительно преобразуйте VMDK в raw и потом в qcow2 с опциями тонкого провижининга. Официальная документация: qemu-img invocation.

Шаг 3. Создание виртуальной машины на Proxmox

Теперь создадим новую ВМ, воссоздав конфигурацию старой.

  1. Зайдите в веб-интерфейс Proxmox VE, выберите целевой узел, нажмите Создать ВМ (Create VM).
  2. На вкладке General задайте имя и ID.
  3. OS: выберите «Do not use any media» (образ загрузочного диска уже будет прикреплён). Гостевая ОС — соответствующая вашей системе (Linux/Windows версии).
  4. System: оставьте графическую карту «Default», SCSI-контроллер — VirtIO SCSI (рекомендуется для производительности). Если на исходной ВМ был SATA-диск и вы не меняли драйверы на virtio, временно выберите SATA, чтобы система загрузилась; позже после установки VirtIO-драйверов можно переключить.
  5. Hard Disk: на этом этапе добавьте импортированный диск:
    • Удалите созданный по умолчанию пустой диск (кнопка Detach → Remove).
    • В командной строке хоста Proxmox переместите qcow2-файл в хранилище ВМ:
    • mv /mnt/migration/disk.qcow2 /var/lib/vz/images/<VMID>/vm-<VMID>-disk-0.qcow2
    • Затем в веб-интерфейсе на вкладке Hardware выберите Add → Hard Disk, выберите SCSI (или SATA) и укажите путь к существующему диску.
  6. CPU и Memory: задайте значения, аналогичные исходной ВМ.
  7. Network: добавьте сетевой адаптер с моделью VirtIO (для Linux) или Intel E1000 (для Windows без драйверов VirtIO). Скопируйте MAC-адрес исходной ВМ, если внутри гостевой ОС настроены статические IP, чтобы избежать смены сетевых параметров.
  8. Options: проверьте порядок загрузки: первым должен стоять ваш диск. Опцию QEMU Agent включите, если планируете установить агент.
  9. Нажмите Finish и запустите ВМ. Проверьте, загружается ли ОС.

Шаг 4. Пост-миграционные действия

После успешной загрузки гостевой ОС:

  1. Установите гостевые агенты и драйверы:
    • Linux: apt install qemu-guest-agent -y.
    • Windows: установите VirtIO Drivers ISO, загрузив ISO-образ из хранилища и прикрепив его к виртуальному CD-ROM. Установите драйверы для сети, SCSI-контроллера, Balloon-драйвер и qemu-ga. После этого можно переключить SCSI-контроллер и сетевой адаптер на VirtIO в свойствах ВМ (потребуется перезагрузка).
  2. Активируйте QEMU Agent в свойствах ВМ (Options → QEMU Agent → Enabled). Это позволит корректно завершать работу и получать информацию из гостевой ОС.
  3. Измените IP-адрес, если сеть изменилась. Проверьте доступность ВМ по сети.
  4. Создайте резервную копию средствами Proxmox (Datacenter → Backup) сразу после успешной миграции.

Шаг 5. Альтернативный метод: импорт OVF/OVA

Если экспортировать ВМ из VMware в формат OVF (Open Virtualization Format), можно импортировать её на Proxmox с помощью утилиты qm importovf.

  1. Экспортируйте ВМ в OVF/OVA через vSphere Client (пункт «Export OVF Template»).
  2. Перенесите файлы .ovf и .vmdk (или единый .ova) на сервер Proxmox.
  3. Выполните команду импорта:
  4. qm importovf <VMID> /path/to/file.ovf <target_storage>
  5. Где <target_storage> — имя хранилища (local-lvmlocal-zfs и т.д.). Подробнее: Proxmox VE Administration Guide — OVF.

Этот метод сохраняет конфигурацию, но всё равно требует пост-миграционной установки драйверов.

Устранение распространённых проблем

СимптомВероятная причинаРешение
ВМ не загружается после конвертации, ошибка «Boot device not found»Неправильный порядок загрузки или SCSI-контроллер не поддерживается без драйверовПереключите тип контроллера на SATA/IDE на время первой загрузки. Установите VirtIO-драйверы, затем переключите обратно.
Windows вылетает в BSOD (0x0000007B)Драйвер контроллера VMware несовместим с KVMПеред миграцией замените драйвер SCSI на стандартный AHCI через утилиту MergeIDE, либо в Proxmox временно выберите IDE-контроллер для первой загрузки.
Сетевая карта не определяется (Windows)Отсутствуют драйверы VirtIO netУстановите VirtIO Drivers ISO (добавьте CD-ROM с драйверами) и укажите драйвер вручную в Диспетчере устройств.
Медленная производительность дискаИспользуется эмуляция SATA вместо VirtIO SCSIУстановите VirtIO-драйверы в гостевой ОС и переключите тип контроллера на VirtIO SCSI.
Ошибка «TASK ERROR: storage does not support this format» при импортеНеправильно указано хранилище или формат не поддерживаетсяДля LVM-Thin или ZFS используйте чистый импорт через qm disk import, а не простое копирование. Например: qm disk import <VMID> disk.qcow2 local-lvm.
После миграции изменился MAC-адрес сети, потерян сетевой доступProxmox сгенерировал новый MACПеред первым запуском ВМ вручную задайте оригинальный MAC-адрес в свойствах сетевого адаптера.

Миграция с VMware на Proxmox это проект, который при правильном подходе выполняется без потери данных и с минимальным временем простоя.

Ключевые моменты: подготовка ВМ на стороне VMware (удаление VMware Tools, замена драйверов), аккуратная конвертация дисков через qemu-img и пост-миграционная установка VirtIO-драйверов.

Использование OVF-экспорта упрощает процесс для сложных конфигураций. После переноса критически важно сразу настроить резервное копирование и проверить стабильность работы.

Опыт показывает, что большинство проблем с загрузкой решается временным переключением контроллера диска на SATA/IDE до момента установки VirtIO-драйверов. Следуя этой инструкции, вы сможете безболезненно перевести парк виртуальных машин с VMware на открытую платформу Proxmox.

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Популярные
Новые Старые

0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x
Menu