Máquinas virtuales y sus problemas potenciales de pérdida de datos

virtual machines peculiarities and potential data loss challenges

La virtualización ha ganado mucha popularidad durante la última década y sigue siendo muy solicitada en la industria de TI actual. Las máquinas virtuales se utilizan ampliamente tanto en los entornos domésticos como en los empresariales, y permiten ejecutar múltiples sistemas operativos (SO) aislados de diferentes tipos y versiones en una sola plataforma de hardware y así reducir los costes asociados con la compra y el mantenimiento de equipos adicionales. Cada SO tiene su propio conjunto de aplicaciones que de ninguna manera no interfieren entre sí, y por lo tanto, en caso de falla, ni los "vecinos" ni el "anfitrión" (host) no se verán afectados. Sin embargo, al usar esta tecnología, uno no debe dejarse llevar a engaño por una sensación de seguridad falsa, ya que las máquinas virtuales aún están sujetas a varios problemas, entre los que se encuentran la pérdida o los problemas con el acceso a datos críticos almacenados virtualmente.


¿Qué es una máquina virtual?

Una máquina virtual es una pieza de software especial que emula el funcionamiento de una máquina física. A pesar de ubicarse en un host físico real y usar sus recursos, una máquina virtual es completamente independiente: utiliza sus propios componentes de software (CPU, placa base, adaptador de vídeo, interfaz de red, memoria y discos duros) que pueden ser diferentes de los del host, y tiene su propio sistema operativo y aplicaciones.

El sistema operativo en el que una máquina virtual está instalada se llama sistema operativo host (principal), mientras que su propio sistema operativo se llama sistema operativo huésped (virtual). Cada SO huésped se inicia y se ejecuta en una ventana individual en un sistema operativo host, como un programa ordinario.

Todo el hardware virtual del sistema operativo huésped es manejado por un motor especial llamado hipervisor (o monitor de máquina virtual). El hipervisor sirve de un administrador de máquina virtual: asigna recursos físicos a cada uno de los sistemas y asegura que no se interrumpan entre sí. Por regla general, los hipervisores se implementan a nivel de software, pero también a veces pueden estar integrados en el firmware del sistema.

Los principales hipervisores en el mercado moderno son:

VMware ofrece una selección impresionantemente amplia de soluciones de virtualización, cada una adaptada a necesidades específicas, como VMware Workstation para Windows de Microsoft y Linux, VMware Fusion para macOS, así como el hipervisor de clase empresarial VMware ESXi que se ejecuta directamente en el hardware del servidor sin ningún sistema operativo subyacente. La mayoría de los productos tienen versiones gratuitas y profesionales de pago.

Microsoft Hyper-V, anteriormente Windows Server Virtualization, es un software de virtualización avanzado que se suministra con Windows Server 2008, Windows 8 y versiones posteriores y se utiliza principalmente en el entorno de servidor, a menudo para la creación de nubes privadas. Compatible con varias versiones de Linux, FreeBSD y Windows, Hyper-V proporciona una variedad de herramientas de administración del servidor y potencia Azure Cloud de Microsoft.

Oracle VM VirtualBox es un software de virtualización multiplataforma de código abierto que soporta una amplia gama de sistemas operativos huésped, como Windows, Linux y BSD, y permite crear múltiples máquinas virtuales y ejecutarlas simultáneamente.

Parallels Desktop es una solución de virtualización de pago desarrollada especialmente para las computadoras Apple Macintosh, que permite a los usuarios de Mac ejecutar Windows, Chrome OS o varias distribuciones de Linux junto con el sistema operativo nativo o utilizar una segunda instancia de macOS.

QEMU, abreviatura de Quick Emulator, es una plataforma de virtualización de código abierto gratuita y popular entre los usuarios de Linux, pero que también se puede instalar en macOS y Windows a través de compilaciones personalizadas. QEMU puede tanto simular el hardware, como alojar máquinas virtuales, lo que hace que el rendimiento de las últimas se acerque a al nivel de las instalaciones nativas.

Xen es un software de virtualización de código abierto de Citrix que se utiliza principalmente por empresas, como, por ejemplo, proveedores de servicios de Internet grandes, para alojar servidores o sistemas operativos de escritorio. Xen se puede implementar en una plataforma de virtualización dedicada, como XenServer, y también está disponible como una configuración opcional para los sistemas operativos Linux, BSD y Solaris. Hay versiones de software gratuitas y de pago.

Peculiaridades de discos virtuales

En la mayoría de las máquinas virtuales, los datos, incluido el sistema operativo y las aplicaciones, se almacenan en un archivo especial llamado disco virtual, que contiene un sistema de archivos y se presenta al sistema operativo huésped como un disco duro físico ordinario. Dicho archivo o conjunto de archivos puede almacenarse en la máquina host o en una computadora remota, ser parte de una máquina virtual o montarse en el sistema operativo de una máquina física. Básicamente, un disco virtual es el disco duro de la máquina virtual real que puede ser de diferentes tipos, que generalmente se distinguen por la extensión del archivo:

  • VMDK (Virtual Machine Disk o disco de máquina virtual), el formato utilizado por los productos de virtualización de VMware;
  • VHD (Virtual Hard Disk o disco duro virtual), el formato utilizado por los sistemas de virtualización de Microsoft y Xen;
  • VHDX (Virtual Hard Disk X o disco duro virtual X), el formato VHD mejorado típico de Hyper-V;
  • VDI (Virtual Disk Image o imagen de disco virtual), el formato de disco virtual nativo de VirtualBox;
  • QCOW y QCOW2 (QEMU Copy-On-Write), formatos utilizados por QEMU y Xen;
  • HDD (Hard Disk Drive o unidad de disco duro), el formato que se utiliza principalmente en Parallels.

