ACADEMIA TI · TEMPORADA 2 · EP016

Migración en vivo de máquinas virtuales en Proxmox VE

Aprende a mover tus máquinas virtuales entre nodos de un clúster Proxmox VE sin apagar los servicios.

Infografía original EP016: Migración en vivo de máquinas virtuales en Proxmox VE
Infografía original del episodio EP016, conservada sin alteraciones.

La migración en vivo —Live Migration— permite mover una VM encendida desde un nodo origen hacia un nodo destino, manteniendo el servicio disponible durante el proceso. Es una herramienta para mantenimiento, balanceo y continuidad, no un botón mágico: exige compatibilidad, capacidad, red y almacenamiento correctamente preparados.

Idea clave: migrar una VM sin apagarla reduce la ventana visible para los usuarios, pero no elimina la necesidad de planificar, monitorear y validar.

1. Qué ocurre durante una migración en vivo

Proxmox transfiere el estado de ejecución de la VM al nodo destino mientras la máquina continúa trabajando. La memoria y los cambios se copian progresivamente; al final se realiza una breve sincronización para completar el cambio de ejecución.

El disco puede permanecer accesible desde ambos nodos cuando se utiliza almacenamiento compartido. La guía oficial de Proxmox identifica este como uno de los beneficios principales del almacenamiento compartido: permitir migrar VMs activas sin trasladar manualmente sus imágenes de disco.

VM activaNodo origenRed de migraciónNodo destinoServicio activo

2. Requisitos antes de migrar

RequisitoQué revisarRiesgo si falta
Clúster sanoNodos en línea y quorum activoLa operación puede bloquearse o quedar insegura.
CPU compatibleModelo y capacidades admitidas en destinoLa VM puede no iniciar o perder funciones.
RAM disponibleMargen suficiente en el destinoLa migración no encuentra capacidad.
RedCanal estable y, si es posible, dedicadoLa copia de memoria se ralentiza o falla.
StorageDiscos accesibles desde el destinoLa VM llega sin sus datos o no puede arrancar.
InvitadoGuest Agent y drivers revisadosMenor visibilidad y peor control operativo.

3. Compatibilidad de CPU, memoria y almacenamiento

La VM debe poder ejecutarse con el conjunto de instrucciones disponible en el destino. Por eso un clúster con procesadores muy diferentes necesita un modelo de CPU común o una política de compatibilidad definida.

También se comprueba la RAM. El destino no debe estar al límite antes de iniciar la migración: necesita recibir la memoria de la VM y conservar margen para sus propias cargas.

En cuanto al almacenamiento, la opción más directa es que ambos nodos vean el mismo recurso compartido, como NFS, iSCSI o Ceph. Con almacenamiento local se requieren mecanismos adicionales —por ejemplo, mover discos o usar replicación— y el procedimiento deja de ser una simple migración con discos compartidos.

4. Preparar la red de migración

La migración mueve memoria y estado entre nodos. Si ese tráfico comparte una red saturada con usuarios, backups o almacenamiento, una operación que debía ser rápida puede competir con servicios críticos.

  1. Identificar la interfaz o VLAN destinada a migración.
  2. Confirmar conectividad entre origen y destino.
  3. Comprobar velocidad, latencia y ausencia de pérdidas.
  4. Verificar que las reglas de firewall permiten el tráfico necesario.
  5. Registrar qué red se utilizará y en qué horario.
Nodo origenRed dedicadaNodo destino
UsuariosBackupsMigración

5. Guest Agent: visibilidad dentro de la VM

El QEMU Guest Agent permite que Proxmox intercambie información y acciones con el sistema invitado cuando está instalado y habilitado. No es el motor de la migración, pero mejora la coordinación y la observabilidad de la VM.

Antes de migrar una VM, comprueba que el agente y los drivers estén instalados según el sistema operativo. No asumas que una VM recién creada lo tiene listo.

