Миграция виртуальных машин с Hyper-V на Proxmox VE
Миграция виртуальных машин с Hyper-V на Proxmox VE
— задача с нюансами. Главная сложность в том, что платформы используют разные форматы дисков: Hyper-V работает с VHD/VHDX, а Proxmox — с QCOW2 или RAW.
Самого простого пути, как "импортировать и запустить", не существует. Однако есть несколько проверенных методов. Ниже я приведу пошаговое руководство по самому надежному из них — ручной миграции, а также кратко расскажу об альтернативах.
📝 Подготовка: Ключевой этап для Windows ВМ
Этот этап критически важен для Windows-машин. Если его пропустить, виртуальная машина после переноса может не загрузиться или работать нестабильно.Установите VirtIO-драйверы: Это драйверы для виртуальных устройств (дисков, сетевых карт), которые использует Proxmox.
- Скачайте последний ISO-образ с драйверами с официального сайта Proxmox.
- Подключите этот ISO как DVD-привод к вашей работающей ВМ в Hyper-V.
- Запустите внутри ВМ файл virtio-win-gt-x64.msi из корня ISO и установите все компоненты.
Тот же ISO-образ в папке
guest-agent содержит установщик qemu-ga-x86_64.msi. Установите его.После установки проверьте в PowerShell статус:
Get-Service QEMU-GA. Должно быть Running.Удалите контрольные точки (Checkpoints): Все снимки состояния ВМ (файлы
.avhdx) должны быть удалены и объединены с основным диском. В противном случае, миграция, скорее всего, завершится ошибкой.
- Generation 1 использует Legacy BIOS.
- Generation 2 использует UEFI.
- Эта информация понадобится при создании новой ВМ в Proxmox.
⚙️ Основной метод: Ручная миграция (Самый надежный)
Этот метод дает полный контроль над процессом и подходит для любых ВМ.
Шаг 1: Экспорт ВМ из Hyper-V
- Откройте Hyper-V Manager, найдите нужную ВМ, нажмите на нее правой кнопкой мыши и выберите Export....
-
Укажите папку для экспорта. В этой папке будут все файлы ВМ, включая файл виртуального диска (
.vhdx).
Шаг 2: Копирование файла диска на хост Proxmox
Скопируйте файл .vhdx (обычно лежит в папке Virtual Hard Disks внутри экспортированной ВМ) на ваш сервер Proxmox. Можно использовать scp, rsync или WinSCP.
Шаг 3: Конвертация диска в формат QCOW2
- Войдите в оболочку (shell) вашего сервера Proxmox.
-
Выполните команду для конвертации. Укажите пути к исходному
.vhdxи целевому.qcow2файлу:
bash
qemu-img convert -O qcow2 /путь/к/файлу.vhdx /путь/к/новому-файлу.qcow2Важно: Для повышения производительности рекомендуется размещать файл
.qcow2в директории хранения Proxmox (например,/var/lib/vz/images/).
Шаг 4: Создание ВМ в Proxmox и подключение диска
- В веб-интерфейсе Proxmox нажмите Create VM.
- На вкладке General задайте имя и ID.
- На вкладке OS выберите Do not use any media.
-
На вкладке System выберите правильный
BIOS(seabios для Generation 1 или OVMF для Generation 2). - На вкладке Disks удалите предлагаемый по умолчанию диск (нажмите на корзину).
- Настройте CPU, Memory и Network, максимально приблизив их к настройкам исходной ВМ в Hyper-V.
- Важно: Убедитесь, что на последнем шаге НЕ отмечена галочка
Start after created. Нажмите Finish. -
Теперь подключите сконвертированный диск к новой ВМ. Выполните в shell Proxmox команду (замените
<ID_ВМ>на ID созданной ВМ, а<путь_к_файлу.qcow2>— на фактический путь):
qm set <ID_ВМ> --scsi0 local-lvm:0,import-from=<путь_к_файлу.qcow2>
Или, если файл уже лежит в хранилище, можно сначала выполнить qm rescan, а затем добавить диск через веб-интерфейс.
Шаг 5: Первый запуск и установка драйверов
Запустите ВМ. Windows должна обнаружить новое оборудование и попросить драйверы. Укажите ей тот же ISO-образ с VirtIO-драйверами, который вы использовали при подготовке.
🛠️ Альтернативные методы
- Встроенный мастер импорта Proxmox: Появился в новых версиях. Позволяет импортировать ВМ напрямую из расшаренной по SMB папки с VHDX-файлами через веб-интерфейс Proxmox.
- Скрипт
hv2pve: Существует инструмент на GitHub, который автоматизирует процесс. Он использует PowerShell для экспорта ВМ из Hyper-V и переносит их в Proxmox. Требует настройки и подходит для пакетной миграции. - Сторонние решения: Существуют коммерческие продукты (например, Vinchin Backup & Recovery, StarWind V2V Converter), которые предлагают более простые и часто графические интерфейсы для миграции.
💎 Заключение и важные советы
Миграция с Hyper-V на Proxmox — процесс, требующий внимания, но вполне выполнимый.
- Планируйте "холодную" миграцию: Описанный выше ручной метод требует, чтобы виртуальная машина была выключена. Это гарантирует целостность данных.
- Всегда делайте резервную копию: Перед началом любых манипуляций создайте полную резервную копию вашей ВМ в Hyper-V. Это позволит вам откатиться назад в случае ошибки.
- Проверяйте на тестовой ВМ: Прежде чем мигрировать критические сервисы, потренируйтесь на какой-нибудь тестовой машине.