KVM se refiere a la máquina virtual basada en kernel que ayuda a ejecutar múltiples invitados aislados basados en Windows o Linux junto con su propio sistema operativo y hardware virtual dedicado. Para ejecutar KVM, su sistema debe ser compatible con las extensiones de virtualización de hardware, como AMD-V o Intel-VT.
La plantilla de máquina virtual es una copia de la máquina virtual que incluye la configuración específica de la máquina virtual y el sistema operativo invitado. Si necesita implementar varias VM de la misma instancia, la creación de una máquina virtual con una plantilla es útil, lo que juega un papel muy importante en el ahorro de tiempo y almacenamiento.
Este tutorial le muestra cómo crear una plantilla de VM a partir de la VM existente en KVM. En este artículo, la instalación de KVM y la creación de plantillas de sistema operativo Linux se realizan en el sistema Ubuntu 20.04. Antes de continuar con el proceso, se le solicita previamente que prepare el sistema con KVM instalado.
Creación de una máquina virtual KVM
Primero, asegúrese de que el demonio libvirtd se esté ejecutando en su sistema. De lo contrario, use el comando systemctl para iniciar y habilitar el demonio.
$ sudo systemctl start libvirtd
$ sudo systemctl enable libvirtd
Comprobando el estado del demonio libvirtd,
$ sudo systemctl status libvirtd
Si su sistema actual es Ubuntu/Debian, habilite el módulo kernel vhost-net usando el siguiente comando.
$ sudo modprobe vhost_net
Para crear la plantilla, primero necesitábamos tener una instancia de instalación en el sistema. Vamos a crear imágenes KVM de 15 G centos 8 usando el comando qemu-img que se proporciona a continuación.
$ sudo qemu-img create -o preallocation=metadata -f qcow2 /var/lib/libvirt/images/centos8.qcow2 15G
Luego, cree la máquina virtual usando el comando virt-install que se menciona a continuación. Usaré CentOS 8 para el sistema operativo invitado, pero puede usar cualquier otra distribución. Solo tenga cuidado de ajustar la ruta a la imagen ISO que contiene el sistema operativo que se instalará (/home/janak/Downloads/CentOS-8.4.2105-x86_64-boot.iso) para que coincida con la ruta del sistema operativo que desea instalar. en la máquina virtual.
$ sudo virt-install --virt-type kvm --name centos8 --ram 2048 \ --disk /var/lib/libvirt/images/centos8.qcow2,format=qcow2 \ --network network=default \ --graphics vnc,listen=0.0.0.0 --noautoconsole \ --os-type=linux --os-variant=rhel7.0 \ --cdrom=/home/janak/Downloads/CentOS-8.4.2105-x86_64-boot.iso
En el comando anterior, reemplace el parámetro de la opción –cdrom con su imagen iso de centos descargada. Luego, el comando instalará y ejecutará la VM en su KVM, así que abra su KVM usando virt-manager.
$ sudo virt-manager
Una vez que abra el KVM, puede ver que su VM está en un estado de ejecución, así que abra la VM y luego el sistema comenzará el proceso de arranque y podrá ver la siguiente página de configuración inicial de centos. Luego, realice el proceso de configuración y finalice la configuración.
Creación de una plantilla de máquina virtual en KVM
Una vez que termine la configuración, inicie sesión en su sistema, actualice su sistema e instale todos los paquetes básicos y necesarios.
Para actualizar la información de los paquetes en el repositorio del sistema, use:
$ sudo yum update -y
Instale algunos paquetes básicos que crea que serán necesarios. En mi caso, he instalado los siguientes paquetes.
$ sudo yum install curl epel-release unzip telnet wget -y
Luego, deshabilite la ruta zeroconf. Zeroconf es el método de red para comunicarse entre dos computadoras y permitirles compartir los recursos de cada uno. Utiliza el Protocolo de Internet (IP) para establecer la comunicación entre dos computadoras.
$ echo "NOZEROCONF=yes" | sudo tee -a /etc/sysconfig/network
Ahora, apague su máquina virtual para continuar con el proceso.
$ sudo poweroff
En su terminal normal, ejecute el siguiente comando virt-sysprep para limpiar la instancia. virt-sysprep es la utilidad de línea de comandos para reconfigurar o restablecer la máquina virtual para que sea clonable.
$ sudo virt-sysprep -d centos8
En el comando, centos8 se refiere al nombre de su VM de instalación, así que reemplácelo con el nombre de su VM si tiene uno diferente. Si su sistema no tiene instalado virt-sysprep, puede instalarlo usando el comando que se indica a continuación.
$ sudo apt update
$ sudo apt install libguestfs-tools
Por último, ejecute el siguiente comando virsh undefined domain para eliminar la configuración de la máquina virtual invitada.
$ sudo virsh undefine centos8
Felicitaciones, su plantilla ha sido creada. Ahora puede clonar e implementar muchas instancias múltiples de él.
Conclusión
Gracias por leer este artículo. En este artículo, creamos la máquina virtual y aprendemos cómo podemos crear la plantilla para crear varias instancias de la misma y su implementación.