La virtualización con KVM es una tecnología transformadora que permite a las organizaciones maximizar la utilización de recursos y la escalabilidad ejecutando varias máquinas virtuales (VM) en un solo servidor físico. Como una de las soluciones de virtualización de código abierto más populares, KVM (Kernel-based Virtual Machine) ofrece un rendimiento robusto, flexibilidad e integración con entornos Linux.
En esta guía, exploraremos cómo configurar KVM en Ubuntu Server 22.04, ofreciéndote un enfoque paso a paso para aprovechar el poder de la virtualización para tus necesidades de infraestructura. Tanto si estás creando un entorno de pruebas como si despliegas cargas de trabajo de producción, KVM ofrece las herramientas para optimizar tus operaciones de forma eficiente.
Artículos anteriores:
01. Introducción a Ubuntu Server – SysOSX: AI & Cloud
02. Cómo configurar tu primer servidor Ubuntu: guía para principiantes – SysOSX: AI & Cloud
03.Dominar la línea de comandos de Linux para Ubuntu Server – SysOSX: AI & Cloud
04. Gestión de usuarios y permisos en Ubuntu Server: guía completa – SysOSX: AI & Cloud
05. Fundamentos de redes para Ubuntu Server: guía completa – SysOSX: AI & Cloud
06. Instalar y gestionar software en Ubuntu Server: guía completa – SysOSX: AI & Cloud
07.Parchear y actualizar Ubuntu Server: guía completa – SysOSX: AI & Cloud
08. Proteger tu servidor Ubuntu: pasos prácticos para reforzarlo y protegerlo – SysOSX: AI & Cloud
09. Auditoría y registro del servidor Ubuntu
11. Registro centralizado para el servidor Ubuntu: una guía imprescindible – SysOSX: AI & Cloud
12. Auditoría y cumplimiento para Ubuntu Server: mejores prácticas – SysOSX: AI & Cloud
14. Alojar varios sitios web en un solo servidor Ubuntu: consejos útiles – SysOSX: AI & Cloud
15. Gestión del almacenamiento y los discos en Ubuntu Server: guía sencilla – SysOSX: AI & Cloud
18. Cómo configurar y usar LVM en Ubuntu Server: guía completa – SysOSX: AI & Cloud
¿Qué es KVM?
KVM (Kernel-based Virtual Machine) es una tecnología de virtualización basada en Linux que transforma tu servidor Linux en un hipervisor, permitiéndote crear y gestionar máquinas virtuales. Está integrada directamente en el kernel de Linux, lo que proporciona un excelente rendimiento e integración con las herramientas de Linux.
Características clave de KVM:
- Código abierto: gratuito y con amplio soporte.
- Alto rendimiento: aprovecha las extensiones de virtualización por hardware (Intel VT-x o AMD-V) para un rendimiento casi nativo.
- Flexibilidad: admite varios sistemas operativos invitados, incluidos Linux, Windows y macOS.
- Escalabilidad: ideal tanto para despliegues a pequeña escala como empresariales.
Requisitos previos para configurar KVM en Ubuntu Server 22.04
Antes de empezar, asegúrate de que tu sistema cumple los siguientes requisitos:
Requisitos de hardware:
- Procesador de 64 bits: tu CPU debe admitir la virtualización (Intel VT-x o AMD-V).
- RAM mínima: se recomiendan al menos 4 GB de RAM para alojar varias VM.
Requisitos de software:
- Ubuntu Server 22.04: asegúrate de tener una instalación nueva.
- Acceso sudo o root: necesario para instalar y configurar KVM.
Verificar la compatibilidad con la virtualización:
Ejecuta el siguiente comando para comprobar si tu CPU admite la virtualización:
egrep -c '(vmx|svm)' /proc/cpuinfo
Si la salida es mayor que 0, tu CPU admite la virtualización.
Guía paso a paso para configurar KVM en Ubuntu Server 22.04
Paso 1: Actualizar el sistema
Antes de instalar KVM, actualiza los paquetes del sistema:
sudo apt update && sudo apt upgrade -y
Paso 2: Instalar KVM y las herramientas necesarias
Instala KVM junto con herramientas esenciales como libvirt y virt-manager:
sudo apt install -y qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager
Paso 3: Verificar la instalación de KVM
Tras la instalación, verifica que el servicio libvirtd esté activo:
sudo systemctl status libvirtd
Deberías ver el servicio en ejecución. Además, confirma la compatibilidad con KVM con:
kvm-ok
Si la salida incluye «KVM acceleration can be used», tu configuración está lista.
Paso 4: Añadir tu usuario al grupo KVM
Para evitar ejecutar comandos como root, añade tu usuario a los grupos kvm y libvirt :
sudo usermod -aG kvm $USER
sudo usermod -aG libvirt $USER
Cierra sesión y vuelve a iniciarla para que los cambios surtan efecto.
Crear tu primera máquina virtual con KVM
Opción 1: usar virt-manager (GUI)
Si tu servidor Ubuntu tiene acceso a la GUI, usa virt-manager para crear y gestionar VM fácilmente:
- Inicia
virt-manager:virt-manager - Haz clic en File > New Virtual Machine.
- Sigue el asistente para configurar tu VM:
- Selecciona una imagen ISO para el sistema operativo.
- Asigna recursos de CPU y RAM.
- Configura el almacenamiento para la VM.
Opción 2: usar virt-install (línea de comandos)
Para servidores sin GUI, usa el comando virt-install . Aquí tienes un ejemplo para crear una VM con Ubuntu:
sudo virt-install \
--name ubuntu-vm \
--ram 2048 \
--vcpus 2 \
--disk path=/var/lib/libvirt/images/ubuntu-vm.img,size=20 \
--os-type linux \
--os-variant ubuntu22.04 \
--network bridge=virbr0 \
--graphics none \
--cdrom /path/to/ubuntu.iso
Reemplaza /path/to/ubuntu.iso por la ruta real de tu archivo ISO de Ubuntu 22.04.
Gestionar máquinas virtuales con KVM
Una vez creada tu VM, puedes gestionarla con virsh, una potente interfaz de línea de comandos para libvirt.
Iniciar una VM:
virsh start ubuntu-vm
Listar todas las VM:
virsh list --all
Detener una VM:
virsh shutdown ubuntu-vm
Eliminar una VM:
virsh undefine ubuntu-vm --remove-all-storage
Para una gestión avanzada, consulta la documentación de libvirt.
Configuración de red para máquinas virtuales
KVM usa puentes virtuales para conectar las VM a la red. De forma predeterminada, el puente virbr0 se crea durante la instalación y proporciona redes basadas en NAT. Para acceder directamente a tu red local, puedes configurar una red puente:
Configurar una red puente:
- Instala el
net-toolspaquete:
sudo apt install net-tools
- Edita el archivo de configuración de red:
sudo nano /etc/network/interfaces
- Añade la siguiente configuración para el puente (reemplaza
eth0por tu interfaz de red):
auto br0
iface br0 inet dhcp
bridge_ports eth0
bridge_stp off
bridge_fd 0
bridge_maxwait 0
- Reinicia el servicio de red:
sudo systemctl restart networking
Ventajas de usar KVM para la virtualización
- Rentable: KVM es gratuito y de código abierto, lo que elimina las tarifas de licencia.
- Alto rendimiento: ofrece un rendimiento casi nativo con aceleración por hardware.
- Flexibilidad: admite una amplia gama de sistemas operativos invitados.
- Escalabilidad: escala fácilmente los recursos para alojar varias VM.
- Integración: funciona sin problemas con herramientas de Linux como libvirt, QEMU y virt-manager.
Conclusión
KVM es una solución de virtualización robusta y eficiente para entornos Linux, ideal tanto para desarrolladores como para administradores de sistemas y empresas. Siguiendo esta guía, puedes configurar y gestionar máquinas virtuales en Ubuntu Server 22.04 con facilidad. Tanto si creas entornos de prueba como si alojas aplicaciones o construyes una nube privada, KVM ofrece la flexibilidad y el rendimiento que necesitas.
Para más detalles, consulta la documentación oficial de KVM.
A continuación, aprende cómo instalar Docker en Ubuntu Server y ejecutar tu primera aplicación contenerizada! 🐳🐧