Crie uma VM parecida com a nuvem com configuração mínima

0

Em Amazon EC2 ou outro cloud / IaaS serviços , posso criar facilmente uma nova máquina sem precisar de muita instalação. Basicamente, eu apenas seleciono RAM / HDD / CPU e forneço uma chave SSH pública e obtenho uma máquina novinha em segundos.

Como posso replicar isso localmente, com o VirtualBox (ou qualquer outro software de virtualização)? Se possível, prefiro uma solução que precise de modificações mínimas no sistema atual.

    
por phihag 26.02.2013 / 06:29

2 respostas

1

Você pode usar máquinas virtuais pré-criadas para obter o mesmo efeito. Crie, personalize e salve como seu modelo base. Assim como você usaria um documento de escritório vazio com suas configurações preferidas (fontes, configuração de página, etc), você pode criar uma máquina virtual (em qualquer tecnologia de virtualização) que possa ser facilmente copiada e personalizada quando precisar de uma nova instância. Ao longo dos anos, tenho uma biblioteca de SO base para diferentes versões e versões do Linux, Windows e Macintosh.

    
por 26.02.2013 / 06:37
0

Você pode simplesmente criar uma aplicação OVF com o VirtualBox e depois importar isso várias vezes:

  1. Crie a VM com todas as suas preferências - instale o software de que você gosta (por exemplo, htop ) e configure-o de acordo com seus desejos (por Por exemplo, habilite o sudo sem senha , defina UseDNS No em /etc/ssh/sshd_conf para acelerar o login e um tempo limite menor em /boot/grub/grub.cfg ).
  2. Instale um servidor SSH e carregue sua chave SSH .
  3. No linux, execute sudo rm -rf /etc/udev/rules.d/ para remover as associações de nome de rede persistentes (caso contrário, você terá que reconfigurar a rede).
  4. Desligue a máquina (talvez você queira remover alguns caches antes para reduzir o tamanho da máquina).
  5. Exporte a VM, através da GUI com Arquivo - > Export Appliance ou com VBoxManage export VM_NAME -o ./myvm.ova

Agora você pode importar o arquivo óvulo criado quantas vezes quiser (com arquivo - > Import Applicance ou VBoxManage import . Toda vez que você fizer isso, o VirtualBox gerará um novo nome de VM e permitirá que você altere os parâmetros básicos (CPU, tamanho de RAM, discos anexados, etc.).

No entanto, você terá que editar manualmente a regra de encaminhamento de porta ssh. Você pode facilmente fazer isso com o seguinte script:

OVA=vm.ova # Change this to the name of your ova file
VM_NAME=$(VBoxManage import "$OVA" | sed -n 's#.*VM name "\(.*\)".*##p')
sshport=$(python -c 'import random;print(random.randint(1025,65535))')
VBoxManage modifyvm $VM_NAME --natpf1 ssh,tcp,127.0.0.1,$sshport,,22
/bin/echo -e "\nHost vbox-$VM_NAME\n\tHostName localhost\n\tPort $sshport\n" \
          >>~/.ssh/config
echo "Start the VM with    VBoxManage startvm $VM_NAME"
echo "Then, type   ssh vbox-$VM_NAME   to log in to your VM"

Agora você pode ssh na máquina com ssh vbox-$VM_NAME . Se você quiser implantar a máquina, você deve alterar manualmente alterar as chaves do servidor SSH .

Em vez de exportar e importar, você também pode apenas clonar uma máquina existente.

    
por 26.02.2013 / 07:12