¿Qué es el Sistema de Archivos de Máquina Virtual (VMFS)?
Sistema de Archivos de Máquina Virtual (VMFS)
En nuestra discusión sobre el NAS, mencionamos brevemente que los datos están organizados por un «sistema de archivos». Sin algún método de gestión de archivos, los datos de un dispositivo de almacenamiento serían una masa ininteligible, sin indicación de dónde termina un conjunto de datos y dónde empieza el siguiente. Puedes imaginar lo confuso que sería si las 70.000 canciones de tu disco duro de 1tb estuvieran todas juntas, sin nombres ni información de las pistas. Sólo cuando los datos se separan en piezas individuales pueden ser identificados y recuperados.
Estas piezas separadas de datos se agrupan en archivos, que a su vez se agrupan en directorios (que pueden contener subdirectorios – directorios dentro de directorios). Esta disposición jerárquica permite a los usuarios navegar por los diferentes niveles de un sistema de archivos según sea necesario. Los sistemas de archivos proporcionan «metadatos» para cada archivo (por ejemplo, nombre del archivo, marcas de tiempo, permisos) e índices que permiten al sistema operativo saber qué archivos hay en una unidad y dónde están.
Hay muchos tipos de sistemas de archivos, incluyendo sistemas de archivos para discos, para bases de datos y para redes. Algunos ejemplos de sistemas de archivos de los que puede haber oído hablar son NTFS (soportado por Windows), ext (por ejemplo, ext2, ext3 y ext4) y ReiserFS (ambos soportados por Linux), HFS+ y APFS (ambos soportados por macOS de Apple), y UDF e ISO 9660 para discos ópticos. En un disco duro, el sistema de archivos se crea cuando el disco se inicializa (si es nuevo) o se formatea (tanto si es nuevo como si no).
El almacenamiento virtualizado está diseñado para proporcionar a las máquinas virtuales (VM) el almacenamiento que necesitan para alojar sus sistemas operativos y aplicaciones. En un entorno virtualizado, los discos virtuales de una máquina virtual se almacenan en un «datastore». (En el proceso de virtualización, se crea una partición en una unidad física para formar un espacio conocido como «Número de Unidad Lógica» o LUN; uno o más LUNs conforman un «volumen»; un número de volúmenes conforman un datastore). Un datastore normalmente necesita tener un sistema de archivos instalado en él para poder acceder a él. Con la plataforma de virtualización de computación en la nube de VMware, vSphere, los almacenes de datos se configuran con uno de los dos formatos de sistema de archivos: el «Sistema de archivos de la máquina virtual» (VMFS) o el «Sistema de archivos de red» (NFS). NFS se discutirá en la siguiente sección.
VMware fue pionera en las tecnologías de virtualización y desarrolló su propio sistema de archivos, VMFS, para trabajar con ellas. Los sistemas de archivos convencionales sólo permiten que un servidor tenga acceso de lectura/escritura a un archivo determinado en un momento dado. En cambio, VMFS permite que varios servidores tengan acceso de lectura y escritura a los mismos recursos de almacenamiento al mismo tiempo. Esto se debe a que VMFS es un sistema de archivos en clúster (CFS) de alto rendimiento, «clúster» significa que se monta simultáneamente (se hace accesible) en múltiples servidores.
La tecnología de virtualización de VMware permite a VMFS establecer y asignar almacenamiento virtualizado para máquinas y servidores virtuales. VMFS también permite que varias máquinas virtuales compartan un único sistema de archivos. En una configuración sencilla, los discos de las máquinas virtuales se almacenan como archivos dentro de VMFS. Para que VMFS entienda las operaciones de archivo solicitadas desde un dispositivo SCSI, la capa de virtualización traduce los comandos SCSI emitidos desde un sistema operativo invitado.
Una máquina virtual «ve» un disco virtual que está almacenado en un almacén de datos VMFS como un dispositivo SCSI montado. El sistema operativo que se ejecuta dentro de la VM no ‘ve’ VMFS – ‘ve’ su propio sistema de archivos en su lugar.
Un almacén de datos VMFS puede estar vinculado a un único LUN SAN o extenderse sobre múltiples LUNs SAN. Incluso se puede ampliar un datastore mientras las máquinas virtuales se están ejecutando en él, ya sea haciendo crecer el datastore o añadiendo una nueva área de almacenamiento. El almacén de datos VMFS puede ampliarse sobre 32 áreas de almacenamiento físico del mismo tipo de almacenamiento. (VMFS puede usarse en una amplia variedad de dispositivos de almacenamiento en bloque, incluyendo SANs de canal de fibra, SANs iSCSI, almacenamiento local y canal de fibra sobre Ethernet.)
Con múltiples servidores ESXi en un cluster, las máquinas virtuales se encienden, la característica del mecanismo de bloqueo de VMFS asegura que las VMs no son encendidas por todos los servidores ESXi en un cluster. Varios hosts ESXi pueden acceder al mismo almacén de datos VMFS en un entorno de almacenamiento compartido, de ahí la razón del bloqueo en disco. Sin embargo, con VMware High Availability, el mecanismo de bloqueo en disco se desactiva para que los hosts ESXi del clúster puedan conmutar por error con éxito en un intento de encender la máquina virtual en otro servidor físico que funcione. Como todos los hipervisores, ESXi (abreviatura de «Elastic Sky X Integrated») crea y ejecuta máquinas virtuales. Es un hipervisor «Tipo 1», lo que significa que no depende del sistema operativo de su anfitrión, sino que se ejecuta directamente en el hardware del anfitrión, conteniendo en sí mismo un sistema operativo (SO) básico que incluye el kernel. (VMware HA (o «alta disponibilidad») agrupa las máquinas virtuales y los hosts en los que residen en un clúster. Los hosts del clúster se supervisan y, en caso de fallo, las máquinas virtuales de un host defectuoso se reinician en hosts diferentes. VMware HA permite a las empresas proporcionar alta disponibilidad a cualquier aplicación que se ejecute en una VM.
Cada máquina virtual se encapsula en un pequeño conjunto de archivos en un único directorio. Por lo tanto, la recuperación de desastres se simplifica en gran medida; toda la VM puede reflejarse de forma remota y recuperarse fácilmente en caso de desastre.