Los sistemas de archivos en clúster

Cuando se trata de computadoras personales, la práctica más común es tener un dispositivo de almacenamiento conectado a una máquina dedicada con un sistema de archivos local que administra datos bajo el control del sistema operativo, como se explica en el artículo sobre los conceptos básicos del sistema de archivos. Sin embargo, este enfoque no siempre es efectivo en el caso de una infraestructura de nivel empresarial. Un sistema complejo puede incluir numerosas unidades que pueden estar ubicadas en diferentes servidores. Aun así, puede que se necesite que esos servidores operen juntos para completar una sola tarea exigente o que tengan acceso simultáneo a los mismos datos. Una forma de lograr esto es por medio de un sistema de archivos en clúster (o sistema de archivos de clúster). Este tipo de sistema hace que funcionen como una sola unidad de almacenamiento disponible para uso simultáneo, independientemente de los medios digitales subyacentes o de las computadoras en las que se alojen. Aquí puede obtener una comprensión básica de esta tecnología y conocer diferentes tipos de sistemas de archivos de clúster.


¿Qué es un sistema de archivos en clúster?

Un sistema de archivos regular no está diseñado para montarse en más de un servidor a la vez. Y hacer lo contrario puede dar lugar a graves incoherencias y dañar su estructura lógica. Por ejemplo, al no estar al tanto de las actividades uno de otro, dos servidores pueden intentar asignar el mismo bloque de almacenamiento a diferentes archivos, basándose en la información sobre bloques libres en su memoria. O puede que un servidor ya haya modificado ciertos bloques, pero otros ignoren este hecho y usen el contenido obsoleto en su lugar. Este problema se puede abordar mediante el uso de un sistema de archivos en clúster.

Es que un sistema de archivos en clúster se puede montar en varios servidores a la vez para que ellos puedan acceder a él a nivel de bloque y para que se administren como una sola entidad. Dicho sistema reúne las capacidades de almacenamiento disponibles y las comparte entre los servidores. Al mismo tiempo, se eliminan las discrepancias, ya que cada servidor permanece sincronizado con el estado actual del sistema de archivos, como si todas sus aplicaciones se estuvieran ejecutando en la misma máquina.

Dicho sistema de archivos funciona en los dispositivos de bloque (discos duros, SSD, matrizes, etc.), que se pueden conectar al servidor de forma directa o mediante los protocolos de red, como iSCSI, Fibre Channel, ATA over Ethernet (AoE), etc. e importarse al clúster. Su implementación más típica es en una red de área de almacenamiento (Storage Area Network o SAN).

En cuanto a la funcionalidad, un sistema de archivos en clúster es similar a cualquier tradicional, como, por ejemplo, NTFS de Windows de Microsoft o Ext4 de Linux. Asimismo, sirve como un mecanismo para organizar datos en un almacenamiento y sacarlos cuando sea necesario. La diferencia radica en que este se ubica en dos o más servidores que están conectados en un clúster. Y todos los miembros de este clúster pueden leer y escribir en el recurso de almacenamiento compartido, como si en sus unidades locales. Todos los cambios realizados por una máquina se vuelven inmediatamente visibles para el resto, de modo que se preserva la integridad de los datos. Y el propio sistema de archivos coordina las operaciones de entrada/salida y puede bloquearlas para evitar las llamadas colisiones. Para que esto sea posible, los metadatos esenciales del sistema de archivos pueden distribuirse entre todos los servidores de un clúster o almacenarse en un servidor de metadatos centralizado.

Los sistemas de archivos en clúster ofrecen muchos beneficios para los entornos de varios servidores. Simplifican la administración del almacenamiento, permitiendo gestionar todo el clúster de forma remota o desde cualquier servidor que forma parte del mismo. La mayoría de dichos sistemas ofrecen un gestor de volúmenes que permite provisionar la cantidad de capacidad necesaria. También facilitan la expansión del sistema con añadir un nuevo servidor. Algunos pueden proporcionar las funciones de seguridad avanzadas, como la replicación y las copias instantáneas (snapshots). Sin embargo, en el lado negativo, este modelo de almacenamiento a menudo implica el uso de equipos de alto costo, incluidos los arreglos de discos, los conmutadores, el cableado, los adaptadores de bus de host, etc., y puede ser difícil de mantener en vista de su arquitectura compleja.

Tipos comunes de sistemas de archivos en clúster

Al igual que los sistemas de archivos tradicionales, los de clúster son creados por diferentes proveedores y para varios escenarios de uso. Por lo tanto, pueden diferir significativamente en su diseño y capacidades. Los sistemas de ficheros de clúster más conocidos son los siguientes:

  • GFS2 (del inglés Global File System 2, Sistema de archivos global 2) – el principal sistema de archivos en clúster para Linux que fue proporcionado por RHEL. Ha reemplazado la versión original de GFS y es parte del paquete del núcleo desde 2009.

  • VMFS (del inglés Virtual Machine File System, Sistema de archivos de máquina virtual) – un sistema de archivos de clúster popular optimizado para almacenar archivos de máquinas virtuales. Fue desarrollado por VMware Inc. para su servidor VMware ESX y se emplea en los productos de virtualización de la empresa. Actualmente, hay seis versiones de VMFS que corresponden a las versiones del servidor ESX/ESXi.

  • OCFS2 (del inglés Oracle Cluster File System, Sistema de archivos de clúster de Oracle) – un sistema de archivos en clúster de uso general que fuer creado por Oracle y está integrado en el núcleo de Linux desde 2006.

  • SNFS (StorNext File System) – un sistema de archivos de clúster creado por Quantum Corporation que permite que las máquinas en Windows, Linux y Apple lean y escriban en el mismo volumen. Su nombre original era CentraVision File System (CVFS).

  • Xsan – un sistema de archivos en clúster de Apple para macOS que está basado en el sistema de archivos StorNext.

  • CXFS (del inglés Clustered XFS, XFS en clúster) – un sistema de archivos de clúster patentado que fue diseñado por Silicon Graphics (SGI) específicamente para el sistema operativo IRIX y que se implementa en los servidores basados en IRIX y Linux.

  • VxCFS (del inglés Veritas Cluster File System, Sistema de archivos en clúster de Veritas) – un sistema de archivos de clúster desarrollado por Veritas Technologies que se distribuye con sus productos VERITAS Storage Foundation. Se puede emplear en los servidores en IBM AIX, Linux, HP-UX y Solaris.

  • GPFS (del inglés General Parallel File System, Sistema de archivos general paralelo) – un sistema de archivos de clúster lanzado por IBM en 1998 para su sistema operativo AIX. Más tarde, se volvió disponible para los servidores de Linux y Windows.

Si desea ampliar sus conocimientos sobre los tipos de sistemas de ficheros utilizados en diferentes entornos, lea los siguientes artículos:

Última actualización: el 25 de abril de 2023

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