Экспорт виртуальных машин из VirtualBox в AWS Amazon

в 12:49, , рубрики: Amazon Web Services, AWS Amazon, virtualbox, системное администрирование, метки: ,

Добрый день.
Хочу поделиться новым приобретенным опытом.
Нашей компании понадобились собственные AMI с Windows XP, Windows 7, Windows 8 и Windows Server 2003 в AWS Amazon.
После относительно недолгого поиска было выяснено, что такая возможность есть, и называется она AWS VM Import/Export Tools (подробнее тут ).

Однако возможности этого сервиса пока ограничены:

Q. What operating systems are supported?
VM Import/Export currently supports Windows Server 2003, Windows Server 2003 R2 and Windows Server 2008 (Datacenter, Enterprise, and Standard editions) VM images. For a full list of supported VM file formats, please see What virtual machine file formats are supported?.. We plan to support additional operating systems in the future.

Скажу честно, не увидев в списке поддерживаемых ОС Windows XP, вздохнул с облегчением.

Итак, к делу. Для всех манипуляций нам понадобится установленная VirtualBox (у меня версия 4.2.4) и Amazon EC2 API Tools (скачать последнюю версию можно здесь).
Выбранная для импорта версия ОС — Windows Server 2003.
Создадим новую виртуальную машину в VirtualBox.
Экспорт виртуальных машин из VirtualBox в AWS Amazon

При создании машины указываем тип диска VMDK.
Экспорт виртуальных машин из VirtualBox в AWS Amazon

Далее процесс установки самый обычный и дополнительно уделять ему внимание нет смысла.
После того как наша виртуальная машина установилась, выключаем её и идём в меню Файл — Экспорт конфигураций и выбираем необходимую конфигурацию.
Экспорт виртуальных машин из VirtualBox в AWS Amazon

В параметрах экспорта ставим пометку «Сохранить в формате OVF» и проверяем чтобы расширение в имени сохраняемого файла также было ovf.
Экспорт виртуальных машин из VirtualBox в AWS Amazon

Результатом экспорта будут два файла. Один с расширением ovf, другой — vmdk, и именно его мы будем дальше использовать.
Когда экспорт завершен, можно приступать к загрузке. Открываем командную строку или терминал (в зависимости от вашей ОС) и выполняем следующее:

# ec2-import-instance /media/sf_UbuntuVirt/win2003_x86-disk1.vmdk -f VMDK -b windows2003x86 -o XXXXXXXXXX -w XXXXXXXXXXXX -t m1.small -a i386

где:

  • -f VMDK — формат загружаемого файла,
  • -b windows2003x86 — название бакета в AWS S3
  • -o XXXXXXXXXX — access_key_id
  • -w XXXXXXXXXXXX — secret_access_key
  • -t m1.small — тип инстанса, который стартует с вашей конфигурацией
  • -a i386 — архитектура ОС

Экспорт виртуальных машин из VirtualBox в AWS Amazon
После того как наша конфигурации будет загружена в S3, начнется процесс конвертации её в EBS инстанс.
Прогресс конвертации проверяем командой:

# ec2-describe-conversion-tasks | grep TaskType
TaskType	IMPORTINSTANCE	TaskId	import-i-fhax7514	ExpirationTime	2013-02-05T14:41:06Z	Status	completed	InstanceID	i-b8923ac8

В выводе нас интересуют два значения:

  • Status completed — значит конвертация завершена
  • InstanceID i-b8923ac8 — ID инстанса с нашей конфигурацией

Теперь мы можем снять создать AMI с этого инстанса или из консоли, или с помощью CLI.
Мне ближе использование CLI.

# ec2-create-image i-b8923ac8 --no-reboot -n win2003x86 -d "Windows Server 2003"
IMAGE	ami-f1a73398

Вот и всё, теперь мы можем смело стартовать новые сервера с нашей новой AMI.
Надеюсь, информация будет полезна.

P.S. Если кто-нибудь нашёл способ сделать AMI из XP или знает другой способ импорта, поделитесь, пожалуйста, опытом.

Автор: camec

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js