Гид по технологиям

Конвертация виртуальной машины Xen в VMware

• 6 min read • Виртуализация • Обновлено 26 Nov 2025
Конвертация Xen VM в VMware: пошаговое руководство
Конвертация Xen VM в VMware: пошаговое руководство

Кому предназначено это руководство

Администраторам виртуальной инфраструктуры и инженерам, которые знакомы с Xen, RHEL/Fedora/CentOS и VMware. Предполагается опыт работы с ядрами Linux, управлением пакетами и консольными инструментами.

Основные варианты задачи

  • конвертация Xen PV/HVM гостя в образ VMDK для VMware;
  • подготовка гостя к полной виртуализации (замена паравиртуальных драйверов);
  • адаптация диска и загрузчика для ESX/ESXi.

Важно: перед началом создайте полную резервную копию виртуальной машины и снимите контрольную точку гипервизора.

Быстрая схема действий

  1. Подготовка — установите и загрузите стандартный (generic) ядро в госте Xen.
  2. Диск — с помощью qemu-img конвертируйте Xen-диск в VMDK.
  3. Проверка — запустите получённый VMDK в VMware Server/Workstation.
  4. ESX — измените контроллер SCSI на LSI, создайте initrd и поправьте fstab/grub, затем загрузитесь в ESX/ESXi.

Требования и подготовка

  • qemu (qemu-img)
  • VMware Server 1.xx или VMware Workstation для теста
  • VMware Converter для перехода в ESXi/ESX
  • Knoppix LiveCD или дистрибутивный первый CD для chroot/восстановления
  • Доступ к ISO/репозиторию с generic-ядром соответствующей версии и архитектуры

Перед началом:

  • резервная копия диска и конфигурации;
  • снимок/контрольная точка виртуальной машины;
  • записать текущую конфигурацию сети и fstab на бумаге или в текстовом файле.

Подготовка ядра (Kernel Step)

Кратко: гостю нужен стандартный (non-Xen) kernel, который поддерживает полную виртуализацию.

  1. СДЕЛАЙТЕ БЭКАП: крайне рискованная операция — сначала сделайте резервную копию виртуальной машины.

  2. Скачайте generic-ядро той же версии и архитектуры, что и текущее Xen-ядро. Подойдёт дистрибутивный CD/DVD или репозиторий.

  3. Установите пакет ядра через RPM/пакетный менеджер вашей системы.

  4. Измените /etc/modprobe.conf, чтобы заменить паравиртуальные драйверы на стандартные SCSI/сетевые:

alias eth0 xennet
alias scsi_hostadapter xenblk 

замените на:

alias eth0 pcnet32
alias scsi_hostadapter mptbase
alias scsi_hostadapter1 mptspi
alias scsi_hostadapter2 ata_piix 
  1. Отредактируйте /etc/inittab: раскомментируйте getty для tty1..6 и закомментируйте строку с консолью Xen. Пример:
1:2345:respawn:/sbin/mingetty --noclear tty1
2:2345:respawn:/sbin/mingetty
3:2345:respawn:/sbin/mingetty
4:2345:respawn:/sbin/mingetty
5:2345:respawn:/sbin/mingetty
6:2345:respawn:/sbin/mingetty

Важно: это однонаправленное действие. После замены модулей машина не сможет корректно запуститься на Xen-ядре; ожидается, что она будет загружаться в среде полной виртуализации.

Примечание: если вы хотите минимизировать риск, делайте эти изменения на копии диска или в тестовой гостевой ОС, а не на продовой машине.

Конвертация диска — qemu-img (Disk Step)

QEMU (qemu-img) используется для преобразования образа диска Xen в формат VMDK, принимаемый VMware.

  1. Установите qemu-img. Для RHEL5/Fedora/CentOS5 можно взять пакет из DAG-репозитория:

http://dag.wieers.com/rpm/packages/qemu/

  1. Выполните конвертацию:
qemu-img convert  -O vmdk 
  1. Создайте новую виртуальную машину в VMware Server / Workstation и подключите созданный VMDK (выбирайте «использовать существующий диск»).

  2. Запустите машину в VMware Server, чтобы она автоматически подтянула инициализацию устройств и прошла первичную конфигурацию. Это также позволит сформировать .VMX файл автоматически.

  3. Перенесите виртуальную машину на рабочую станцию Windows с установленным VMware Converter и используйте Converter для трансформации виртуальной машины в формат ESXi/ESX, если требуется.

Совет: выполняйте конвертацию и проверку в изолированной тестовой среде перед переносом в прод.

Подготовка к ESX/ESXi (ESX Step)

Перед установкой в ESX/ESXi нужно убедиться, что загрузчик и initrd соответствуют окружению хоста.

  1. В настройках виртуальной машины установите загрузку с CD-ROM первым устройством.

  2. Измените тип контроллера SCSI с BUS Logic на LSI Logic: Virtual Machine Settings > SCSI Controller 0 > Change type > LSI Logic.

  3. Загрузитесь с Knoppix LiveCD или с первого CD дистрибутива для доступа к файловой системе гостя.

  4. Смонтируйте диск и выполните chroot в систему гостя.

  5. Определите архитектуру диска и разделы командой fdisk -l и отредактируйте /etc/fstab согласно разметке.

  6. Постройте новый initrd (initramfs). Узнайте версию текущего ядра и выполните, например:

