Creación y configuración de máquinas virtuales para pruebas

Objetivo:

Comprender y dominar el despliegue y la configuración avanzada de máquinas virtuales de pruebas en entornos de virtualización (como VirtualBox, KVM o Proxmox), aprendiendo a dimensionar recursos de hardware virtual, configurar redes aisladas, gestionar adaptadores de almacenamiento y utilizar instantáneas (snapshots).

Escenario:

  • Herramientas: Hipervisor de virtualización (VirtualBox / KVM / Virt-Manager), ISO de instalación de Linux, gestión de redes virtuales y control de instantáneas.
  • Conceptos analizados: Virtualización por hardware (VT-x/AMD-V), asignación de CPU y memoria RAM, modos de red (NAT, adaptador puente, red interna), discos virtuales dinámicos y puntos de restauración.
  • Proceso clave: Creación desde cero de una máquina virtual, dimensionamiento de recursos, configuración de almacenamiento y red, instalación asistida del sistema operativo y creación de una instantánea de seguridad antes de realizar pruebas de software.

Escenario Real: Entorno aislado para pruebas de despliegue de software

Un equipo de desarrollo necesita probar un nuevo script de automatización y despliegue de servicios web que puede alterar la configuración del sistema operativo. Como administrador de sistemas, debes aprovisionar rápidamente una máquina virtual de pruebas aislada, configurada con los recursos justos de hardware, conectada a una red interna segura y respaldada mediante una instantánea que permita revertir cualquier fallo crítico de forma instantánea.

Por defecto, la virtualización permite maximizar el aprovechamiento del hardware físico y aislar entornos de experimentación sin poner en riesgo los sistemas de producción. Conocer la correcta parametrización de los recursos virtuales es una habilidad fundamental para cualquier administrador de infraestructuras.

NOTA: Para realizar esta práctica de forma óptima, asegúrate de tener habilitada la virtualización por hardware (Intel VT-x o AMD-V) en la BIOS/UEFI de tu equipo anfitrión.

Instrucciones:

Fase 1: Creación de la máquina virtual y dimensionamiento de recursos:

  • Abrir el hipervisor de virtualización (por ejemplo, VirtualBox o Virt-Manager) y seleccionar la opción de crear una nueva máquina virtual.
  • Asignar un nombre descriptivo a la máquina (ej. VM-Pruebas-Lab) y seleccionar la imagen ISO del sistema operativo Linux correspondiente.
  • Dimensionar de manera equilibrada los recursos de hardware asignados:
    Memoria RAM: 2048 MB (2 GB) o superior
    Procesadores virtuales (vCPU): 2 núcleos
    Almacenamiento en disco virtual: 20 GB (con asignación dinámica)
    

Fase 2: Configuración avanzada de redes y almacenamiento:

  • Configurar el adaptador de red principal en modo NAT (para permitir acceso a Internet y descarga de paquetes durante la instalación) o en modo Red Interna si se requiere aislamiento estricto de laboratorio.
  • Verificar la controladora de almacenamiento virtual y asegurar que el medio de instalación (ISO) se encuentra correctamente enlazado a la unidad óptica virtual.
  • Revisar la desactivación de aceleraciones gráficas innecesarias si se trata de un servidor virtual en modo texto.

Fase 3: Instalación del sistema operativo y configuración inicial:

  • Iniciar la máquina virtual y completar el asistente de instalación del sistema operativo Linux asignando credenciales de usuario y contraseña seguros.
  • Instalar las herramientas de integración del hipervisor (como Guest Additions en VirtualBox o los agentes de QEMU/Spice en KVM) para mejorar el rendimiento del ratón, la resolución de pantalla y la compartición de carpetas.
  • Comprobar la conectividad de red interna mediante una prueba básica de ping o consulta de IP asignada: ip a

Fase 4: Creación de puntos de restauración (Snapshots):

  • Apagar o dejar la máquina en un estado limpio y estable tras la instalación inicial del sistema operativo.
  • Crear un punto de restauración o instantánea de seguridad (Snapshot) desde el hipervisor nombrándola explícitamente (ej. "Instalación limpia base").
  • Comprobar el funcionamiento de la reversión simulando una modificación en el sistema y restaurando posteriormente la instantánea para verificar que el estado original se recupera intacto.

