Cree una máquina virtual similar a la nube con una configuración mínima

Cree una máquina virtual similar a la nube con una configuración mínima

EnAmazon EC2ootro nube/IaaS servicios, Puedo crear fácilmente una nueva máquina sin necesidad de mucha instalación. Básicamente, simplemente selecciono RAM/HDD/CPU y proporciono una clave SSH pública y obtengo una máquina nueva en segundos.

¿Cómo puedo replicar esto localmente, con VirtualBox (o cualquier otro software de virtualización)? Si es posible, preferiría una solución que necesite una modificación mínima del sistema real.

Respuesta1

Puedes usarmáquinas virtuales prediseñadaspara conseguir el mismo efecto. Cree, personalice y luego guárdelo como su plantilla base. Así como usaría un documento de Office vacío con su configuración preferida (fuentes, configuración de página, etc.), puede crear una máquina virtual (en cualquier tecnología de virtualización) que puede copiar y personalizar fácilmente cuando necesite una nueva instancia. A lo largo de los años, tengo una biblioteca de sistema operativo base* para diferentes versiones y versiones de Linux, Windows y Macintosh.

Respuesta2

Simplemente puedes crear unOVFaplicación con VirtualBox, y luego importe esto varias veces:

  1. Cree la máquina virtual con todas sus preferencias: instale el software que desee (por ejemplo,arriba) y configúrelo según sus deseos (por ejemplo,habilitar sudo sin contraseña, configurado UseDNS Nopara /etc/ssh/sshd_confacelerar el inicio de sesión y un tiempo de espera menor en /boot/grub/grub.cfg).
  2. Instale un servidor SSH ysube tu clave SSH.
  3. En Linux, ejecute sudo rm -rf /etc/udev/rules.d/para eliminar las asociaciones de nombres de red persistentes (de lo contrario, tendrá que reconfigurar la red).
  4. Apague la máquina (es posible que desee eliminar algunos cachés antes para reducir el tamaño de la máquina).
  5. Exporte la VM, ya sea a través de la GUI con Archivo -> Exportar dispositivo o conVBoxManage export VM_NAME -o ./myvm.ova

Ahora puede importar el archivo OV creado con la frecuencia que desee (con Archivo -> Importar aplicación oVBoxManage import. Cada vez que hagas eso, VirtualBox generará un nuevo nombre de VM y te permitirá cambiar los parámetros básicos (CPU, tamaño de RAM, discos conectados, etc.).

Sin embargo, tendrás que editar manualmente la regla de reenvío del puerto ssh. Puede hacerlo fácilmente con el siguiente script:

OVA=vm.ova # Change this to the name of your ova file
VM_NAME=$(VBoxManage import "$OVA" | sed -n 's#.*VM name "\(.*\)".*#\1#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"

Ahora puede ingresar a la máquina mediante ssh ssh vbox-$VM_NAME. Si desea implementar la máquina, debe cambiar manualmentecambiar las claves del servidor SSH.

En lugar de exportar e importar, también puedes simplementeclonuna máquina existente.

información relacionada