Implementando NAS + RAID económico, casero y basado en GNU/Linux, Entrega II – ¿Que són los RAID y que tipos y categorías existen?

En la pasada entrega expliqué mi intención de montar y configurar un RAID desde 0 para finalmente disponer de un NAS, así que en esta entrega vamos a ver que son los RAID y que tipos y categorías hay.

Que es un RAID?

Un Redundant Array of Independent Disks o un conjunto redundante de discos independientes es un sistema de almacenamiento que consta de dos o mas discos físicos que nuestro Sistema Operativo ve como si fueran una sola unidad lógica.

RAID por Hardware.

RAID por Hardware.

En este artículo voy a explicar los tipos de RAID que hoy en día siguen implementándose tanto a nivel empresarial como doméstico, aunque en Wikipedia tenéis la descripción de todos y cada uno de ellos.

Para que sirven los RAID?

Depende del tipo de RAID que escojamos nos puede servir para una cosa o para otra. Algunos RAID guardan paridad de los datos, para que en caso de que uno de los discos se dañe, añadiendo uno nuevo y en blanco al sistema, podamos restaurarlo y no perder ningún dato, otros arreglos de discos no guardan paridad, pero al leer y escribir simultáneamente en varios discos que el Sistema Operativo ve como uno solo, ganamos velocidad de lectura y escritura en ese sistema de archivos.

Otros tipos de RAID convinan las dos opciones anteriormente mencionadas.

Normalmente los discos o las particiones que componen un RAID deben ser del mismo tamaño.

Nomenclatura de unidades lógicas RAID a nivel de Sistema en GNU/Linux

En GNU/Linux las unidades lógicas correspondientes a los arreglos con varios discos basados en software siguen una nomenclatura /dev/md* en vez de /dev/sd* que es la usada para las particiones standard.

Categorías de RAID

Los RAID pueden configurarse por Software o Por Hardware, es decir desde un programa que corre por encima del Sistema Operativo, o desde el firmware de una controladora RAID por hardware que trabaja de forma independiente al SO.

Tambien es posible comprar en una tienda un NAS/RAID con capacidad para dos o tres discos con todo ya configurado, pero como expliqué anteriormente, prefiero hacerlo yo y ganar en seguridad y modularidad.

RAID por Software

El RAID por Software es el que podemos configurar gracias a un programa, es decir, un paquete de Software que corre por encima del Sistema Operativo, como por ejemplo mdadm en GNU/Linux o el Asistente para nuevos volúmenes RAID en Windows.

Una de las ventajas de esta categoría de RAID es que si el Sistema Operativo falla, podemos conectar los dispositivos de almacenamiento, discos duros en mi caso, a cualquier otro PC con el mismo Sistema Operativo de base, y disponer de la información inmediatamente.

RAID por Hardware

El RAID por Hardware es el que se configura mediante un dispositivo físico que actúa como controlador de los discos de una forma independiente al sistema operativo.

Normalmente se configura a través de un Firmware al que podemos acceder con alguna de las teclas de función del teclado, normalmente F11 o F12, en el arranque del PC y desde allí configurar el RAID para que el Sistema Operativo lo reconozca directamente como un solo disco físico.

Algunas placas base (sobretodo las mas modernas) tienen soporte para RAID en todos o algunos de sus conectores SATA.

En las especificaciones se indica los tipos de RAID que soporta, y una de sus ventajas es el incremento en la velocidad de lectura/escritura, pero si se daña la tarjeta controladora o alguno de sus puertos, deberemos encontrar una con el mismo Chipset para acceder a la información.

Tipos de RAID

RAID 0

El RAID 0 o volumen seccionado distribuye los datos del sistema de archivos equitativamente entre dos o mas discos, este tipo de RAID no es redundante, así que si falla uno de los discos que lo componen perderemos datos.

Esquema RAID 0 sacado de la Wikipedia.

Esquema RAID 0 extraído de la Wikipedia.

Su finalidad de uso mas común es aumentar el rendimiento del sistema, o también puede servir para reaprovechar volúmenes de poca capacidad creando con ellos uno solo de mayor tamaño y rendimiento, ya que escribimos y leemos simultáneamente en todos los discos a la vez.

Con este tipo de RAID el volumen lógico es del tamaño de la suma de los discos que lo componen, por ejemplo si creamos un RAID 0 con dos discos magnéticos de 320GB tendremos un dispositivo lógico de 640GB.

RAID 1

El RAID 1 o volumen en espejo mantiene una copia exacta de los mismos datos en todos los discos físicos que lo componen, eso significa que este RAID si es redundante, así que solo perderemos datos en el extraño caso de que se dañe la totalidad de discos físicos que lo componen.

