Página siguiente Página anterior Índice general

2. ¿Por qué RAID?

Puede haber muchas buenas razones para usar RAID. Unas pocas son: la posibilidad de combinar varios discos físicos en un único dispositivo ``virtual'' más grande, mejoras en el rendimiento y redundancia.

2.1 Detalles técnicos

El RAID de Linux puede funcionar sobre la mayoría de los dispositivos de bloques. No importa si usa dispositivos IDE, SCSI o una mezcla de ambos. Incluso algunas personas han usado el dispositivo de bloques de red (Network Block Device, NBD) con más o menos éxito.

Asegúrese de que el bus (o buses) de los discos son lo suficientemente rápidos. No debería tener 14 discos UW-SCSI en un único bus UW, si cada disco puede dar 10MB/s y el bus sólo puede sostener 40MB/s. Además, sólo debería tener un dispositivo por bus IDE. El uso de discos como maestro/esclavo es horrible para el rendimiento. IDE es realmente malo accediendo a más de un disco por bus. Naturalmente, todas las placas madre modernas tienen dos buses IDE, por lo que puede configurar dos discos en RAID sin comprar más tarjetas controladoras.

La capa RAID no tiene absolutamente nada que ver con la capa del sistema de ficheros. Puede poner cualquier sistema de ficheros sobre un dispositivo RAID, justo como con cualquier otro dispositivo de bloques.

2.2 Términos

La palabra ``RAID'' significa ``RAID software de Linux''. Este CÓMO no trata ningún aspecto de RAID hardware.

Cuando se describen configuraciones, es útil referirse al número de discos y sus tamaños. En todos los casos se usa la letra N para denotar el número de discos activos en el array (sin contar los discos de reserva). La letra S es el tamaño del disco más pequeño en el array, a menos que se diga otra cosa. La letra P representa el rendimiento de un disco en el array, en MB/s. Cuando se use, supondremos que los discos son igual de rápidos, que no siempre puede ser cierto.

Note que se supone que las palabras ``dispositivo'' y ``disco'' significan lo mismo. Normalmente, los dispositivos usados para construir un dispositivo RAID son particiones de discos, no necesariamente discos enteros. Pero, normalmente, combinar varias particiones de un disco no tiene sentido, por lo que las palabras dispositivo y disco simplemente significan ``particiones de discos diferentes''.

2.3 Niveles RAID

Lo siguiente es una breve descripción de lo que soportan los parches RAID de Linux. Parte de esta información es información RAID absolutamente básica, aunque he añadido unas pocas reseñas de lo que hay de especial en la implementación de Linux de los niveles. Simplemente, sáltese esta sección si conoce RAID. Regrese después cuando tenga problemas :)

Los actuales parches RAID para Linux soportan los siguientes niveles:

Discos de reserva

Los discos de reserva son discos que no forman parte del grupo RAID hasta que uno de los discos activos falla. Cuando se detecta un fallo de disco, el dispositivo se marca como ``defectuoso'' y la reconstrucción se inicia inmediatamente sobre el primer disco de reserva disponible.

De esta manera, los discos de reservan proporcionan una buena seguridad extra, especialmente, a sistemas RAID-5 que, tal vez, son difíciles de lograr (físicamente). Se puede permitir que el sistema funcione durante algún tiempo con un dispositivo defectuoso, ya que se conserva toda la redundancia mediante los discos de reserva.

No puede estar seguro de que su sistema sobrevivirá a una caída de disco. La capa RAID puede que maneje los fallos de dispositivos verdaderamente bien, pero las controladoras SCSI se podrían romper durante el manejo del error o el chipset IDE podría bloquearse, o podrían ocurrir muchas otras cosas.

2.4 Intercambio sobre RAID

No hay ninguna razón para usar RAID por razones de rendimiento del intercambio. El propio núcleo puede repartir el intercambio entre varios dispositivos si simplemente les da la misma prioridad en el fichero fstab.

Un buen fstab se parece a éste:

/dev/sda2       swap           swap    defaults,pri=1   0 0
/dev/sdb2       swap           swap    defaults,pri=1   0 0
/dev/sdc2       swap           swap    defaults,pri=1   0 0
/dev/sdd2       swap           swap    defaults,pri=1   0 0
/dev/sde2       swap           swap    defaults,pri=1   0 0
/dev/sdf2       swap           swap    defaults,pri=1   0 0
/dev/sdg2       swap           swap    defaults,pri=1   0 0
Esta configuración permite a la máquina intercambiar en paralelo sobre siete dispositivos SCSI. No necesita RAID, ya que esa ha sido una característica del núcleo desde hace mucho tiempo.

Otra razón para usar RAID para intercambio es la alta disponibilidad. Si configura un sistema para arrancar desde, por ejemplo, un dispositivo RAID-1, el sistema podría ser capaz de sobrevivir a un fallo de disco. Pero si el sistema ha estado intercambiando sobre el ahora dispositivo defectuoso, puede estar seguro de que se vendrá abajo. El intercambio sobre un dispositivo RAID-1 solucionaría este problema.

Sin embargo, el intercambio sobre RAID-{1,4,5} NO está soportado. Puede configurarlo, pero fracasará. La razón es que la capa RAID algunas veces reserva memoria antes de realizar una escritura. Esto produce un bloqueo mortal ya que el núcleo tendrá que reservar memoria antes de que pueda intercambiar, e intercambiar antes de que pueda reservar memoria.

Es triste pero cierto, al menos por ahora.


Página siguiente Página anterior Índice general