Перейти к основному содержанию

ESXi 7 — экспорт и импорт виртуальной машины через OVF шаблон

VMware

Сегодня выполним экспорт виртуальной машины в ESXi 7 в шаблон OVF. Затем выполним импорт виртуальной машины уже с другим именем на тот же гипервизор из шаблона OVF.

OVF (Open Virtualization Format) — открытый стандарт для хранения и распространения виртуальных машин. Стандарт описывает открытый, переносимый, расширяемый формат для распространения образов виртуальных машин. Стандарт OVF не привязан к какой-либо реализации гипервизора или аппаратной архитектуре.

В ESXi 7 экспорт в OVF шаблон выполняется для выключенной виртуальной машины.

Для чего это может понадобиться?

  • Копирование виртуальной машины с одного гипервизора на другой.
  • Резервное копирование и восстановление виртуальной машины.
  • Экзотический способ создания копии виртуальной машины.
  • Создание шаблона настроенной виртуальной машины для быстрого развёртывания.

Подготовка к экспорту OVF

Перед тем как приступить непосредственное к экспорту, нужно подготовиться.

Удалите снапшоты виртуальной машины, это уменьшит размер экспортируемых файлов. Убедитесь, что на вашем диске достаточно свободного места. Скорее всего размер скачиваемых файлов будет меньше выделенного места под виртуальную машину, но узнать это можно опытным путём. Исходя из размера виртуальной машины, пропускной способности сети и скорости дисков выделите время на простой.

ovf

Если вы собираетесь сохранять данные не на системный диск, настройте в браузере директорию по умолчанию для хранения скачанных файлов. Убедитесь что в браузере разрешены всплывающие окна.

Отключите антивирусы и лишние программы, нагружающие ваш компьютер.

Процесс экспорта может быть долгим. В ESXi 7 сессия пользователя автоматически завершается, если он не был активен в ней более 15 минут, отключите этот механизм. Выберите свою учетную запись в правом верхнем углу веб-интерфейса → Settings → Application timeout. Отключите (off).

ovf

Извлеките подключённые образы CD-дисков или дискет.

Выключите виртуальную машину.

Экспорт OVF шаблона

Правой кнопкой на виртуальную машину, Export.

ovf

Выберите файлы для экспорта, по умолчанию выбираются необходимые файлы. Файл NVRAM хранит настройки BIOS, если вы их меняли, выделите его тоже, я не буду его скачивать, что позже привнесёт в нашу операцию некоторые трудности, которые мы с успехом преодолеем. Export.

vmware

Каждый файл будет скачиваться отдельно.

ovf

Я скачал три файла, давайте посмотрим что они из себя представляют. Самый большой по объёму файл VMDK, это диск виртуальной машины. Дисков может быть несколько.

Как видим, размер диска чуть меньше 7 ГБ, хотя размер диска на виртуальной машине 20 ГБ. Лишние нули в конце отброшены.

ovf

MF файл хранит хэш-суммы дисков.

ovf

OVF — это конфигурационный файл виртуальной машины в формате XML, в котором описывается её структура.

ovf

Экспорт OVF шаблона выполнен.

Импорт OVF шаблона

Теперь выполним обратную операцию, импортируем OVF шаблон и сделаем виртуальную машину уже с другим именем.

Процесс импорта может быть долгим. В ESXi 7 сессия пользователя автоматически завершается, если он не был активен в ней более 15 минут, отключите этот механизм. Выберите свою учетную запись в правом верхнем углу веб-интерфейса → Settings → Application timeout. Отключите (off).

Переходим к хосту → Actions → Create/Register VM.

ovf

Выбираем Deploy a virtual machine from an OVF or OVA file. Next.

ovf

Указываем новое имя виртуальной машины. Кликаем на поле Click to select files or drag/drop.

ovf

Выбираем все файлы, которые мы ранее экспортировали. Открыть.

ovf

Список отобразился не полный, потому как из MF файла нужна только хэш-сумма. Next.

ovf

Выбираем хранилище. Я для разнообразия выбираю второе хранилища, не то из которого выполнял экспорт. Можно было бы даже импортировать и на другой гипервизор, но у меня он один. Next.

ovf

Выбираем сеть, тип диска Thin или Thick, выбираем, включать ли виртуальную машину после импорта.

  • Thick provision lazy zeroed — толстый ленивый (по умолчанию). При создании занимает выделенный объём, но нулями не заполняет сразу, а по мере записи. Быстро создаёт большие винты, но потом тратит ресурсы на заполнение блоков нулями. При долгой работе в итоге превращается в жадный.
  • Thick provision eager zeroed — толстый жадный. При создании заполняет выделенный объём нулями. Долго создаёт большие винты, зато потом летает.
  • Thin provision — тонкий. Быстро создаётся, не занимает места на диске. По мере наполнения отжирает винт пока не заполнит весь выделенный для него объём. На это тратятся некоторые ресурсы. Опасен тем, что в один прекрасный момент места может не хватить, тогда с фризом нужно будет бороться танцами и бубном.

Next.

ovf

А теперь внимание — ошибка!

A required disk image was missing

Не хватает какого-то диска. Или мы забыли отмонтировать ISO образ CD-ROM, или забыли про файл NVRAM, что правда. Вернее, мы его и не скачивали. Отменяем операцию, Cancel.

ovf

Редактируем OVF файл. Действительно, в зависимостях есть mpsec.nvram (file2 ), который мы не скачивали. Стираем эту зависимость из XML, файл автоматически создастся при первом запуске.

ovf

Ещё второе упоминание есть, тоже стираем. Сохраняем конфиг.

ovf

Повторяем операцию импорта. На этот раз ошибки нет. Finish.

ovf

Начинается импорт файлов.

ovf

Дожидаемся завершения операции.

ovf

Появилась новая виртуальная машина.

ovf

Отключаю на новой виртуальной машине сеть и проверяю, виртуальная машина загружается.

ovf

Импорт OVF шаблона выполнен.

Примечания

После экспорта OVF шаблона было бы неплохо проверить, что мы всё правильно скачали. Для этого нужно сверить хэш-суммы. У меня есть отдельная утилита, вы можете воспользоваться ей, или использовать аналоги, или не сверять хэш-сумму:

Хеш-суммы в контекстном меню Windows (MD2, MD4, MD5, SHA1, SHA256, SHA384, SHA512)

У меня хэш-сумма VMDK файла в формате SHA1 совпала, значит, файл диска скачался без ошибок.

ovf

Если мы импортируем OVF шаблон на гипервизор другой версии, то может так произойти (а так обычно и происходит), что виртуальная машина не создаётся, отсутствуют указанные в конфигурационном файле устройства. В этом случае мы можем создать виртуальную машину вручную и в качестве дисков добавить экспортированные VMDK файлы, предварительно загрузив их в хранилище.

Или можно просто создать виртуальную машину, удалить у неё диск по умолчанию, загрузить в папку новой виртуальной машины на хранилище VMDK файл, добавить его в качестве диска в настройках виртуальной машины.

ovf

Перед импортом и экспортом боевых машин потренируйтесь на чём-нибудь менее важном. Не храните виртуальную машину на одном диске, используйте RAID. Не удаляйте резервные копии до полной реанимации системы.

Ссылки

ESXi 7 — экспорт и импорт виртуальной машины через Storage

 

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

Уменьшение виртуального диска с LVM

У нас есть виртуальная машина, на ней есть диск. Диск большой, данных мало. Наша задача - сделать диск меньшего размера. На борту Logical Volume Manager (LVM). Gparted не умеет переносить данные на LVM разделах. Будем делать всё руками.