¿RAID por hardware o RAID por software en Linux?

En la actualidad, la mayoría de placas base, aún las destinadas al mercado doméstico, tienen la opción de configurar los discos en RAID, y también tenemos la opción de comprar una controladora para nuestros discos.  La duda es, ¿es mejor el RAID por hardware que ofrecen estas controladoras o mejor hacerlo por software con mdadm?Últimamente he tenido la oportunidad de trabajar con ZFS en Solaris, y en poco tiempo he tenido multitud de problemas con controladoras de diferentes marcas, discos y configuraciones RAID.  En líneas generales, estas son mis conclusiones:

– El más probable punto de fallo de un sistema Raid es el propio disco.  Los discos domésticos son muchísimo más propensos a fallos que los destinados a empresas (enterprise), digo muchísimo y me quedo corto, así que si tus datos son importantes o vas a crear un raid que funcionará 24/7, mi recomendación es que compres discos enterprise.  Son mucho más caros, así que es posible que al final compres discos domésticos, pasemos al siguiente punto.

– El siguiente punto de fallo después del disco es la controladora.  La sobrecarga, el sobrecalentamiento o los propios bugs del software, que a menudo no se actualiza, pueden provocar fallos en la controladora.  Los más típicos son corrupción de  datos o lentitud de acceso, pero también puede suceder que determinados puertos dejan de funcionar o la controladora provoca errores en el propio sistema operativo.  A esto hay que añadir que muchas controladoras incorporadas en placa base son ‘fake’, lo que quiere decir que hacen los cálculos del raid por software.

– El último punto de fallo es el sistema raid por software.  Habitualmente este software es muy robusto y poco propenso a fallos y se corrigen los bugs mucho más a menudo que en los firmwares de las controladoras.  ZFS en Solaris o mdadm en Linux son sistemas muy pulidos y probados, poco propensos a fallos, exceptuando excepciones como por ejemplo, un procesador, placa base o memoria principal defectuosos.

ZFS está considerado como el mejor sistema de archivos para almacenar datos, dado que incorpora detección y corrección de errores, spare discs, snapshots y scrubbing, además de excelente rendimiento y capacidad casi infinita. La configuración habitual es dejar la controladora con todas las unidades en modo SINGLE (no utilizar el RAID por hardware) y hacer que ZFS se encargue del raid con la herramienta zpool.  ZFS detectará errores en el disco y autoreemplazará si hay discos de repuesto disponibles (spare discs).  Si la controladora o máquina mueren, montaremos los discos en otra máquina y recuperaremos los datos con zpool import, dado que los datos del RAID se almacenan en los propios discos.

mdadm está considerado como un RAID por software muy maduro y muy poco propenso a fallos.  Todos los fallos a los que yo he tenido acceso con mdadm se deben a una mala configuración o a un fallo de los propios discos.  Hay que tener en cuenta también que las controladoras suelen ser menos propensas a fallos cuando se definen las unidades como SINGLE y se configura el raid por software.  Si la controladora o la máquina mueren basta con instalar los discos en otro sistema Linux (da igual con qué controladora) e instalar mdadm, para tener acceso de nuevo al raid y recuperar los datos.

$ sudo apt-get install mdadm
$ cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdd1[0] sdc1[1]
1465005888 blocks super 1.2 [2/2] [UU]

Entonces, ¿hardware o software?

Indudablemente, en el caso de Linux: software. Esta configuración tiene todas estas ventajas:

– Mejor acceso a datos del Raid desde el Sistema Operativo.  Mejor control del raid.
– Mayores posibilidades de recuperación si la controladora o máquina mueren: el raid se puede mover fácilmente entre diferentes controladoras.
– Mayor velocidad, dado que las operaciones del raid se realizan por el procesador y memoria de la máquina, en lugar de hacerse en la controladora.  Mucho más rápido en raid 1 y raid 0.  Más rápido en Raid 5.
– Mayores posibilidades de configuración del raid: Raid-6, Raid-5e, Raid-6e, Raid-1+0, etc.
– Mejor detección de errores en disco, por el sistema de alertas por email del propio mdadm.
– Menor coste, en especial si decidimos adquirir una controladora dedicada.
– Menor propensión a fallos por problemas de versión de firmware.

