VIRTUALIZACIÓN / LAB-004

Homelab Proxmox VE y recuperación de Debian 13

Reutilización de una laptop como host KVM/QEMU y validación de una VM Debian desde el despliegue hasta el respaldo y la recuperación.

Proxmox VE · KVM/QEMUDebian 13

La salida de restauración registra la recuperación en la VM 101 mientras la VM 100 se conservó intacta. El historial también documenta el arranque de la VM recuperada con la red desconectada y el inicio de sesión por consola.

01 / Arquitectura

Reutilicé una HP ProBook 4540s con un Intel Core i7-3612QM (4 núcleos, 8 hilos), aproximadamente 12 GB de RAM y un SSD Kingston A400 de 480 GB. Proxmox usó ext4 para el sistema raíz y LVM para el almacenamiento, incluido el pool LVM-Thin de discos virtuales.

Arquitectura LAB-004: ThinkPad Windows 11 conectada por LAN al servidor HP ProBook con Proxmox VE 9.2, pve-manager 9.2.25, VM Debian 100 y VM restaurada 101 aislada. Disco BitLocker conectado a ThinkPad; backups transferidos mediante SCP.
Topología implementada. El disco externo, conectado a Windows, almacenó el archivo cifrado de configuración del host y el respaldo comprimido de la VM. Selecciona la imagen para verla en tamaño completo.

La VM 100 (debian-lab01) ejecutó Debian 13 con 2 vCPU, 2 GiB de RAM, un disco virtual de 25 GiB en local-lvm, interfaz VirtIO, SSH y QEMU Guest Agent. La VM 101 (debian-restore-test) se creó a partir de su respaldo.

02 / Implementación

  1. Verifiqué por SHA-256 la ISO de Proxmox, preparé el USB de arranque e instalé el hipervisor en el SSD Kingston. Excluí el HDD HGST del almacenamiento confiable tras la advertencia SMART.
  2. Conecté la red de la VM a la LAN mediante vmbr0. Los repositorios Enterprise de Proxmox y Ceph devolvieron HTTP 401. Deshabilité esas entradas, activé Proxmox No-Subscription para el laboratorio y comprobé que APT volvía a leer los índices.
  3. Proxmox rechazó la primera descarga de la ISO de Debian porque se había seleccionado SHA-512 con un checksum SHA-256. Seleccioné SHA-256 con el valor correspondiente y la descarga pasó la verificación.
  4. Instalé Debian en local-lvm con red VirtIO, habilité SSH y QEMU Guest Agent, y añadí un archivo de configuración de systemd-logind para ignorar el cierre de tapa.
  5. Antes de actualizar Proxmox, comprimí y cifré la configuración del host con OpenSSL AES-256-CBC y PBKDF2. Generé por separado un respaldo de la VM con vzdump en modo stop y compresión Zstandard. Transferí ambos por SCP y cotejé SHA-256 entre origen y destino. Una consulta elevada de Windows confirmó la protección BitLocker del disco externo.
  6. Tras reiniciar con el kernel actualizado, volví a conectarme por SSH a Debian y comprobé sus servicios y la conectividad externa. Después restauré el respaldo en un ID independiente sobre local-lvm.

Comandos representativos de verificación

# Host Proxmox
pveversion
uname -r
qm list

# VM Debian
systemctl status qemu-guest-agent

03 / Validación y recuperación

La validación combina recortes de capturas originales, salidas de terminal recuperadas del historial y observaciones del cierre técnico. La sección de evidencias indica qué muestra cada captura.

Administración y red

Accedí a Proxmox por HTTPS con una advertencia de confianza del navegador. Debian alcanzó la LAN e Internet, resolvió DNS y aceptó SSH desde Windows. También comprobé sudo.

Integración con el host

El servicio QEMU Guest Agent estaba activo en la VM 100.

Cierre de tapa

El historial registra que se mantuvo la conectividad con la tapa cerrada. La salida original de ping muestra 10 respuestas a 10 solicitudes.

Temperatura

CPU Package registró aproximadamente 47–48 °C en reposo. Alcanzó 64 °C durante una prueba de 60 segundos con dos workers de stress-ng al 50 % de carga cada uno y cero fallos reportados.

Actualización y reinicio

El nodo arrancó con pve-manager 9.2.25 y kernel 7.0.14-26-pve. Una sesión SSH registrada después del reinicio muestra SSH y QEMU Guest Agent activos y 3 respuestas de 3 pings a una IP externa.

Integridad de los respaldos

Los hashes SHA-256 de origen y destino coincidieron para ambos archivos. El archivo del host se cifró individualmente. El respaldo comprimido de la VM quedó protegido en reposo por el volumen BitLocker externo.