Esquema RAID 1 extraído de Wikipedia.

Esquema RAID 1 extraído de Wikipedia.

Su finalidad mas común es la de intentar garantizar la integridad de los datos, aumentando la tasa de lectura y escritura iniciales, o en el peor de los casos manteniendo una media de las tasas de los discos físicos que lo componen.

En este tipo de RAID podríamos decir que a cambio de fiabilidad perdemos la posibilidad de aprovechar el tamaño de los discos físicos que lo componen, ya que en este caso al existir redundancia, si el sistema lo vamos a crear con dos discos, o dos particiónes de 320GB nuestro RAID será también de 320GB.

Con la ventaja de que si uno de los discos se daña, solo deberemos reemplazarlo y emparejarlo con el otro para así restaurar el RAID sin perder ningún dato.

RAID 5

El RAID 5 o RAID distribuido con paridad reparte los datos en bloques alojados en diferentes discos físicos, pero cada disco guarda un bloque de paridad de alguno de los demás discos, que viene a ser como un “resumen de la información que otro disco contiene”, o algo parecido a un checksum.

Esquema RAID 5 extraído de Wikipedia.

Esquema RAID 5 extraído de Wikipedia.

Este tipo de RAID necesita como mínimo 3 discos físicos para ser implementado, y no tiene límite teórico de unidades, pero se suele limitar para evitar pérdida de los datos, en el siguiente párrafo veremos porqué. Lo mas normal es implementarlo mediante RAID por Hardware, y no proporciona demasiado rendimiento, ya que cada vez que escribamos en alguno de los discos, se recalculara el bloque de paridad correspondiente a ese bloque que hemos modificado.

Los bloques de paridad solo se leen cuando hay un error en algún sector con datos y debe ser restaurado, además si falla simultáneamente mas de un disco perderemos la totalidad de los datos debido a que será imposible restaurar su contenido por la falta de los bloques de paridad.

RAID anidados

Los RAID anidados se componen de otros RAID en vez de discos físicos y nos permiten combinar las ventajas de distintos tipos de RAID.

Podemos representarlos como capas, con el RAID anidado en la capa superior, los RAID en la capa intermedia, y los discos físicos en la inferior, y se suelen combinar tipos de RAID redundantes para garantizar la integridad de los datos, con RAID 0 para aumentar el rendimiento.

Debido al gran tamaño de los discos actuales, la probabilidad de fallo en estos tipos de RAID es cada vez mayor.

RAID 0+1

El RAID 0+1 o espejo de divisiones, se utiliza para replicar y compartir datos entre diferentes discos.

Para implementar este tipo de RAID, primero debemos crear dos conjuntos de RAID 0, para finalmente implementar un RAID 1 con ellos, así cuando un volumen físico falla, los datos perdidos pueden ser recuperados del otro conjunto RAID 0 para reconstruir el conjunto global.

Esquema RAID 0+1 extraído de Wikipedia.

Esquema RAID 0+1 extraído de Wikipedia.

Pero si queremos añadir un disco mas al conjunto, deberemos hacerlo en cada uno de los subconjuntos, así que los discos deben añadirse de dos en dos en caso de ampliación, además este tipo de RAID solo soporta el fallo de uno de sus discos simultáneamente, es decir que si falla un disco de cada arreglo RAID 0, o dos del mismo arreglo, perderemos todos los datos y si uno de los discos falla todos los discos del conjunto participarán en la reconstrucción del conjunto.

RAID 10

El RAID 10 o RAID 1+0, también conocido como división de espejos es parecido a un RAID 0+1 con la excepción de que en este caso estamos implementando un RAID 0 a partir de dos RAID 1.

Esquema RAID 10 extraído de Wikipedia.

Esquema RAID 10 extraído de Wikipedia.

En cada división RAID 1 puede fallar uno de los dos discos sin llegar a perder datos, pero el disco fallido debe ser cambiado de inmediato, ya que si dejamos un único disco para uno de los conjuntos RAID 1, el RAID 10 pasa a actuar como un RAID 0 lo que significa que si falla un disco perderemos los datos del conjunto completo.

Para ampliar este tipo de RAID también deberemos añadir los discos de dos en dos.

Si te ha gustado puedes seguirme en Twitter, Facebook, Google+, Linkedin, o compartirlo con los botones ubicados debajo de esta publicación, si tienes cualquier pregunta o sugerencia no dudes en comentar.

Ayudanos a llegar a más lectores Share on LinkedInShare on FacebookTweet about this on TwitterShare on Google+Email this to someone

Deja un comentario