Добрый день.
Хочу поделиться новым приобретенным опытом.
Нашей компании понадобились собственные 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.
Далее процесс установки самый обычный и дополнительно уделять ему внимание нет смысла.
После того как наша виртуальная машина установилась, выключаем её и идём в меню Файл — Экспорт конфигураций и выбираем необходимую конфигурацию.
В параметрах экспорта ставим пометку «Сохранить в формате 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 или знает другой способ импорта, поделитесь, пожалуйста, опытом.
Автор: camec