Verificación:

  • Comprobar que la máquina virtual arranca con fluidez y reconoce correctamente los núcleos de CPU y la memoria RAM asignada desde el hipervisor.
  • Verificar que las instantáneas se generan de manera correcta y permiten retornar el sistema a un punto anterior sin pérdida de integridad.

Posibles errores y resolución de problemas:

Si al intentar encender la máquina virtual el hipervisor muestra un error crítico indicando que VT-x/AMD-V hardware acceleration is not available, significa que la virtualización por hardware está desactivada en la placa base del equipo anfitrión.

  • Solución: Reinicia tu equipo físico, accede a la configuración de la BIOS/UEFI, localiza la opción de virtualización de procesador (Intel Virtualization Technology o AMD SVM Mode), habilítala, guarda los cambios y vuelve a iniciar el sistema.

Alternativa directa: Inspección de VMs activas con virsh (KVM)

Si utilizas un hipervisor basado en KVM y QEMU en entornos Linux sin interfaz gráfica, puedes listar y comprobar de forma instantánea el estado de todas las máquinas virtuales configuradas en el servidor ejecutando el comando:

sudo virsh list --all

Preguntas de reflexión:

  1. ¿Qué ventajas operativas aporta el uso de discos virtuales con asignación dinámica (thin provisioning) frente a los discos de tamaño fijo al aprovisionar múltiples máquinas de pruebas?
  2. ¿Qué diferencia técnica existe entre los modos de red virtual NAT, Adaptador Puente (Bridge) y Red Interna a la hora de comunicar una máquina virtual con el exterior y con el equipo anfitrión?
  3. ¿Cómo funcionan internamente las instantáneas (snapshots) en los hipervisores modernos y por qué no deben considerarse un sustituto válido de una copia de seguridad tradicional (backup)?
  4. ¿Qué implicaciones de rendimiento tiene sobre el equipo anfitrión asignar un número excesivo de vCPU o memoria RAM a las máquinas virtuales de pruebas?
Haz clic aquí para ver las soluciones y explicaciones

1. ¿Qué ventajas operativas aporta el uso de discos virtuales con asignación dinámica (thin provisioning) frente a los discos de tamaño fijo al aprovisionar múltiples máquinas de pruebas?

La asignación dinámica permite que el fichero del disco virtual ocupe en el almacenamiento físico del anfitrión únicamente el espacio real que los datos del sistema invitado van consumiendo en cada momento, permitiendo crear múltiples máquinas virtuales sin agotar de manera prematura la capacidad total del disco duro físico.


2. ¿Qué diferencia técnica existe entre los modos de red virtual NAT, Adaptador Puente (Bridge) y Red Interna a la hora de comunicar una máquina virtual con el exterior y con el equipo anfitrión?

El modo NAT enmascara la IP de la máquina virtual permitiéndole salir a Internet a través del anfitrión pero sin recibir conexiones directas del exterior. El modo Adaptador Puente conecta la máquina virtual directamente a la red física local como si fuera un equipo físico independiente con su propia IP. Por último, la Red Interna aísla totalmente a las máquinas virtuales, permitiendo únicamente la comunicación entre ellas dentro de un segmento cerrado sin acceso al exterior ni al anfitrión.


3. ¿Cómo funcionan internamente las instantáneas (snapshots) en los hipervisores modernos y por qué no deben considerarse un sustituto válido de una copia de seguridad tradicional (backup)?

Una instantánea congela el estado del disco virtual en un momento dado y comienza a escribir los cambios posteriores en un fichero de diferencias o delta (cow). No son un backup porque dependen directamente del fichero de disco base original: si el disco principal se corrompe o se borra el volumen completo, toda la cadena de instantáneas se vuelve inservible, además de degradar el rendimiento de lectura si se acumulan demasiadas capas.


4. ¿Qué implicaciones de rendimiento tiene sobre el equipo anfitrión asignar un número excesivo de vCPU o memoria RAM a las máquinas virtuales de pruebas?

Sobredimensionar los recursos virtuales provoca contención a nivel de hipervisor. Si asignas más núcleos virtuales (vCPU) de los que físicamente posee el procesador anfitrión, el hipervisor incurrirá en una sobrecarga de sincronización (CPU scheduling overhead), y si saturas la memoria RAM provocaras paginación excesiva (swapping), ralentizando gravemente tanto el rendimiento de las máquinas virtuales como el del equipo anfitrión.