Pull to refresh
EPAM
Компания для карьерного и профессионального роста

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

EPAM corporate blog Amazon Web Services *
Tutorial
Добрый день.
Хочу поделиться новым приобретенным опытом.
Нашей компании понадобились собственные 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.


При создании машины указываем тип диска VMDK.


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


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


Результатом экспорта будут два файла. Один с расширением 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 — архитектура ОС


После того как наша конфигурации будет загружена в 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 или знает другой способ импорта, поделитесь, пожалуйста, опытом.
Tags:
Hubs:
Total votes 22: ↑20 and ↓2 +18
Views 12K
Comments Comments 9

Information

Founded
1993
Location
США
Website
www.epam.com
Employees
over 10,000 employees
Registered
Representative
vesyolkinaolga