Esta sección mencionará algunos de los asuntos hardware involucrados en el funcionamiento de un RAID software.
En efecto, es posible hacer funcionar un RAID sobre discos IDE. También se puede obtener un rendimiento excelente. De hecho, el precio actual de los discos y las controladoras IDE hacen de IDE algo a tener en cuenta cuando se montan nuevos sistemas RAID.
Es muy importante que sólo use un disco IDE por bus IDE. Dos discos no sólo arruinarían el rendimiento sino que, también, el fallo de un disco a menudo garantiza el fallo del bus y, por tanto, el fallo de todos los discos de ese bus. En una configuración RAID tolerante a fallos (RAID de niveles 1, 4, 5) el fallo de un disco se puede manejar, pero el fallo de dos discos (los dos discos del bus que ha fallado debido a uno de ellos) dejará el array inutilizable. También, el dispositivo esclavo o la controladora IDE de un bus pueden confundirse de manera horrible cuando el dispositivo maestro del bus falla. Un bus, un disco, esa es la regla.
Existen controladoras IDE PCI baratas. A menudo puede obtener 2 o 4 buses por unos 80 dólares. Considerando el precio mucho más bajo de los discos IDE respecto a los discos SCSI, diría que un array de discos IDE podría ser una solución realmente buena si uno puede vivir con los relativamente pocos discos (unos 8 probablemente) que se pueden conectar a un sistema típico (a menos que, naturalmente, tenga muchas ranuras PCI para dichas controladoras IDE).
Éste ha sido un tema de actualidad en la lista linux-kernel durante algún tiempo. Aunque el intercambio en caliente de los dispositivos está soportado hasta cierto punto, todavía no es algo que se pueda hacer fácilmente.
¡No lo haga! IDE no soporta en modo alguno el intercambio en
caliente. Seguro, puede funcionar para usted si compila el soporte IDE
como módulo (sólo posible en la serie 2.2.x
del núcleo) y lo vuelve a
cargar después de que haya reemplazado el dispositivo. Pero también puede
terminar perfectamente con una controladora IDE frita y observará que el
período de dicho sistema fuera de servicio será mucho mayor que habiendo
reemplazado el dispositivo con el sistema apagado.
El principal problema, aparte de los aspectos eléctricos que pueden destruir su hardware, es que se debe reexplorar el bus IDE después de que se hayan intercambiado los discos. El manejador IDE actual no puede hacer eso. Si el nuevo disco es 100% idéntico al antiguo (geometría, etc.) puede que funcione incluso sin volver a explorar el bus pero, créame, aquí está caminando por el filo de la navaja.
El hardware SCSI normal tampoco es capaz de soportar intercambios en caliente. Sin embargo, puede que funcione. Si su manejador SCSI soporta la reexploración del bus y la conexión y desconexión de dispositivos, puede ser capaz de intercambiar dispositivos en caliente. Sin embargo, en un bus SCSI normal probablemente no debería desenchufar dispositivos mientras su sistema esté todavía encendido. Pero, le repito, puede que funcione simplemente (y también puede terminar con su hardware frito).
La capa SCSI debería sobrevivir si un disco muere, pero no todos los manejadores SCSI soportan esto todavía. Si su manejador SCSI muere cuando un disco cae, su sistema caerá con él y la conexión en caliente no será verdaderamente interesante entonces.
Con SCA debería ser posible conectar dispositivos en caliente. Sin embargo, no poseo el hardware para probar esto y no he oído de nadie que lo haya probado, por lo que verdaderamente no puedo dar ninguna receta de cómo hacer esto.
De todos modos, si quiere jugar con esto, debería conocer los aspectos internos de SCSI y de RAID. Por tanto, no voy a escribir aquí nada que no pueda comprobar que funciona. En cambio, sí puedo proporcionarle algunas pistas:
remove-single-device
en
linux/drivers/scsi/scsi.c
raidhotremove
y raidhotadd
No todos los manejadores SCSI soportan la conexión y desconexión de dispositivos. En la serie 2.2 del núcleo, al menos los manejadores de la controladoras Adaptec 2940 y Symbios NCR53c8xx parecen soportarlo, mientras que otras puede que sí o puede que no. Agradecería que alguien me pasara más información sobre esto...