# mkinitrd -v -f /boot/initrd-2.6.18-1234.img 2.6.18-1234
  1. Отредактируйте /boot/grub/menu.lst так, чтобы загрузчик использовал созданный initrd и правильный kernel.

  2. Перезагрузите систему и проверьте логи загрузки. После успешной загрузки не забудьте перенастроить сетевые интерфейсы.

Ключевая проверка: убедитесь, что сетевой интерфейс использует правильный драйвер (pcnet32 или e1000) и что MAC-адрес/конфигурация IP корректно настроены для новой среды.

Проверка и отладка

  • Просмотрите /var/log/messages и dmesg на предмет ошибок драйверов;
  • Убедитесь, что fstab не содержит ссылок на устройства, которые поменяли имена;
  • Если система не грузится — используйте LiveCD и chroot для восстановления grub/initrd.

Критерии приёмки

  • VM загружается до уровня multiuser без паник ядра;
  • Сетевые интерфейсы подняты и доступны согласно ранее задокументированной конфигурации;
  • Доступ к приложению/сервисам подтверждён тестовым запросом;
  • Бэкап целостности и снапшоты сохранены.

Риски и способы смягчения

РискВероятностьВлияниеМитигирующие меры
Потеря данных при модификации ядраСредняяВысокоеДелать бэкап и работать с копией диска
Невозможность загрузки после смены модулейСредняяВысокоеТестировать на VM-копии, иметь LiveCD для восстановления
Несовместимость драйверов SCSI/сетевыхСредняяСреднееИспользовать LSI Logic и общепринятые драйверы (pcnet32/e1000)

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

Альтернативные подходы

  • Миграция приложений: вместо конвертации всей VM, разверните новую VM в VMware и перенесите приложения/данные.
  • Storage-based replication: реплицируйте диски на общий SAN и пересоздайте VM на стороне VMware.
  • Использовать коммерческие решения миграции от вендоров, если требуется поддержка и гарантия.

Когда этот метод не подходит:

  • Если гостевая система имеет специфичные паравиртуальные драйверы, тесно завязанные на Xen-API;
  • Если приложение критично к простоям и у вас нет тестовой среды.

Чек-лист перед переходом

  • Полный бэкап VM
  • Снимок/контрольная точка гипервизора
  • Доступ к generic-ядру и пакетам
  • Установлен qemu-img на машине-конвертере
  • Тестовая среда с VMware Server/Workstation
  • План отката и контакты команды поддержки

Роль-плюс-задачи (кто что делает)

  • Системный администратор: создание бэкапов, установка ядра, изменение конфигураций;
  • Инфраструктурный инженер: конвертация диска qemu-img, создание VM в VMware;
  • Сетевой инженер: проверка и перенастройка сетевых интерфейсов;
  • Тестировщик: верификация сервисов и нагрузочное тестирование.

Короткая методология миграции

  1. Подготовить — сохранить состояние, снять снапшот.
  2. Протестировать — выполнить все изменения на копии.
  3. Конвертировать — qemu-img -> VMDK.
  4. Проверить — запустить в VMware Server.
  5. Адаптировать — переключить SCSI, создать initrd, поправить grub/fstab.
  6. Перенести — VMware Converter в ESXi.
  7. Верифицировать — мониторинг и приемочные тесты.

Короткий глоссарий (1 строка)

  • Xen PV/HVM — режимы запуска гостя в Xen: паравиртуализация/гипервизорная виртуализация;
  • VMDK — формат виртуального диска VMware;
  • initrd/initramfs — начальный RAM-диск для загрузки ядра.

Отказ и откат

Если после миграции обнаружены критичные проблемы:

  • Откатитесь к снимку (snapshot) гипервизора или восстановите бэкап диска;
  • При невозможности загрузки используйте LiveCD и chroot для восстановления initrd/grub.

Тесты и критерии приёмки

  • Система проходит загрузку в multiuser режиме;
  • Все сетевые службы доступны и отвечают на тестовые запросы;
  • Логи не содержат критических ошибок драйверов.

Внешние ссылки и дополнительные материалы

  • Официальная документация и обсуждения по VMware:

http://communities.vmware.com/docs/DOC-8300


Краткое резюме

  • Всегда начинайте с бэкапа и теста на копии диска.
  • Процесс состоит из трёх ключевых шагов: ядро, диск, ESX-адаптация.
  • qemu-img — основной инструмент для преобразования образа в VMDK.
  • После конвертации обязательно проверяйте initrd, grub и конфигурацию сети.

Важно: каждый шаг может привести к некорректной загрузке, поэтому планируйте время и ресурсы на восстановление и тестирование.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро