La tecnología RAID fue definida por primera vez en 1987 por un grupo de informáticos
de la Universidad de California, Berkeley. Este grupo estudió la posibilidad de usar
dos o más discos que aparecieran como un único dispositivo para el sistema.
En 1988, los niveles RAID 1 a 5 fueron definidos formalmente por David A. Patterson,
Garth A. Gibson y Randy H. Katz en el ensayo "Un Caso para Conjuntos de Discos
Redundantes Económicos (RAID)" (A Case for Redundant Arrays of Inexpensive Disks
(RAID)), publicado en la Conferencia SIGMOD de 1988 (págs. 109-116) PDF original.
El término «RAID» se usó por vez primera en este ensayo, que dio origen a toda la
industria de los conjuntos de discos.
Así pues una RAID sirve para crear un único volumen lógico, el cual físicamente
esté compuesto por varios discos físicos. Dependiendo de que modo de RAID utilicemos,
ésto nos servirá para conseguir simplemente un volumen de capacidad mayor, o para
conseguir un volumen con mayor seguridad contra fallos de hardware de los discos que
lo componen gracias al almacenamiento redundante de estos.
NOTA: Hay que tener en cuenta que cuando hablamos de Software RAID, siempre
que hablamos de discos debemos entender que hablamos de particiones.
dijo:Modo Lineal (Linear mode)
Dos o más discos se combinan en un único dispositivo físico. Los discos se «adjuntan» unos a otros de tal manera que las escrituras en el dispositivo RAID primero llenarán el disco 0, a continuación el disco 1 y así sucesivamente. Los discos no tienen porqué ser del mismo tamaño. De hecho, los tamaños no importan para nada aquí. Se trata de una simple concatenación de discos
No existe redundancia en este nivel. Si un disco falla perderá toda su información con toda probabilidad. Sin embargo, puede tener suerte y recuperar algunos datos, ya que el sistema de ficheros simplemente habrá perdido un gran puñado de datos consecutivos.
El rendimiento de las lecturas y las escrituras no se incrementará para lecturas/escrituras individuales. Pero si varios usuarios usan el dispositivo, puede tener la suerte de que un usuario use efectivamente el primer disco y el otro usuario acceda a ficheros que por casualidad residan en el segundo disco. Si esto ocurre, verá un aumento en el rendimiento.
dijo:RAID0 (Striped)
También llamado modo striping o de distribución por bandas. Como el modo lineal salvo que las lecturas y escrituras se realizan en paralelo en los dispositivos. Éstos deben tener aproximadamente el mismo tamaño. Puesto que todos los accesos se realizan en paralelo, los discos se llenan por igual. Si un dispositivo es mucho mayor que los otros demás, el espacio extra se utilizará en el dispositivo RAID durante las escrituras en el extremo superior, aunque sólo se accederá a este disco más grande. Naturalmente, esto perjudica el rendimiento.
Como en el modo lineal, tampoco hay redundancia en este nivel. A diferencia del modo lineal, no será capaz de recuperar ningún dato si un disco falla. Si elimina un disco de un grupo RAID-0, el dispositivo RAID no perderá simplemente un bloque consecutivo de datos, sino que se llenará con pequeños agujeros por todo el dispositivo.
El rendimiento de las lecturas y las escrituras se incrementará, ya que las lecturas y las escrituras se realizan en paralelo sobre los dispositivos. Normalmente, ésta es la razón principal para usar RAID-0.Si los buses a los discos son suficientemente rápidos, puede obtener casi N*rendimiento de cada disco MiB/seg.
dijo:RAID1 (Mirrored)
Este es el primer modo que realmente tiene redundancia. RAID-1 se puede usar en dos discos idénticos. Este modo mantiene en un disco un duplicado exacto de la información del otro disco.
Si uno falla, los datos permanecerán intactos, puesto que tendremos el otro disco.
Normalmente, el rendimiento de las lecturas es la suma de los rendimientos de los discos, mientras que el rendimiento de las escrituras es el mismo que el de un único dispositivo o, tal vez, incluso menos. Las lecturas se pueden hacer en paralelo pero, cuando se escribe, la CPU debe transferir 2 veces la cantidad de datos que normalmente transferiría (se deben enviar 2 copias idénticas de todos los datos, una a cada disco).
dijo:RAID3 y RAID4
Este nivel de RAID no se usa con mucha frecuencia. Se puede usar sobre 3 o más discos. En lugar de duplicar completamente la información, guarda información de paridad en un único disco y escribe datos a los otros discos de forma parecida a un RAID-0. Ya que uno de los discos se reserva para información de paridad, el tamaño del array será (N-1)*S, donde S es el tamaño del disco más pequeño del array. Como en un RAID1, los discos deben ser del mismo tamaño, o de lo contrario tendrá que aceptar que el valor de S en la fórmula (N-1)*S anterior será el tamaño del disco más pequeño del array.
Si un disco falla, y no es el de paridad, se puede usar la información de paridad para reconstruir todos los datos. Si dos discos fallan, se perderá toda la información.
La razón por la que estos niveles no se usan con mucha frecuencia es que la información de paridad se guarda en un único disco. Esta información se debe actualizar cada vez que se escribe en uno de los otros discos. Por eso, el disco de paridad se convertirá en un cuello de botella si no es mucho más rápido que los otros discos.
dijo:RAID5
Este es quizás el modo RAID más útil cuando uno desea combinar un mayor número de discos físicos y todavía conservar redundancia. RAID5 se puede usar sobre 3 o más discos. El tamaño del dispositivo RAID5 resultante será (N-1)*S, tal y como sucede con RAID4. La gran diferencia entre RAID5 y RAID4 es que la información de paridad se distribuye uniformemente entre los discos participantes, evitando el problema del cuello de botella del RAID4.
Si uno de los discos falla, todos los datos permanecerán intactos, gracias a la información de paridad. Si dos discos fallan simultáneamente, todos los datos se perderán. RAID5 puede sobrevivir a un fallo de disco, pero no a dos o más.
El rendimiento de lectura de RAID5 es equiparable al de RAID0 con el mismo numero de discos. Exceptuando los bloques de paridad, los cuales pueden causar un ligero relentimiento en las escrituras (en las lecturas no se usan los bloques de paridad de no ser que algún disco falle).
dijo:RAID6
La idea es la misma que RAID5, solo que se agrega un segundo algoritmo de paridad a parte del XOR normal, por tanto permite la perdida de 2 discos fisicos, el tamaño del RAID6 resultante será (N-2)*S.
Existen multitud de modos de RAID basados en la convención de diferentes RAIDs,
es decir se utiliza un conjunto de RAIDs en un determinado sistema para crear una
nueva RAID en -normalmente- otro sistema. Algunos de éstos sistemas son: RAID01,
RAID10, RAID03, RAID30, RAID50, RAID51 (también llamada RAID53), RAID60, y RAID 100.
Para la creación y administración de una RAID por software necesitaremos el
paquete mdadm. La antigua colección de utilidades para RAID de los paquetes
raidtools y raidtools2 se ha dejado de usar actualmente puesto que dependía de
un fichero de configuración (/etc/raidtab) difícil de mantener, y sus funciones eran
limitadas. Desde agosto de 2001, existe la herramienta mdadm (multiple devices admin),
éste paquete nos permite gestionar las RAIDs por software de una manera mucho
mas simple y robusta. Actualmente se ha convertido en un estándar.
En principio el paquete mdadm viene instalado por defecto en Ubuntu.
Asimismo si no disponés del paquete instalado podés instalarlo con el siguiente comando:
$ sudo apt-get install mdadm