Virtualización
¿Qué es KVM?
KVM is full hardware virtualisation built into the Linux kernel, giving each guest its own kernel and hardware-enforced isolation from other tenants. Because a KVM guest runs its own kernel, it can load kernel modules, run non-Linux operating systems, use real swap and support nested virtualisation.
Por qué es importante KVM
Como un invitado KVM ejecuta su propio kernel, puede cargar módulos del kernel, ejecutar sistemas operativos que no son Linux, usar swap real y soportar virtualización anidada. La memoria asignada a un invitado KVM está genuinamente reservada, lo que es la diferencia práctica respecto a la virtualización por contenedores.
KVM en la práctica
Cuando ejecutas un servidor KVM, lo primero que compruebas es /proc/cpuinfo en el invitado: si no coincide con los indicadores del host, es probable que estés viendo atajos paravirtualizados, no KVM completo. Configuras la asignación de memoria con reservas reales: la sobreasignación hará que el asesino OOM del invitado se active mientras el host parece inactivo. Si configuras mal la virtualización anidada, pierdes la paginación asistida por hardware y los invitados funcionan a una fracción de la velocidad. Hacerlo mal te cuesta un rendimiento que no puedes recuperar sin reiniciar.
Lo que se suele malinterpretar sobre KVM
La gente asume que KVM es lo mismo que OpenVZ o LXC porque ambos usan el kernel de Linux. La corrección es que KVM da a cada invitado su propio kernel, mientras que los contenedores comparten el kernel del host. Puedes cargar módulos del kernel y ejecutar sistemas operativos que no sean Linux solo en KVM. El aislamiento de espacios de nombres compartidos no está impuesto por hardware.
KVM — preguntas frecuentes
¿Qué significa KVM para el rendimiento?
La virtualización por hardware de KVM significa que cada invitado tiene su propio kernel, por lo que el rendimiento es casi nativo para CPU y memoria. La memoria está realmente reservada, no compartida. Puedes esperar un rendimiento predecible y aislado en comparación con los contenedores.
¿Puedo ejecutar Windows en KVM?
Sí, un invitado KVM ejecuta su propio kernel, por lo que puede ejecutar sistemas operativos que no sean Linux, como Windows. Necesitarás subir un ISO y conectar una consola VNC. Una licencia de Windows Server está disponible como extra opcional en ciertas regiones.
Dónde aparece KVM
- ¿Cuál es el VPS más barato que realmente se puede utilizar? Unos 4 $ al mes compran 1 vCPU, 1 GB de RAM y 20 GB de NVMe en virtualización KVM real. Eso es realmente suficiente para una VPN WireGuard, un resolutor de…
- ¿Cómo elijo un proveedor de VPS? Comprueba cinco cosas: tipo de virtualización (KVM, no OpenVZ), si los núcleos son dedicados, en qué jurisdicción está el servidor, qué datos de identidad …
- ¿Puedo instalar cualquier sistema operativo en un VPS? En KVM, sí. OnionVPS proporciona plantillas para Ubuntu, Debian, AlmaLinux, Rocky, Fedora, Arch, Alpine, NixOS, FreeBSD, OpenBSD, Windows Server, Proxmox y…
- ¿Qué es la virtualización KVM? KVM (máquina virtual basada en kernel) es virtualización completa de hardware integrada en el kernel de Linux, que utiliza extensiones del procesador para …
- ¿Qué hace diferente a OnionVPS de otros proveedores de VPS? Cuatro cosas: sin verificación de identidad de ningún tipo, pago solo con criptomonedas sin tarjeta ni banco, 138 ubicaciones en 116 países incluidas juris…
- ¿Qué incluye cada plan? Acceso root completo, virtualización KVM con soporte de kernel personalizado, carga de ISO personalizada, consola VNC fuera de banda, una dirección IPv4, u…
Más de virtualización
- OpenVZ
- OpenVZ es virtualización por contenedores en la que cada instancia comparte el kernel del host, por lo que los invitados no pueden cargar módulos del kernel ni ejecutar un sistema operativo diferente.
- LXC
- LXC es contenedorización nativa de Linux que aísla procesos con namespaces y cgroups mientras comparte el kernel del host.
- Hipervisor
- Un hipervisor es la capa de software que crea y ejecuta máquinas virtuales, asignando CPU física, memoria y E/S entre ellas.
- Virtualización anidada
- La virtualización anidada permite que una máquina virtual ejecute a su vez máquinas virtuales, exponiendo las extensiones de virtualización del procesador al invitado.
- vCPU
- Una vCPU es un procesador virtual presentado a un invitado, respaldado por tiempo de planificación en un núcleo o hilo físico.
- cloud-init
- cloud-init es el mecanismo estándar para configurar una máquina virtual en el primer arranque, usando metadatos proporcionados por la plataforma.