Presentado XRAID con implementación RAID para XFS

Christoph Hellwig, mantenedor de subsistemas DMA, KVM, Slab Allocator y arquitectura PowerPC en el núcleo de Linux, presentó el primer lanzamiento público de XRAID, una implementación de RAID declasificado con control de paridad, integrada en el sistema de archivos XFS. El proyecto se creó con el objetivo de añadir la posibilidad de utilizar RAID en dispositivos de almacenamiento zonificados, como los discos SMR (Shingled Magnetic Recording), y proporcionar una implementación de RAID de alto rendimiento para mantener la integridad de los datos. Además de los dispositivos zonificados, XRAID también es compatible con discos duros y SSD comunes, mostrando en estos últimos un aumento significativo en el rendimiento en comparación con mdraid (hasta 20 veces en escritura).

Para la distribución de información en los dispositivos en XRAID se utiliza un control de paridad declasificado, similar a dRAID en OpenZFS, donde no se dedican dispositivos separados para recuperación en caliente (hot spare), sino que los datos, la información de control de paridad y el espacio libre de respaldo (spare space) se distribuyen uniformemente entre todos los dispositivos. El proceso de lectura, escritura y recuperación en caso de fallos abarca todos los dispositivos disponibles, lo que aumenta el ancho de banda, reduce la carga en discos individuales, evita caídas de rendimiento notables durante fallos y acelera notablemente el proceso de reconstrucción del conjunto después de la adición o reemplazo de dispositivos.

Los RAID declasificados también facilitan la creación de conjuntos tolerantes a fallos con un número muy grande de discos. Durante el proceso de recuperación tras fallos, XRAID determina dinámicamente el orden de reconstrucción de los dispositivos, procesando en primer lugar las zonas con mayor pérdida de información redundante y reconstruyendo las zonas con datos antes que las zonas con información de control de paridad.

XRAID se desarrolla inicialmente con la posibilidad de utilizar unidades zonificadas, donde el espacio de almacenamiento se divide en zonas que componen grupos de bloques o sectores. En tales dispositivos, solo se permite la adición secuencial de datos con la actualización de todo el grupo de bloques. Por ejemplo, la zonificación de grabación se aplica en discos SMR (Shingled Magnetic Recording), donde el ancho de la pista es menor que el ancho de la cabeza magnética, y la grabación se realiza con un solapamiento parcial de la pista vecina, es decir, cualquier reescritura requiere la reescritura de todo el grupo de pistas.

Para admitir dispositivos zonificados en XRAID, se utiliza el asignador de bloques para dispositivos zonificados (zoned allocator) implementado en XFS y el núcleo de Linux, que utiliza un subvolumen de tiempo real (RT-subvolume) para organizar el almacenamiento separado de datos y metadatos (en las zonas con escritura secuencial, solo se almacena el contenido de los archivos, mientras que los metadatos del sistema de archivos se colocan en zonas normales o en unidades SSD adicionales).

En XRAID, los mecanismos de control de paridad RAID se aplican únicamente al contenido de los archivos, mientras que la redundancia para los metadatos se implementa utilizando los controladores ya existentes en el núcleo de Linux, por ejemplo, mediante la replicación utilizando MD RAID, lo que resulta más eficiente para los objetos pequeños que se actualizan en su lugar. La implementación de RAID se integra en XFS antes de los controladores de entrada/salida zonificados, que representan las zonas físicas de los dispositivos subyacentes en forma de zonas lógicas, similar a un dispositivo de bloques de múltiples capas.

El trabajo en XRAID ha estado en curso durante un año y medio, y aunque la implementación aún no está lista para su integración en la composición principal del núcleo, ya es adecuada para la prueba por parte de una amplia audiencia. En la implementación propuesta se admite de 0 a 2 niveles de paridad (se está desarrollando código para soportar 3 niveles o más). Para la gestión de XRAID, se ha añadido una nueva utilidad llamada «xraid» al conjunto de herramientas xfsprogs y se ha implementado soporte para XRAID en mkfs. Además, se han añadido capacidades para visualizar el mapeo de zonas lógicas a zonas físicas en la utilidad Zonar para la inspección de dispositivos zonificados.

Se han publicado los resultados de la prueba de rendimiento de XRAID en comparación con mdraid y btrfs, realizados para un array XRAID configurado con dos SSD WD DC-SN650 para metadatos (espejo basado en mdraid), seis discos SATA WD DC-HC590 de 26 TB y 6-21 discos zonificados WD DC-HC690 de 30 TB (SMR).





También se realizaron pruebas de XRAID en SSD no zonificados convencionales en una configuración con un Samsung PM9D3a de 4 TiB para metadatos y cinco Samsung PM9D3a de 4 TiB para RAID (4 + 1).





Fuente: opennet.ru
Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster