RAID 6: Una combinación de tolerancia a fallos y rendimiento

Written By: Ontrack

Date Published: 11/06/2023

RAID 6: Una combinación de tolerancia a fallos y rendimiento

Healthy RAID 6 Array

Una matriz RAID es una colección de discos, que están configurados por software o hardware de cierta manera para proteger los datos, mejorar el rendimiento o ambos. El término RAID se refiere a una matriz redundante de discos independientes. Hay muchos tipos diferentes de matrices RAID que afectan a las velocidades de lectura y escritura, así como la redundancia o la tolerancia a fallos.

RAID 6, como el RAID 5, también se desarrolló en la década de 1980. Una matriz RAID 6 construida con un controlador de hardware se usa a menudo como un buen compromiso entre redundancia y velocidad. Una matriz RAID 6 requiere al menos cuatro discos y ofrece mayores velocidades de lectura con un impacto mínimo en el rendimiento de escritura. Este nivel de RAID puede tolerar dos fallos de disco.

¿Cómo es una Configuración de RAID 6?

RAID 6 es similar al RAID 5 ya que ambas matrices utilizan paridad y división de datos. La diferencia es que el RAID 5 tiene una instancia de paridad, RAID 6 tiene dos franjas de paridad. Esto permite que una matriz RAID 6 resista fallos de dos unidades en lugar de sólo una. Los datos contenidos en la primera franja de paridad en la mayoría de las configuraciones de RAID 6 son un XOR de los datos de las otras franjas, la segunda franja de paridad suele ser un algoritmo propietario.

Las matrices RAID 6 deberán dedicar dos discos de datos a la paridad. Esto significa que una matriz RAID 6 sigue siendo más barata de implementar que una RAID 10 del mismo tamaño, ya que solo se asignan dos unidades de espacio a la paridad. RAID 6 también permite más flexibilidad y mayores tamaños de volumen que RAID 1.

Healthy RAID 6 Array

En el ejemplo anterior, tenemos una matriz RAID 6 de cinco unidades como la que vería en un servidor Dell PowerEdge. El primer bloque de paridad (Paridad 1) que se encuentra en la Unidad 4 para la primera franja, es el XOR de los datos de los bloques denominados Datos 1 (Unidad 1), Datos 2 (Unidad 2) y Datos 3 (Unidad 3).

El segundo bloque de paridad (Paridad 2) que se encuentra en la Unidad 5 para la primera franja, es una combinación de los datos de Datos 1, Datos 2, Datos 3 y puede incluir la Paridad 1 según el fabricante y el controlador. Estos cálculos de paridad se repiten en todas las franjas de datos utilizando diferentes combinaciones de unidades.

¿Qué hace la paridad en una matriz RAID 6?

La paridad es una característica matemática que brinda protección adicional porque permite la reconstrucción de datos perdidos. Tener un bloque de paridad como parte de cada franja de datos permite que el sistema se reconstruya en caso de que una o más de las unidades fallen o se desconecten. El controlador RAID o el software RAID pueden prácticamente reconstruir cualquier segmento de datos que falte mediante el uso de la paridad.

En el siguiente ejemplo, vemos que la unidad 2 falló.

RAID 6 with One Failed Drive

Al perder una unidad, la matriz entrará en un modo degradado. En el modo degradado, el controlador RAID combinará las franjas de datos con paridad según sea necesario para presentar buenos datos al sistema operativo. En nuestro ejemplo, el controlador combinará Datos 1, Datos 3 y Paridad 1 en la primera franja para reemplazar los datos que faltan en los Datos 2. En la segunda franja, los Datos 4, los Datos 6 y la Paridad 1 se utilizan para reemplazar los Datos 5. En las franjas tercera y cuarta, no se necesita paridad ya que todas las unidades de datos están presentes.

Con dos bloques de paridad por banda, RAID 6 permite que dos unidades fallen. En el siguiente ejemplo, vemos que las unidades 2 y 4 fallaron.

RAID 6 with Two Failed Drives

Al perder dos unidades, el controlador usará las franjas de datos combinadas con Paridad 1 y Paridad 2 para recrear los datos que faltan. En nuestro ejemplo, el controlador combinará Datos 1, Datos 3 y Paridad 2 en la primera franja para reemplazar los datos que faltan en los Datos 2. En la segunda franja, los Datos 4, los Datos 6 y la Paridad 1 se utilizan para reemplazar los Datos 5. En la tercera franja, Datos 7, Datos 9 y Paridad 2 se utilizan para reemplazar Datos 8.

¿Cómo funciona un repuesto dinámico en una matriz RAID 6?

RAID 6 Healthy Array with Hot Spare

Un repuesto dinámico es una o más unidades adicionales que se pueden agregar a una matriz RAID 6 para permitir una recuperación rápida en caso de que falle una unidad. En el ejemplo anterior, vemos una matriz RAID 6 saludable con un solo repuesto activo agregado. Tenga en cuenta que el repuesto dinámico no contiene ningún dato hasta que se produce un error y se necesita la unidad.

Si hay un repuesto dinámico disponible para el sistema, el controlador comenzará automáticamente a reconstruir los datos faltantes de la unidad fallida en el repuesto dinámico en caso de fallo.

RAID 6 One Failed Drive with Hot Spare

El ejemplo anterior muestra que la unidad 2 falló. El sistema usó el repuesto dinámico y reconstruyó todos los datos faltantes de la unidad 2 en el repuesto dinámico. La unidad 2 ahora se puede quitar del sistema y reemplazar con una nueva unidad, ya sea como un nuevo repuesto dinámico o como una nueva unidad 2 y los datos se pueden reconstruir en ella.

