Gestión de Infraestructura: Almacenamiento VDO & Libvirt

Autor:

raul-ipa

Fecha:

2026-03-17

Estrategia:

Zero-Footprint (Nodos Desechables)

Contexto de Almacenamiento

La arquitectura se apoya en un volumen VDO con sistema de archivos XFS, optimizado para la de-duplicación y el ahorro de espacio mediante reflinks.

  • Punto de Montaje: /var/lib/virt_storage

  • Pools de Libvirt:
    • vdo_infra -> /vms/ (Discos de sistema) * Función: Es el Tier de Producción/Base. Aquí es donde debemos alojar la Golden Image.

    • vdo_iso -> /iso_images/ (Fuentes de instalación) * Función: Actúa como tu repositorio de solo lectura para las imágenes .iso.

    • boot-scratch -> /iso_images/ (Almacenamiento volátil) * Función: Almacenamiento volátil o de arranque rápido. * Uso estratégico: Ideal para archivos temporales o volúmenes que no requieran la persistencia crítica del almacenamiento de infraestructura.

Comandos de Verificación del Host

Antes de operar, es crítico validar que el sistema de archivos soporta la clonación CoW (Copy-on-Write).

# Localizar el dispositivo VDO y verificar opciones (discard, rw)
df -h | grep vdo
mount | grep xfs

# Confirmar que reflink está activo (debe devolver reflink=1)
xfs_info /var/lib/virt_storage | grep reflink

Operativa con virsh

Gestión de los recursos de almacenamiento desde la CLI de virtualización.

# Consultar el estado y capacidad real detectada por Libvirt
virsh pool-list --all
virsh pool-info vdo_infra
  1. Localización de Volúmenes (vdo_iso)

Para listar las ISOs disponibles y usarlas en la instalación:

virsh vol-list vdo_iso
  1. Creación del Volumen Base (vdo_infra)

Antes de lanzar el virt-install, creamos el “contenedor” vacío en el pool de infraestructura:

# Crear el volumen base para la Golden Image
# Formato RAW es esencial para la eficiencia de VDO
virsh vol-create-as vdo_infra GOLDEN_ROCKY10_BASE.raw 20G --format raw
  1. Uso de boot-scratch (Entorno Volátil)

Si necesitas un disco adicional para intercambio de datos temporal que no deba persistir en la Golden Image:

virsh vol-create-as boot-scratch temp_data.raw 5G --format raw

Estrategia de Despliegue (Clonación)

Para instanciar nuevas máquinas sin penalización de espacio ni tiempo.

# Clonación instantánea mediante reflink de XFS
cp --reflink=always \
   /var/lib/virt_storage/vms/GOLDEN_ROCKY10_BASE.raw \
   /var/lib/virt_storage/vms/VM_PRUEBA_INTEGRIDAD.raw

Note

La clonación via cp --reflink es transparente para Libvirt, pero requiere un virsh pool-refresh vdo_infra posterior para que la nueva imagen sea visible en el inventario de volúmenes.