Назад | Перейти на главную страницу

Как запустить устройство OVA + OVF внутри AWS EC2?

GitHub Enterprise поставляется как открытое устройство виртуализации и файл; он предназначен для добавления в существующие настройки виртуализации, такие как VMWare, VirtualBox и т. д.

Я хотел бы запустить его в облаке AWS EC2 (Github в настоящее время не предоставляет AMI).

Я читал по этой теме, и похоже, что инструмент VMImport AWS EC2 в настоящее время поддерживает только виртуальные машины Windows.

Интересно, существует ли пошаговое руководство по экспорту устройства OVA / OVF в экземпляр EC2, чтобы я мог создать его AMI и перейти оттуда? Я пытался следовать это руководство но, честно говоря, я не знаю, как выполнять шаги 1-3; GHE дает мне только ограниченный доступ по ssh к экземпляру, и я не уверен, что искать и как это искать. GHE, похоже, поставляется в базовом дистрибутиве Ubuntu.

(Я все еще достаточно начинающий системный администратор linux; у меня опыт разработки Windows, но я вполне способен быстро учиться.)

Похоже, что вы можете импортировать OVA / OVF с помощью команды ec2-import-image:

Документация от Amazon

Соответствующий текст:

Вы можете импортировать образы VMware ESX VMDK, образы Citrix Xen VHD и образы Microsoft Hyper-V VHD для Microsoft Windows Server 2003 R2 и 2008 R1 и R2. Вы можете экспортировать ранее импортированные экземпляры EC2 в VMware ESX VMDK, VMware ESX OVA, Microsoft Hyper-V VHD или Citrix Xen VHD. В будущем мы планируем поддерживать импорт дополнительных операционных систем, версий и продуктов инфраструктуры виртуализации.

Просто убедитесь, что вы используете последнюю версию своих наборов инструментов AWS, и все будет в порядке. Вам нужно выбрать формат «Raw» для -f и убедиться, что другие флаги верны. У меня нет опыта работы с корпоративной виртуальной машиной github, поэтому я не могу вдаваться в подробности, но, если немного пощупать, все будет в порядке.

ec2-import-instance DISK_IMAGE_FILENAME -t INSTANCETYPE -f FORMAT -a ARCHITECTURE-SYSTEM -b S3_BUCKET_NAME -o OWNER -w SECRETKEY

Справочник по команде ec2-import-instance

Я считаю, что OVA - это просто файл tar. У вас должна быть возможность просто извлечь содержащиеся файлы с помощью tar. Затем вы можете получить файл образа vmdk. Вы сможете преобразовать это в необработанное изображение с помощью qemu-img.

Уловка после этого будет заключаться в подключении необработанного образа в устройстве с обратной связью. Возможно, вам придется использовать kpartx для этого, если образ разбит на разделы. Вам необходимо убедиться, что ядро ​​в образе поддерживает сетевое устройство xen. Я считаю, что параметр конфигурации ядра - CONFIG_XEN_NETDEV_FRONTEND. Если образ GitHub основан на Ubuntu, вы найдете конфигурацию ядра в / boot / config-SOME_KERNEL_VERSION. Если вам повезет, конфигурация ядра будет включать эту опцию. Если вам не повезло, вам нужно скомпилировать собственное ядро.

Кроме того, вам необходимо убедиться, что в образе есть файлы, которые понадобятся pvgrub для загрузки образа. Это означает, что вам понадобится конфигурация, совместимая с grub1, по адресу /boot/grub/menu.lst.

После всего этого вам нужно будет загрузить и AMI, используя правильный AKI для pvgrub. Видеть этот документ AWS для получения дополнительной информации об этом.

В общем, это будет довольно сложно, если ядро ​​еще не построено так, чтобы поддерживать устройства xen net. Удачи.