Recomendaría el Raid por hardware sólo en estas circunstancias:

– El servidor va corto de CPU, por ejemplo, un servidor web con muchas peticiones.
– El servidor va a realizar constantes escrituras, por ejemplo, una base de datos de recogida de datos vía web.
– Se requiere que el raid esté el menor tiempo posible reconstruyéndose cuando un disco falla.
– Trabajamos para Adaptec, empresa fabricante de controladoras de disco.

13 Respuestas to “¿RAID por hardware o RAID por software en Linux?”


  1. 1 Leonardo 22 Oct 2012 a las 14:52

    Excelente Articulo!! me encanto la parte de . … .– Trabajamos para Adaptec, empresa fabricante de controladoras de disco. jajaj

    excelente!
    gracias

  2. 2 Oliver 16 Ene 2013 a las 10:45

    Excelente el Articulo, yo actualmente tengo montado un RAID 5 por Software en Windows Server 2008 R2 y algo esta fallando, porque me esta sincronizando de nuevo.. y generalmente un disco se desconecta, sera energia?

  3. 4 JORDI 20 Ene 2013 a las 20:45

    HOLA YO TENGO UNA DUDA COMO PUEDO MONTAR EL NAS ? ME VALE EL FREENAS YO TENGO UN P4 DE LOS ANTIGUOS Y CREO QUE VALE ESO. AUNQUE TAMBIEN TENGO UNA DUDA SI MI FUENTE DE ALIMENTACION SE ME APAGA CUANDO PONGO 5 DISCOS DE 2 TB Y ES DE 650W CUANDO LOS NAS TIENE UNA MAS PEQUEÑA… GRACIS

  4. 5 chufre 28 Feb 2013 a las 21:13

    Yo tenia un server con Raid 5. Marca LACIE. Uno de los discos tuvo falla fisica y perdi el arreglo raid. AL final, llame a una empresa de nombre Onretrieval, y recuperaron los datos. El problema fueron los costes ya que ademas de ser un servicio que tiene su valor, tuve que armar otro server…

    Saludos.

  5. 6 Matias Colli 8 Abr 2013 a las 14:48

    Excelente la explicación.
    MDADMIN funcionó siempre bien en todos los casos en base a mi experiencia.
    Matias Colli.

  6. 7 Jose Tapia 30 Sep 2013 a las 22:04

    Excelente articulo compañero, muchisimas gracias por compartirlo!

  7. 8 Joan Osorio 14 Abr 2014 a las 23:35

    la duda que tengo es la siguiente, tengo un Server DELL con 8 GB de Memoria Ram, prestando un servicio de Proxy con Squid3 y le tengo 4 discos puesto, configure un RAID1 de tal manera que dos de los discos replican a los otros dos, en caso de fallarme uno de sos discos y sea necesario poner otro totalmente en blanco, el automaticamente me replica el disco o tengo que hacer algo más?

  8. 10 Luis GP 6 Sep 2014 a las 1:53

    Es falso que los discos enterprise fallen menos, lo que pasa es que su firmware tiene caracteristicas especiales para no generar errores en arreglos RAID, cosa que los discos caseros no tienen. Un disco casero si detecta un error de datos puede ponerse offline por varios segundos, lo cual vuelve locas a algunas controladoras. Existen ahora lineas de discos no tan caros como por ejemplo el WD RED que están pensados para uso en arreglos RAID caseros que ahora son muy comunes. Yo en lo personal uso mucho el RAID de Linux (mdadmin) con discos Toshiba normales, con excelentes resultados.

    • 11 tatxem 18 Sep 2014 a las 15:19

      Bueno, intuyo que depende de la experiencia de cada uno. En mi caso estuve trabajando como administrador de storage basado en OpenSolaris y ZFS, que es uno de los mejores filesystems en cuanto a control y detección de errores. En mi caso tenía aproximadamente 6 máquinas con unos 24 discos domésticos cada una y unas 5 máquinas con 24 discos enterprise. La realidad era que no había semana que no tuviéramos que reponer un disco doméstico en el RAID (a veces fallaban dos discos a la vez en el mismo RAID), mientras que sólo tuve que cambiar un disco enterprise en meses.

  9. 12 Ruben Arno 14 Mar 2015 a las 16:36

    Hola
    Estoy investignado la experiencia de otros en el armado de arreglos raid para que duren, que se banquen escritura permanente y que se puedan escalar, viendo lo que hay en tecnologias me inclino por algunos discos SATA durables como la linea violeta de WD, y como segunda tecnologia la SAS, me han hablado mal de la tecnologia NAS porque me indican que hay mucha fallas por las velocidades mas altas; con la experiencia que tengo en servidores de areglo IBM y Dell , la verdad NO me generan confianza ya que ante un problema de rotura de disco o falla de hardware, el soporte solo esta si tenes un contrato, y sino tenes nada te tenes que arreglar, aparte de tener muchas limitaciones tecnicas y comerciales, o sea la experiencia con Dell fue mala, y con IBM no es mala si veo que funciona, pero NO es rapida, y esto me genera dudas a la hora de implementar en el futuro; por lo que pienso armar de prueba un Linux, estoy viendo la distribucion mas conveniente, no se que experiencia tienen ustedes, pense en un Debian para hacer manejo de RAID por Software, mi idea es usar RAID1, pero buscar un mohterboard o sumar controladoras de RAID para poder poner mas de un juego de RAID1 y hacer esto escalable, de lo que leo saco que con linux y controladora de software raid estamos bien, no se si habra alguna distribucion especifica; pero al leer me hace ruido que si voy a estar escribiendo permamentemente me conviene usar RAID de Hardware ? es asi en ese caso que controladoras recomiendan, y en el tema de controladoras hay que tener algun consejo mas que usar los discos simples, por ejemplo he leido que se usan baterias de backup para las controladoras aunque no tengo claro el motivo aun, sigo viendo, en este caso que el uso requiere de escritura permanente en el RAID1 SI O SI para mejorar el rendimeinto es conveniente la controladora de hardware o con el software podemos tener un buen rendimeinto ? Abrazos y gracias por compartir sus experiencias.
    Ruben Arno

    • 13 tatxem 16 Mar 2015 a las 16:37

      La configuración de un sistema de almacenamiento es una elección personal dependiendo de las necesidades. RAID 1 o RAID 10 ofrece las mayores velocidades de lectura, pero se pierde un 50% de espacio en disco. Es, por probabilidad, más confiable que otros sistemas, aunque el compromiso entre espacio y velocidad está más balanceado en RAID 5 ó RAID 6, por lo que suele ser el sistema más popular. Sobre una u otra tecnología también es una decisión personal, el Raid por software requiere más conocimientos técnicos en su mantenimiento que el raid por hardware, pero en mi experiencia las controladoras tienen bastante tendencia a fallos ante altas cargas de trabajo. Depende claro también de la marca de la controladora. Sobre la distribución Linux, Debian o RedHat (CentOS, etc.) son ambas apropiadas y a menudo la gente elige aquella en la que se siente más cómodo. También hay distribuciones Linux específicas para montar servidores de almacenamiento, con interfaces web que facilitan la administración del sistema. Un saludo.


Deja un comentario




Add to Technorati Favorites
Creative Commons License
Esta obra está bajo una licencia de Creative Commons

Archivos

Wikio – Top Blogs – Linux

Introduce tu dirección de email para suscribirte al blog y recibir notificaciones de nuevos posts en tu email.

Únete a otros 388 suscriptores