1. Crea un fichero de imagen qcow2 de 1 GiB de tamaño real y virtual
En primer luegar creamos la imagen que será del tamaño de 1GB
manuelj@Mark-X:~$ qemu-img create imagen.img 1G Formatting 'image.img', fmt=raw size=1073741824
2. Crea una MV con virt-manager utilizando esa imagen y conectada a la red juegodetronos
A continuacion arracamos una maquina virtual usando la imagen anteriormente creada e instalmos debian
luego vemos el espacio que ocupa la imagen despues de la istalacion:
manuelj@Mark-X:~$ du -hslc imagen.img 549M imagen.img 549M total manuelj@Mark-X:~$
A continuacion lo que vamos a hacer es convertir esa imagen donde esta instalado el sistema en qcow2 para ejecutamos el siguiente comando:
manuelj@Mark-X:~$ qemu-img convert imagen.img -O qcow2 imagen.qcow2 manuelj@Mark-X:~$ du -hslc imagen.qcow2 1,1G imagen.qcow2 1,1G total manuelj@Mark-X:~$
3.Copia el fichero XML de la máquina virtual.
Ahora copiamos el fichero XML de la maquin virtual que hemos creado que se encuentra en /etc/libvirt/qemu:
root@Mark-X:/home/manuelj# cp /etc/libvirt/qemu/qcow2.xml /etc/libvirt/qemu/qcow2-2.xml root@Mark-X:/home/manuelj#
4. Elimina la máquina virtual de libvirt sin borrar el fichero de imagen
En este apartado se nos pide que borremos la maquina pero sin borrar nuestro fichero de imagen, este paso lo vamos a realizar con virsh de la siguiente manera:
root@Mark-X:~# virsh -c qemu:///system undefine qcow2 Domain qcow2 has been undefined root@Mark-X:~#
5. Crea un fichero de imagen qcow2 de 2GiB que utilice como imagen base el fichero de la máquina virtual anterior
Este paso es parecido al que hemos hecho anteriormete pero esta vez usaremos una como base el fichero de la maquina virtual anterior y le otorgaremos 2GB:
manuelj@Mark-X:~$ qemu-img create -b imagen.qcow2 -f qcow2 imagen2.qcow2 2G Formatting 'imagen2.qcow2', fmt=qcow2 size=2147483648 backing_file='imagen.qcow2' encryption=off cluster_size=65536 manuelj@Mark-X:~$
6. Realiza las siguientes modificaciones antes de crear la MV:
Hostname
Dirección IP
Añade tu clave pública ssh al usuario root
Lo primero que debemos de hacer es montar la imagen es montar la imagen de la siguiente manera, en primer lugar debemos activar el modulo «nbd»:
root@Mark-X:/home/manuelj# modprobe nbd root@Mark-X:/home/manuelj# qemu-nbd -c /dev/nbd0 imagen2.qcow2 root@Mark-X:/home/manuelj# kpartx -av /dev/nbd0 root@Mark-X:/home/manuelj# mount -t ext4 /dev/mapper/nbd0p1 /mnt/
Una vez hecho esto, el siguiente paso es modificar los ficheros de configuración. En primer lugar vamos a editar el fichero «hostname» para cambiar el nombre a la maquina:
root@Mark-X:/home/manuelj# nano /mnt/etc/hostname
A continuación cambiaremos la IP en «interface»:
root@Mark-X:/home/manuelj# nano /mnt/network/interfaces root@Mark-X:/home/manuelj#
Y luego añadiremos la clave ssh para conectarnos:
root@Mark-X:/home/manuelj/.ssh# cp id_rsa.pub /mnt/root/.ssh root@Mark-X:/home/manuelj/.ssh#
Una vez hecho esto el siguiente paso que debemos de hacer es desmontar:
root@Mark-X:/home/manuelj/.ssh# umount /mnt/ root@Mark-X:/home/manuelj/.ssh# kpartx -d /dev/nbd0 root@Mark-X:/home/manuelj/.ssh# qemu-nbd -d /dev/nbd0 /dev/nbd0 disconnected root@Mark-X:/home/manuelj/.ssh#
7. Crea un fichero XML para la definición de una MV utilizando el fichero XML de la máquina antigua
Ahora debemos de irnos al fichero xml de la maquina anterior y le cambiamos los paramentros necesarios para que sea otra maquina completamente distinta cambiando las siguientes etiquetas en el fichero:
root@Mark-X:/home/manuelj/.ssh# nano /etc/libvirt/qemu/qcow2-2.xml root@Mark-X:/home/manuelj/.ssh# sistemas 2916dbe6-6dc8-11e4-8f22-544249e94f92
* El uuid debemos generar uno nuevo, para ello instalamos el paquete «uuid» y luego ejecutamos «uuid» y nos aparecerá uno nuevo:
root@Mark-X:/home/manuelj# uuid 2916dbe6-6dc8-11e4-8f22-544249e94f92 root@Mark-X:/home/manuelj#
8. Define la MV en libvirt utilizando el fichero XML con virsh
El fichero lo tenemos que definir de la siguiente manera usando «virsh»:
root@Mark-X:/home/manuelj/.ssh# virsh -c qemu:///system Welcome to virsh, the virtualization interactive terminal. Type: 'help' for help with commands 'quit' to quit virsh # define /etc/libvirt/qemu/qcow2-2.xml Domain sistemas defined from /etc/libvirt/qemu/qcow2-2.xml virsh #
9. Arranca la máquina virtual y accede a ella utilizando tu clave pública ssh
A continuacion vamos a arracnar la maquina usando «virsh»:
root@Mark-X:/home/manuelj/.ssh# virsh -c qemu:///system start qcow2 Domain qcow2 started root@Mark-X:/home/manuelj/.ssh#
y luego nos conectamos por ssh:
root@Mark-X:/home/manuelj/.ssh# ssh root@10.0.0.10