Proxmox. Конвертация виртуальных машин.

Конвертация виртуальных машин в Proxmox.

Сегодня я решил описать процесс конвертации виртуальных машин VMware в Proxmox. Будут описаны шаги по конвертации виртуальных машин с ОС Windows и Linux.

Подготовка к конвертации.

Для конвертации нам потребуется сделать так, чтобы диск конвертируемой виртуальной машины был доступен хосту с Proxmox. Это можно осуществить несколькими способами: скопировать файл диска ВМ на хост Proxmox или подключив общее хранилище, доступное и хосту Proxmox и хосту VMware. Я буду использовать способ с общим хранилищем, подключенным к хостам по NFS. Переместим ВМ, которую собираемся конвертировать, на общее хранилище и выключим ее(можно делать и в обратной последовательности).

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

Создадим на хосте Proxmox виртуальную машину с необходимыми настройками и ресурсами. Создайте два жестких диска, один IDE для системного диска, второй SCSI или Virtio, в зависимости от того, какой тип планируете использовать. Диск IDE должен присутствовать обязательно, иначе виртуальная машина не загрузится. Вот такая конфигурация получилась у меня:

Конфигурация ВМ

Теперь переходим непосредственно к конвертации. В консоли хоста Proxmox выполним команду:

В команде, естественно, укажите свои параметры. 

Запустится процесс конвертации диска.

Конвертация диска

После завершения конвертации нужно изменить конфиг виртуальной машины. Для этого открываем в редакторе файл конфигурации ВМ(в нашем случае ВМ имеет ID 101):

Если узел Proxmox находится в кластере, путь до файла конфигурации будет выглядеть так:

Файл конфигурации ВМ

В строке ide0 укажем наш сконвертированный диск:

Измененный файл конфига

Сохраните изменения. Теперь можно запустить виртуальную машину.

Настройка ВМ после конвертации.

После конвертации необходимо проделать следующие действия: удалить VMtools(если они установлены) и установить необходимые драйвера.

Удаление VMtools производится через стандартную оснастку «Программы и компоненты».

Удаление VMtools

Перезагрузку после удаления можно отложить.

Для установки драйверов потребуется скачать и подключить к ВМ образ с драйверами. Скачать его можно из официального источника..

После подключения образа с драйверами, перейдите в него и запустите мастер установки драйверов, выбрав нужную разрядность:

Еще:  Как установить vmtools на разные операционные системы

Установка драйверов.

Это самый простой способ установить необходимые драйвера. Также, не лишним будет установить гостевой агент из папки guest-agent.

Теперь нам нужно переключить системный диск с устаревшего контроллера IDE на Virtio. Для этого выключаем виртуальную машину и вносим изменения в конфиг файл, который мы уже редактировали. Приведем его к следующему виду:

virtio

Обратите внимание, что нужно указать первым загрузочным устройством наш системный диск. (Думаю, что загрузочный диск, всё же, лучше разместить на шине 0, поэтому нужно заменить в файле конфигурации virtio1 на virtio0).

Диски, созданные при создании ВМ, теперь можно удалить.

После этого можно включать виртуальную машину и использовать по назначению.

Конвертация виртуальной машины с Linux(CentOS).

Перед конвертацией ВМ удалим VMtools

      Для удаления open-vm-tools выполните команду:

     Для удаления стандартных VMware Tools запустите скрипт:

и установим qemu-agent.

Можно добавить необходимые драйвера.

Выключаем виртуальную машину. Переместите ее на диск, доступный Proxmox(если вы еще это не сделали).

Создадим на Proxmox виртуальную машину с нужными параметрами и диском небольшого объема(он будет удален впоследствии). Обратите внимание, если ВМ использовала UEFI, то и создаваемая ВМ должна быть такой же. Запомните ID созданной машины.

VM config

Конвертируем диск ВМ.

Подключаемся к консоли Proxmox и выполняем команду для конвертирования диска(911 — ID созданной ВМ):

После завершения конвертации открываем файл конфигурации ВМ

и вместо диска, который мы создали при создании ВМ, указываем наш сконвертированный диск.

VM config

Настройка загрузки ВМ.

После этого запускаем виртуальную машину и грузимся в режиме восстановления(не забыв запомнить версию используемого ядра. У меня это 3.10.0-1062.1.2.el7.x86_64).

boot rescue mode

После логина вводим команду(укажите свою версию ядра):

Посмотреть доступные версии ядра можно с помощью команды:

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

Ошибка при загрузке.

Если при включении ВМ вы видите такую картину:

Еще:  Proxmox настройка сети(bond, trunk, VLANs)

boot failed

то нужно зайти в БИОС ВМ, нажав клавишу F2 при загрузке виртуальной машины. Выбираем пункт Boot Maintenance Manager=>Boot Options=>Add Boot Options.  Далее:

add boot option volume

После выбираем EFI, потом пункт с названием вашей ОС(в нашем случае CentOS), выбираем из списка grubx64.efi

select grubx64.efi

Даем ему описание, подтверждаем изменения

commit changes

Потом изменяем Boot Order, ставим нашу опцию на первое место.

boot order

Сохраняем изменения и перезагружаем ВМ. Теперь можно приступать к действиям, описанным выше.

Настройка сети. 

После конвертации необходимо заново настроить сеть на виртуалке, т.к. сетевой адаптер сменился.

ip a

Раньше интерфейс на ВМ назывался ens160, а теперь eth0. Убедиться в этом можно, посмотрев названия интерфейсов:

Можно скопировать настройки старого интерфейса:

После этого откройте скопированный файл в редакторе и измените там нужные параметры(имя, hardware address, device), и включите интерфейс:

На этом конвертация виртуальной машины завершена. Машина готова к использованию.

Конвертация ВМ из Proxmox в VMware.

Несколько слов об обратной конвертации. Я опишу вариант для ВМ с CentOS. Для конвертации ВМ из Proxmox нужно проделать аналогичные действия. Только при конвертации указать выходным форматом диска формат vmdk, используемый VMware.

Переместите диск на хранилище хоста esxi.

Создайте на хосте esxi виртуальную машину с нужными параметрами. Можно создать диск размером 1GB с типом адаптера LSI Logic Parallel scsi controller. После этого добавьте сконвертированный диск в ВМ, выбрав на этапе добавления опцию Add existing disk. Этот диск будет добавлен с типом шины IDE. Подключитесь к хосту esxi по ssh.

Откройте в редакторе файл сконвертированного диска /vmfs/volumes/datastore/disk.vmdk.

Измените строчку ddb.adapterType = »ide» на ddb.adapterType = »lsilogic». Сохраните файл.

После этого удалите диск из конфигурации ВМ(не с диска!!!) Снова добавьте этот диск в ВМ, только уже с контроллером scsi. Если сконвертированный диск будет загрузочным, то переместите его на шину scsi 0:0(перед этим убрав оттуда или удалив совсем диск размером 1GB).

Теперь проделайте действия, описанные ранее.

Статья основана на моем личном опыте конвертации ВМ в Proxmox. Замечания, предложения, дополнения принимаются в комментариях))

Поделиться ссылкой:

Обновлено: 10.04.2021 — 15:43

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.