Algunos hipervisores soportan varios formatos de disco virtual, por ejemplo, VirtualBox es compatible con los archivos VHD y VMDK, mientras que los contenedores VMDK también son soportados por QEMU y Parallels.

Problemas posibles y formas de resolverlos

Sin duda, la virtualización aporta numerosas ventajas, como la reducción de los gastos en el hardware, el aislamiento del software, la eliminación de problemas de compatibilidad, la movilidad y las operaciones de TI más eficientes, pero, como suele ser el caso, también tiene muchas desventajas.

Rendimiento más bajo

Una instalación virtual no puede ser tan eficiente como una máquina real, especialmente cuando se ejecutan varias máquinas virtuales a la vez, ya que no tiene acceso directo al hardware y la asignación de recursos físicos genera una sobrecarga adicional.

Mayor riesgo de tiempo de inactividad

La consolidación de varios sistemas en una sola pieza de hardware la convierte en un único punto de falla: si el host físico falla, esto afectará a todas las máquinas virtuales que aloja, dejándolas indisponibles.

Problemas con el intercambio de datos

Una forma habitual de intercambiar información entre el SO principal y el de huésped es ejecutar ambos y utilizar un transporte de red virtual. El software de virtualización a menudo ofrece programas de envoltura de transporte para un sistema operativo huésped, lo que permite realizar el intercambio de archivos simplemente arrastrando y soltando los últimos. Sin embargo, esto puede tomar mucho tiempo o simplemente ser imposible en las siguientes situaciones:

  • Obtener datos de una copia instantánea (snapshot) histórica de una máquina virtual: no se recomienda iniciar la máquina virtual para evitar modificar la copia instantánea. Hay que copiar el disco virtual con la configuración y arrancar una nueva máquina virtual.
  • Las utilidades de una máquina virtual no se instalan por algún motivo, ya sea por el aislamiento de la máquina o por la indisponibilidad de las utilidades para un sistema operativo huésped.
  • No hay protocolos de red especiales instalados en el sistema operativo huésped – el aislamiento de la máquina virtual no permite transferir archivos.
  • Límite de tamaño de archivo – el software puede tener problemas al copiar archivos muy grandes del sistema operativo huésped al principal.

Aún así, hay una mejor solución para realizar el intercambio de archivos entre los sistemas operativos host y huésped. Como los archivos necesarios ya están almacenados en el disco virtual en la computadora host, es posible extraer ellos a nivel lógico. SysDev Laboratories ofrece el software UFS Explorer como una solución perfecta para abrir discos virtuales, examinar sus archivos y carpetas y copiarlos al sistema operativo host. Para obtener instrucciones detalladas, por favor, lea el artículo Acceso a datos en una máquina virtual.

Problemas posibles y formas de resolverlos

Las máquinas virtuales tienen unas vulnerabilidades que a menudo dan como resultado la corrupción o pérdida de datos críticos:

  • Mal funcionamiento del software

    El software de virtualización también puede tener errores internos y fallar inesperadamente, provocando la pérdida de archivos que se almacenan virtualmente;

  • Corrupción del disco virtual

    Al igual que cualquier archivo de computadora, el disco virtual es propenso a la corrupción, lo que puede deberse a un ataque de malware, fallas del software o incluso el desgaste;

  • Error durante la migración

    Un error durante la migración de una máquina virtual puede ocurrir debido a varios factores, como una red defectuosa o la desconexión abrupta de un dispositivo de almacenamiento durante la transferencia de una unidad virtual, y es muy probable que dañe los archivos de la máquina;

  • Borrado de archivos

    La eliminación accidental de un archivo de configuración de máquina virtual o un archivo de disco virtual puede deberse a un error del usuario/administrador, mientras que la mayoría de los hipervisores no ofrecen funciones de recuperación integradas;

  • Problemas con copias instantáneas (snapshots)

    Las copias instantáneas tienden a aumentar de tamaño rápidamente y pueden provocar problemas cuando se eliminan o se aplican en los discos originales de la máquina virtual o incluso causar la falta de espacio que a su vez da lugar a la corrupción de toda la máquina virtual. Las instantáneas de varias capas también son muy susceptibles a errores;

  • Daños al sistema de archivos

    La corrupción del sistema de archivos de un disco virtual o del host en el que se encuentra una máquina virtual hace que sus archivos se vuelvan absolutamente ilegibles utilizando los medios estándar;

    Sugerencia: Para obtener más información sobre los sistemas de archivos y sus funciones, consulte el artículo sobre los conceptos básicos del sistema de archivos.

  • Fallo de fuente de alimentación

    Los cortes de energía generalmente resultan en un apagado forzado de un sistema que puede no sólo dañar el hardware del host sino que también provocar la corrupción de una máquina virtual activa en ese mismo momento.

En caso de pérdida de datos de una máquina virtual, los productos de recuperación de datos UFS Explorer pueden ayudar a lograr el mejor resultado posible en restaurarlos. Al ser compatible con los formatos de disco virtual de los principales proveedores de software de virtualización, el software permite abrir archivos de discos virtuales y encontrar y copiar los datos necesarios. Para obtener instrucciones detalladas, por favor, consulte el artículo Recuperación de datos en máquinas virtuales.

Última actualización: el 01 de septiembre de 2022

Si le gusta este artículo, compártalo en sus redes sociales: