La idea básica del RAID es la de combinar discos de modestas
dimensiones y de coste reducido en una serie de discos que
superen en prestaciones las de un único disco grande y costoso.
Este conjunto de discos es visto por el ordenador como un
solo disco.
.
RAID es un método en el que la información se divide en varios discos,
usando técnicas como disk striping (RAID Level 0)
y disk mirroring (RAID level 1) para añadir
redundancia, baja latencia y/o alta velocidad de lectura y/o escritura,
maximizando también la recuperabilidad de los datos en caso de fallo
del sistema.
El concepto básico del RAID es que los datos pueden ser distribuidos
entre los discos del array de manera consistente.
Para hacer esto, los datos deben ser primero divididos en "chunks"
(a menudo de 32k o 64k,aunque también se pueden usar otros tamaños).
Cada chunk es escrito en los discos por turno.
Cuando los datos son leidos, el proceso sucede al contrario,
dando la impresión de que muchos discos son combinados en uno solo.
Aquellos de ustedes que necesiten controlar grandes cantidades de datos
(como los administradores de sistemas), se benificiarían del uso de la
tecnología RAID.
La primera razón para usar RAID es:
aumento de la velocidad
aumento de la capacidad de archivo
gran eficacia en recuperarse de un fallo del sistema
Las soluciones hardware gestionan el subsistema RAID independientemente del host,
presentandole a este un solo disco.
Un ejemplo de RAID hardware podría ser el conectado al controlador SCSI
que presenta al sistema un único disco SCSI. Un sistema RAID externo se
encarga de la gestión del RAID con el controlador localizado en el
subsistema externo de los discos. Todo el subsistema está conectado a
un host a través de un controlador SCSI normal y se le presenta
al host como un solo disco.
Existen también controladores RAID en forma de tarjetas que se
comportan como un controlador SCSI con el
sistema operativo, pero gestionan todas las comunicaciones reales entre
los discos de manera autónoma. En estos casos, basta con conectar los
discos a un controlador RAID como lo haría con un controlador SCSI,
pero después podrá configurarlo como un controlador RAID sin que el
sistema operativo aprecie la diferencia.
El RAID Software implementa los diferentes niveles de RAID en el código del kernel
que tienen que ver con la gestión del disco (block device). Ofrece además la solución
menos costosa:
Costosos controladores o chassis hot-swap
[1]
no se requieren, y el RAID software funciona con discos IDE menos costosos
así como con discos SCSI. Con las rápidas CPU de hoy en día, las prestaciones de
un RAID software pueden competir con las de un RAID hardware.
El driver MD del kernel de Linux es un ejemplo de que la solución
RAID es completamente independiente del hardware. Las prestaciones
de un RAID basado en el software depende de las prestaciones y de la carga del CPU.
El RAID además, ofrece el soporte para los niveles 0, 1, 4, 5, y lineales. Estos tipos
de RAID se comportan de la siguiente manera:
nivel 0 -- El RAID nivel 0, a menudo llamado
"striping," es una técnica orientada a las prestaciones de conversión de
datos "striped". Esto quiere decir que los datos que son escritos en el array,
son divididos en líneas y escritos en discos miembros del array. Esto
permite altas prestaciones de I/O con un bajo coste pero no proporciona
redundancia.
La capacidad de memorizar del array es igual a la capacidad total
de los discos miembros.
Nivel 1 -- El RAID nivel 1, o "mirroring," ha sido utilizado
desde hace mucho más tiempo con cualquier otra forma de RAID. El nivel 1
proporciona redundancia escribiendo datos idénticos en cada disco miembro del array,
dejando una copia "idéntica" en cada uno de los discos. El mirroring es muy
popular a causa de su simplicidad y el alto nivel de disponibilidad de datos
que tiene. El nivel 1 opera con dos o más discos que pueden utilizar una
modalidad de acceso paralelo para transferir de manera rápida datos de lectura,
pero más comunmente opera de manera independiente para ocuparse de altos valores
de transacciones I/O. El nivel 1 proporciona una alta fiabilidad y mejora las
prestaciones de las aplicaciones de lectura de datos pero con un coste
relativamente elevado.
[2]. La capacidad del array es igual a la capacidad
de un disco miembro del mismo array.
Nivel 4 -- El RAID nivel 4 utiliza la paridad [3]
concentrado en un solo disco para la protección de los datos. Está
más orientado a la transacción de I/O antes de que para la transferencia
de grandes ficheros. Ya que el disco dedicado a la paridad representa un inherente
cuello de botella, el nivel 4 se utiliza raramente sin usar la tecnología
write-back caching. A pesar de que el RAID de nivel 4 es una opción en
algunos esquemas de reparticionamiento RAID, no es una opción permitida
en la instalación RAID Red Hat Linux[4]. La capacidad del array es igual a la capacidad
de los discos miembros menos la capacidad de un disco.
Nivel 5 -- Es el tipo más común de RAID.
Distribuyendo la paridad entre algunos o todos los discos miembros,
el RAID nivel 5 elimina el cuello de botella inherente al nivel 4.
El único cuello de botella es el proceso del cálculo de la paridad.
Con las modernas CPU y el RAID software, esto no representa una
gran cuello de botella. Como con el nivel 4, los resultados son
prestaciones muy elevadas, con las lecturas que sustancialmente son
más rápidas que las escrituras. El nivel 5 se utiliza a menudo
con el write-back caching para reducir la asimetría.
La capacidad del array es igual a la capacidad de los discos miembros
menos la capacidad de un disco.
RAID lineal -- El RAID lineal es una simple
agrupación de discos de manera que se crea un disco virtual más grande.
En el RAID lineal, los chunk están dispuestos secuencialmente
y se pasa de un disco miembro al disco siguiente, tan solo una vez que el primer disco
ha sido completado en su totalidad. Este agrupamiento no tiene ninguna
ventaja en cuanto a prestaciones, pues es improbable que alguna operación
de I/O sea divida entre los discos miembros. El RAID lineal no ofrece
redundancia, y de hecho la fiabilidad disminuye -- si uno de los discos
se daña, el RAID en su totalidad no puede ser utilizado. La capacidad
es la total de todos los discos.
El RAID está disponible en las dos modalidades en las que se puede instalar: GUI y kickstart.
Podrá utilizar fdisk o el Disk
Druid para crear su configuración RAID, pero estas instrucciones
se enfocarán principalmente usando Disk Druid para completar
esta operación.
Antes de crear un dispositivo RAID, primero deberá crear particiones RAID utilizando
las siguientes instrucciones.
Sugerencia: Si utiliza fdisk
Si está utilizando fdisk para crear una partición RAID,
debe tener en cuenta que en vez de crear una partición del tipo 83,
que es Linux native, debe crear una partición del tipo fd (Linux RAID).
Crear una partición. En Disk Druid, elija
Add para crear una partición nueva (vea Figura E-1).
Figura E-1. title>Crear una Nueva Partición RAID
No podrá introducir un "punto de montaje" (podrá hacerlo una vez que cree
el dispositivo RAID).
Introducir el tamaño de la partición.
Seleccione Grow to fill disk si desea que la partición
ocupe todo el espacio libre disponible en el disco. En este caso, el tamaño
se aumentará y disminuirá dependiendo de las modificaciones hechas en las
otras particiones. Si selecciona más de una partición "growable", las
particiones competirán por el espacio disponible en el disco.
Introducir el tipo de partición RAID.
Finalmente, para Allowable Drives, seleccione el disco
donde será creado el RAID. Si tiene discos múltiples, todos los discos serán
seleccionados y deberá anular la selección de aquellos discos que
no desea tener en el array RAID.
Continue con estos pasos para crear tantas particiones como necesite
para la configuración RAID.
Figura E-2. Particiones RAID
Una vez que todas las particiones han sido creadas como RAID,
seleccione el botón Make RAID Device en la
pantalla principal de Disk Druid (vea
Figura E-2).
A continuación aparecerá la pantalla del Figura E-3 para que cree un dispositivo RAID.
Figura E-3. Crear un Dispositivo RAID
Antes de nada, introduzca un "punto de montaje".
Seguidamente, asegurese que el tipo de partición sea seleccionada como
Linux Native (que es la predefinida).
Elija su dispositivo RAID. Debería elegir md0
como primer dispositivo, md1 como segundo, y así sucesivamente
a menos que tenga una razón determinada para crear los dispositivos de manera diferente.
Los dispositivos RAID van del md0 al md7, y cada uno de ellos puede ser elegido una
sola vez.
Elija el tipo de RAID. Puede elegir entre RAID
0, RAID 1, y RAID
5.
Nota
Si está creando una partición RAID de
/boot, deberá elegir RAID nivel 1 y debe usar uno de los dos discos primeros(IDE primero, SCSI segundo).
Si no está creando una partición RAID de /boot,
y está creando una partición de /,
debe estar en RAID nivel 1 y debe usar uno de los dos discos primeros(IDE primero, SCSI segundo)..
Finalmente, seleccione aquellas particiones que vayan a ir en este array RAID (como en el Figura E-4) y después pulse Next.
Figura E-4. Crear un Array RAID
Desde aquí, podrá continuar el proceso de instalación. Remítase a la
Official Red Hat Linux Installation Guide para más información.
El RAID nivel 1 tiene un alto coste ya que escribe la misma información
en todos los discos del array, malgastando de este modo el espacio del disco.
Por ejemplo: ha configurado el RAID nivel 1 de manera que su
partición "/" (root) se expanda a traves de dos discos de 4GB. Tiene un total
de 8GB pero sólo puede acceder a 4 de los 8GB. Los otros 4GB se comportan
como un espejo de los primeros 4GB.
La información sobre la paridad es calculada en base al contenido
del resto de los discos miembros del array. Esta información puede ser
utilizada para la reconstrucción de datos cuando uno de los discos del
array se daña. Los datos reconstruidos pueden por tanto ser
utilizados para satisfacer las peticiones de I/O del disco
corregido, y para volver a escribir ese disco después de haber
sido reparado o sustituido.