¿Por qué utilizar repuestos dinámicos? Cuando falla una unidad, el tiempo es esencial en la reconstrucción. La ejecución en modo degradado ejerce una presión adicional sobre las unidades restantes y puede causar fallos adicionales si no se corrige rápidamente. También es posible que las unidades de un lote de fabricación similar tengan defectos similares, por lo que es posible que otras fallen pronto. Tener uno o más repuestos dinámicos disponibles permite tiempos de recuperación más rápidos.

¿Qué causa los fallos en las matrices RAID 6?

Hay varias razones por las que una matriz RAID 6 puede fallar. Estas son varias de las principales causas que vemos en Ontrack.

  • Múltiples fallos de disco
  • Problemas de energía (picos de energía o bajo voltaje)
  • Controlador RAID o fallo del software RAID
  • Corrupción de RAID (incluida la corrupción lógica)
  • Daños por inundación/agua o incendio
  • Reconstrucciones fallidas o parciales

¿Es posible la recuperación de datos de RAID 6?

La recuperación de datos es posible desde una matriz RAID 6. Si bien la recuperación de datos puede ser compleja y más desafiante con una matriz RAID 6, generalmente finaliza con éxito. El mayor desafío suele ser el algoritmo patentado que se utiliza para crear el segundo bloque de paridad, ya que cada fabricante lo implementa de manera diferente y, a menudo, se necesita un desarrollo personalizado para investigar y desarrollar herramientas que lo respalden.

Hay varias razones para la pérdida de datos y el esfuerzo de recuperación para cada una de ellas es diferente. A continuación, se muestran algunos ejemplos:

Recuperación de datos con una unidad fallida

RAID 6 with One Failed Drive

Al igual que una matriz RAID 5, si una unidad falla en una matriz, se puede usar la paridad para reconstruir los datos que faltan. En este escenario, Ontrack normalmente puede recuperar el 100 % de los datos. Al recibir una matriz que no funciona, se crean imágenes de todas las unidades de la matriz en la sala limpia (incluida la unidad fallida, si es posible). Luego, la matriz se reconstruye virtualmente utilizando esas imágenes. Una vez que se ensambla el RAID, el sistema de archivos o el volumen se escanea en busca de corrupción, se repara virtualmente y se extraen los datos. La unidad fallida a menudo no se necesita, ya que las bandas de datos que faltan se pueden reconstruir a partir de la paridad.

Recuperación de datos con dos unidades fallidas

RAID 6 with Two Failed Drives

A diferencia de la matriz RAID 5, donde se necesitan todas las unidades excepto una para que funcione, RAID 6 está diseñado para permitir el fallo de hasta dos discos sin ningún impacto en los datos. El proceso de recuperación de varias unidades fallidas es similar al fallo de una sola unidad. Al recibir una matriz no funcional, se crean imágenes de las unidades en la sala limpia, incluidas las unidades fallidas. Si los datos de las unidades están actualizados, es posible que no se necesiten las unidades fallidas para obtener una recuperación completa de la matriz. Luego, la matriz se reconstruye virtualmente utilizando esas imágenes.

En el ejemplo anterior, los datos 1, los datos 3 y la paridad 2 de la franja uno se usan para reconstruir los datos 2. Los datos 4, la paridad 1 y los datos 6 se usan para reconstruir los datos 5 en la segunda franja. Los Datos 7, Paridad 2 y Datos 9 se utilizan para reconstruir los Datos 8 en la tercera franja.

Una vez que la matriz RAID se vuelve a ensamblar virtualmente, el sistema de archivos o el volumen se analiza en busca de corrupción. Además de la corrupción del sistema de archivos, los ingenieros también buscan datos que no son consistentes o están desactualizados. Esto ocurre cuando hay un lapso de tiempo entre los fallos de la unidad y una de las unidades se degrada. Los ingenieros de recuperación de datos necesitan experiencia en el reconocimiento de este tipo de daño para que puedan reparar virtualmente el volumen y extraer buenos datos de archivo.

Recuperación de datos de varias unidades fallidas

Es posible obtener una recuperación completa de una matriz RAID 6 incluso si hay más de dos fallos en la unidad.

RAID 6 Multiple Failed Drives

En el ejemplo anterior, tenemos una matriz RAID 6 con daños en algunas áreas de los cinco discos. Si no hay más de dos bloques fallidos por franja, es posible reconstruir los datos que faltan. Ontrack generará la mayor cantidad posible de imágenes de cada unidad.

Luego, la matriz se reconstruye virtualmente utilizando esas imágenes. En el ejemplo anterior, los Datos 1, Datos 3 y Paridad 2 de la franja uno se usa para reconstruir los Datos 2. No se necesita paridad para la franja 2 ya que los Datos 4, Datos 5 y Datos 6 están todos intactos. Los Datos 7, Paridad 2 y Datos 8 se utilizan para reconstruir los Datos 9 en la tercera franja.

Una vez que la matriz RAID se vuelve a ensamblar virtualmente, el sistema de archivos o el volumen se analiza en busca de corrupción. Los datos recuperables se extraen de la matriz virtualmente reconstruida a nuevos medios para volver a ponerlos en producción.

Suscribirse

KLDiscovery Ontrack SL, Pº del Club Deportivo 1, edif. 4, 1ª planta, Pozuelo de Alarcón, Madrid, 28223, España (Mostrar todas las ubicaciones)