Como executar um dispositivo OVA + OVF dentro do AWS EC2?

7
O

GitHub Enterprise é fornecido como um Open Appliance e arquivo de virtualização; Ele deve ser colocado em uma configuração de virtualização existente, como VMWare, VirtualBox, etc.

Gostaria de executá-lo dentro da nuvem do AWS EC2 (o Github não fornece uma AMI atualmente).

Eu li sobre o assunto e parece que a ferramenta VMImport da AWS EC2 só suporta VMs do Windows atualmente.

Gostaria de saber se existe um guia passo a passo para exportar um dispositivo OVA / OVF para uma instância do EC2, para que eu possa criar uma AMI e ir a partir daí? Eu tentei seguir este guia mas não sei como seguir os passos 1-3, honestamente; O GHE apenas me dá acesso ssh limitado à instância, e não tenho certeza do que procurar ou como procurá-lo. O GHE parece ser lançado em uma distribuição de base do Ubuntu.

(Eu ainda sou um linux sysadmin de nível iniciante; venho de um plano de desenvolvimento do Windows, mas sou capaz de aprender rapidamente.)

    
por Peter Mounce 08.05.2012 / 14:04

2 respostas

3

Parece que você pode importar um OVA / OVF usando o comando ec2-import-image:

Documentação da Amazon

Texto relevante:

You can import VMware ESX VMDK images, Citrix Xen VHD images and Microsoft Hyper-V VHD images for Microsoft Windows Server 2003 R2 and 2008 R1 and R2. You can export previously imported EC2 instances to VMware ESX VMDK, VMware ESX OVA, Microsoft Hyper-V VHD or Citrix Xen VHD file formats. We plan to support import for additional operating systems, versions and virtualization infrastructure products in the future.

Basta verificar para verificar se você está executando a versão mais recente dos seus kits de ferramentas da AWS e você deve estar bem. Você deseja selecionar o formato "Raw" para -f e verificar se os outros sinalizadores estão corretos. Eu não tenho experiência com a VM corporativa do github, então não posso entrar em detalhes, mas, com um pouco de cutucão, você deve estar bem.

ec2-import-instance DISK_IMAGE_FILENAME -t INSTANCETYPE -f FORMATO -a ARCHITECTURE-SYSTEM -b S3_BUCKET_NAME -o PROPRIETÁRIO -w SECRETKEY

referência do comando ec2-import-instance

    
por 19.10.2012 / 09:05
1

Eu acredito que um OVA é apenas um arquivo tar. Você deve conseguir apenas extrair os arquivos contidos com o tar. Então você pode obter o arquivo de imagem vmdk. Você deve conseguir convertê-lo em uma imagem bruta com o qemu-img.

O truque depois disso será montar a imagem bruta em um dispositivo de loopback. Você pode precisar usar o kpartx para fazer isso se a imagem estiver particionada. Você precisará garantir que o kernel da imagem tenha suporte para o dispositivo xen net. Eu acredito que a opção de configuração do kernel é CONFIG_XEN_NETDEV_FRONTEND. Se a imagem do GitHub é baseada no Ubuntu, você encontrará a configuração do kernel em / boot / config-SOME_KERNEL_VERSION. Se você tiver sorte, a configuração do kernel incluirá essa opção. Se você não tiver sorte, precisará compilar um kernel personalizado.

Além disso, você precisará garantir que a imagem tenha os arquivos necessários para o pvgrub inicializar a imagem. Isso significa que você precisará de uma configuração compatível com o grub1 em /boot/grub/menu.lst.

Depois de fazer tudo isso, você terá que fazer o upload e AMI usando o AKI certo para o pvgrub. Consulte este documento da AWS para obter mais informações sobre isso.

Em suma, isso será muito difícil se o kernel não for construído de uma forma que suporte os dispositivos xen net. Boa sorte.

    
por 03.02.2013 / 08:17