6. Los 12 pasos de la infografía

  1. Verificar el clúster: confirma nodos en línea, quorum y estado sano.
  2. Comprobar recursos: revisa CPU y RAM libres en el destino.
  3. Preparar la red: valida conectividad y canal de migración.
  4. Comprobar storage: confirma que el destino ve los discos necesarios.
  5. Configurar la red de migración: selecciona la interfaz o red definida.
  6. Habilitar Guest Agent: instala y activa el agente dentro del invitado.
  7. Comprobar compatibilidad: revisa versión, CPU y dispositivos.
  8. Seleccionar la VM: identifica correctamente la carga y su criticidad.
  9. Ejecutar la migración: inicia la acción y confirma el nodo destino.
  10. Monitorear: observa progreso, tiempo y mensajes de tarea.
  11. Verificar destino: comprueba que la VM aparece activa en el nuevo nodo.
  12. Realizar pruebas finales: valida servicios, red, rendimiento y usuarios.

7. Ejemplo empresarial

Una empresa debe actualizar el firmware de su nodo pve-node1. La aplicación de facturación corre en la VM 120 y los usuarios no pueden tener una interrupción prolongada.

El equipo verifica quorum, RAM disponible en pve-node2, CPU compatible, storage compartido y red de migración. Ejecuta Live Migration, observa el progreso y prueba desde un equipo usuario que la aplicación siga respondiendo. Solo después coloca el nodo origen en mantenimiento.

El beneficio es una ventana de mantenimiento más flexible; la responsabilidad sigue siendo del equipo que comprueba el servicio.

8. Escenario práctico

Debes migrar una VM Linux que presta un servicio web. Diseña un checklist con:

  1. Estado requerido del clúster.
  2. Recursos mínimos del destino.
  3. Storage y red que deben estar disponibles.
  4. Pruebas antes, durante y después de migrar.
  5. Criterio para cancelar o devolver la VM al nodo origen.
Criterio de éxito: la VM debe ejecutar sus servicios en el nodo destino, mantener conectividad y no mostrar errores que indiquen pérdida de datos o degradación inaceptable.

9. Qué puede hacer fallar una migración

  • El nodo destino no tiene memoria suficiente.
  • La CPU no es compatible con la configuración de la VM.
  • El storage de los discos no está disponible en el destino.
  • La red de migración tiene latencia o pérdida.
  • La VM utiliza dispositivos físicos o configuraciones no migrables.
  • El clúster ha perdido quorum o presenta errores.

Ante un fallo, no repitas la operación sin leer la tarea y verificar el estado real de la VM. Primero determina si la VM sigue activa en origen, si quedó detenida o si la tarea solo se interrumpió antes de cambiar de nodo.

10. Buenas prácticas y errores frecuentes

Buenas prácticas

  • Usar RAM suficiente y evitar overcommit excesivo.
  • Separar la red de migración cuando sea posible.
  • Mantener versiones y CPU compatibles.
  • Probar migraciones periódicamente.
  • Registrar tiempos y resultados.

Errores frecuentes

  • Migrar sin comprobar storage compartido.
  • Confundir migración con backup.
  • Ignorar el consumo del destino.
  • Realizar la primera prueba en horario crítico.
  • Dar por buena la migración sin probar la aplicación.

Preguntas frecuentes

¿La VM se apaga durante una migración en vivo?

El objetivo es mantenerla ejecutándose, aunque puede existir una pausa muy breve al transferir el estado final. La experiencia depende de la carga, la red y el almacenamiento.

¿Puedo migrar entre CPUs diferentes?

Solo si la configuración de CPU de la VM es compatible con ambos nodos. En clústeres heterogéneos hay que definir un modelo común y probarlo.

¿Necesito almacenamiento compartido?

No en todos los diseños, pero es la opción más directa para que ambos nodos accedan a los discos durante una migración. Con almacenamiento local se requieren mecanismos adicionales.

¿Qué debo validar después?

Estado de la VM, red, servicios, rendimiento, logs, Guest Agent y respuesta desde el punto de vista del usuario.

Conclusión

Live Migration es una herramienta práctica para mantenimiento y balanceo, pero funciona bien cuando el clúster, la CPU, la memoria, la red, el storage y la VM están preparados. La migración termina con una prueba del servicio, no con el cambio de nodo visible en la interfaz.

Continúa con la Temporada 2

En EP017 veremos backup y restauración de máquinas virtuales.

Leer EP017 →