Saltar a contenido

QEMU

¿Qué es QEMU?

Es un software libre bajo (Licencia GPL) que recrea una máquina virtual con:

  • Su propio procesador (igual o diferente al de la máquina anfitrión).
  • Memoria RAM.
  • Y todos los elementos necesarios para ejecutar un sistema con sus aplicaciones.

Funcionamiento de QEMU

OPCIÓN 1 - EMULACIÓN

Como un emulador

Emula todos los componentes físicos de un ordenador real:

  • Procesador
  • Memoria
  • USB
  • Gráfica
  • ...

La CPU emulada puede ser diferente de la CPU física que se utiliza en el anfitrión (servidor).

OPCIÓN 2 - VIRTUALIZACIÓN

Como un virtualizador

Este modo depende de un componente llamado acelerador QEMU o KQEMU (es un driver que permite ejecutar código de la máquina huésped directamente en la CPU física).

En este caso la máquina hospedada y la CPU física deben ser x86.

Cuando funciona como virtualizador no necesita que la máquina anfitrión tenga activadas las extensiones de virtualización en la BIOS

  • Intel VT
  • AMD-V

Instalación de paquetes

Al instalar QEMU/KVM se obtienen 2 herramientas:

# Comando para instalar QEMU/KVM
apt-get -y install qemu-system libvirt-clients libvirt-daemon-system virtinst bridge-utils libguestfs-tools 
qemu-kvm libvirt0 python3-libvirt virt-manager virt-viewer qemu-kvm virtinst genisoimage
  • qemu-system-: Será el comando que utilizaremos para lanzar una nueva máquina virtual con una arquitectura determinada (i386, x86_64).
  • qemu-img: Comando utilizado para preparar y manipular imágenes de disco.

Configuración de la red

Opción 1 - Modo NAT (por defecto)

Cuando no se indica ninguna opción de red o se define como -net user. (Esta red permite acceder a la máquina virtual desde una red NAT).

Opción 2 - Modo -net nic VLAN

Nuestra máquina anfitrión puede contar con más de un adaptador de red, se pueden utilizar -net nic para definir una VLAN

Opción 3 - Modo -net socket

Permiten comunicar diferentes máquinas QEMU que pueden ejecutarse en el mismo anfitrión o en diferentes equipos.

Opción 4 - Redirección de puertos

Desde el anfitrión hacia la máquina huesped, asi desde la red se puede acceder a los servicios de la máquina QEMU.