Restauración de la VM 101

La salida de terminal recuperada muestra que la restauración llegó al 100 % y que qm list mostró ambas VMs detenidas, con IDs distintos y discos de arranque de 25 GiB. El extracto omite los prompts y las líneas ajenas a la comprobación.

progress 99% (read 26575110144 bytes, duration 13 sec)
progress 100% (read 26843545600 bytes, duration 13 sec)
total bytes read 26843545600, sparse bytes 24884215808 (92.7%)
space reduction due to 4K zero blocks 2.91%
rescan volumes...
      VMID NAME                 STATUS     MEM(MB)    BOOTDISK(GB) PID
       100 debian-lab01         stopped    2048              25.00 0
       101 debian-lab01         stopped    2048              25.00 0

La VM 101 heredó el nombre debian-lab01 del respaldo de la VM 100, por eso ese nombre aparece en la salida de restauración. Después la renombré a debian-restore-test en Proxmox, mientras que el hostname de Debian dentro de la copia siguió siendo debian-lab01.

El historial documenta después la desconexión de la NIC virtual de la VM 101 con link_down=1, el arranque y el inicio de sesión por consola. El recorte disponible muestra una sesión Debian bajo el hostname heredado, sin el ID de VM visible. El cierre registra que la VM 101 y el host se apagaron después de la prueba.

04 / Evidencias

Las copias públicas conservan el idioma de las capturas originales. Recorté o cubrí los datos de administración y de red privada.

Proxmox muestra checksum verified y TASK OK al descargar la ISO de Debian 13.7.
E01 · Proxmox muestra checksum verified y TASK OK al descargar la ISO de Debian 13.7.
Abrir captura publicada E01
El hardware de la VM 100 muestra 2 vCPU, 2 GiB de RAM, un disco de 25 GiB en local-lvm y VirtIO sobre vmbr0.
E02 · El hardware de la VM 100 muestra 2 vCPU, 2 GiB de RAM, un disco de 25 GiB en local-lvm y VirtIO sobre vmbr0.
Abrir captura publicada E02
La primera sesión SSH llega al shell de Debian. Se ocultaron los datos de conexión.
E03 · La primera sesión SSH llega al shell de Debian. Se ocultaron los datos de conexión.
Abrir captura publicada E03
El servicio QEMU Guest Agent en Debian figura como active (running).
E04 · El servicio QEMU Guest Agent en Debian figura como active (running).
Abrir captura publicada E04
CPU Package alcanza 64 °C en una prueba de 60 segundos con dos workers de stress-ng al 50 % de carga cada uno y cero fallos reportados.
E05 · CPU Package alcanza 64 °C en una prueba de 60 segundos con dos workers de stress-ng al 50 % de carga cada uno y cero fallos reportados.
Abrir captura publicada E05
El host muestra pve-manager 9.2.25 y el kernel activo 7.0.14-26-pve.
E06 · El host muestra pve-manager 9.2.25 y el kernel activo 7.0.14-26-pve.
Abrir captura publicada E06
El registro de vzdump indica que el respaldo de la VM 100 terminó correctamente.
E07 · El registro de vzdump indica que el respaldo de la VM 100 terminó correctamente.
Abrir captura publicada E07
PowerShell muestra los resultados SHA-256 de ambas copias. Se ocultaron las rutas y parte de cada hash.
E08 · PowerShell muestra los resultados SHA-256 de ambas copias. Se ocultaron las rutas y parte de cada hash.
Abrir captura publicada E08
El árbol de Proxmox lista las VM 100 y 101 en el mismo nodo.
E09 · El árbol de Proxmox lista las VM 100 y 101 en el mismo nodo.
Abrir captura publicada E09

05 / Límites y aprendizajes

  • El HDD HGST de 500 GB quedó fuera del almacenamiento confiable por problemas SMART. La batería de la laptop estaba degradada.
  • Las pruebas térmicas fueron breves y moderadas. No hubo lectura de RPM del ventilador. La lectura ACPI anómala de 127 °C se excluyó de las mediciones de CPU Package. Quedó sin medir el comportamiento continuo y a carga máxima.
  • Quedó pendiente una observación de mantenimiento del metapaquete GRUB/UEFI. El reinicio registrado fue satisfactorio.
  • El entorno de un solo nodo carecía de alta disponibilidad. La verificación de las copias externas y la restauración cubrieron este ejercicio. La retención empresarial y la recuperación integral del host quedaron fuera del alcance.

La comprobación SHA-256 confirmó la integridad de la transferencia. El arranque y el inicio de sesión por consola demostraron que se podía recuperar una VM Debian utilizable.

Referencias oficiales

← Volver a proyectos