Visión general
Hay tres tipos comunes de RAID disponibles:
Software RAID
: Esto significa que su BIOS y otros sistemas operativos piensan que realmente tiene dos discos separados, pero puramente a nivel de software, su sistema operativo utiliza algún formato en disco específico del sistema operativo para RAID (duplicación, franjas, bits de paridad, lo que sea) . Todo el procesamiento lo realiza la CPU sin soporte de hardware.
BIOS RAID
: También conocido como "RAID falso" o "RAID host", esto significa que el firmware de su placa base (más específicamente, su controlador SATA / SAS) tiene soporte explícito para reconocer dispositivos RAID. En el nivel de dispositivo lógico ( lun
), sus múltiples discos duros aparecerán como una sola unidad para el sistema operativo. Esto es básicamente el controlador SATA / SAS que dice "Realmente solo tengo un disco duro. Bueno, en realidad son dos, pero shhhh, es solo uno, confía en mí". En otras palabras, el sistema operativo puede decirque es una configuración RAID, pero el sistema operativo * no es responsable del formato en disco de la paridad RAID / rayas / etc. Sin embargo, incluso en este modo, la CPU realiza todos los cálculos para los bits de paridad y las franjas. La placa base, el BIOS y el controlador SATA tienen la lógica suficiente para "combinar" físicamente los dispositivos y definir un formato en disco para el RAID. Pero carecen de un procesador dedicado para hacer los cálculos, y dependen del software dentro del sistema operativo para decirle a la CPU que los haga, por lo que aún debe informar a Linux sobre su BIOS RAID. (Intel Matrix / RST es un tipo de BIOS RAID).
Hardware RAID
: Aquí es donde tiene un chip dedicado cuyo único propósito es procesar los datos necesarios para RAID. El chip puede ser bastante poderoso; algunos controladores RAID de hardware en realidad tienen un chip de doble núcleo, similar a la CPU, aunque está optimizado específicamente para ejecutar un sistema operativo incorporado que es MUY rápido al hacer cálculos RAID, como bits de paridad para RAID-5 o bandas para RAID -0. Los discos duros están cableados físicamente a la tarjeta RAID, que proporciona un controlador SATA / SAS, generalmente una memoria caché de lectura y escritura en DRAM o Flash, colas de comando nativas y un procesador central integrado que realiza los cálculos más matemáticos. Estos chips de hardware cuestan entre $ 150 en el nivel de entrada y muchos miles para las placas posteriores RAID de centros de datos industriales.
Compatibilidad
En general, cada tipo de RAID está "vinculado" a algún aspecto particular que, cuando ese aspecto cambia, se encuentra con problemas de compatibilidad.
El RAID de software está vinculado al sistema operativo que definió el formato RAID. A veces, entre dos versiones diferentes del mismo sistema operativo, el formato RAID se rompe, lo que genera incompatibilidad. Aunque conceptualmente es posible que cualquier otro formato de software RAID sea compatible con cualquier otro sistema operativo, ya que es solo software , en la práctica, la mayoría de los sistemas operativos presentan formatos RAID incompatibles que solo ese sistema operativo puede reconocer. Sin embargo, la compatibilidad más amplia conocida son los formatos RAID utilizados de forma nativa por el kernel de Linux ( md
como está discutiendo en el OP), que también puede reconocer el software RAID de Windows, llamado Dynamic Disks.
BIOS RAID está vinculado a la placa base que posee. Puede ser posible mover unidades formateadas con un formato BIOS RAID particular a otra placa base con una solución BIOS RAID similar; por ejemplo, Intel RST a otro sistema con RST. Pero necesitará investigar cuidadosamente esto antes de hacer un movimiento, para asegurarse de que será compatible si le importa que sea compatible.
El RAID de hardware está vinculado a ese controlador de hardware específico, o una serie de controladores de hardware que el fabricante declara explícitamente como compatibles. Algunos proveedores mantienen un formato de disco RAID de hardware muy consistente que es compatible con muchas generaciones de controladores; otros cambian el formato con mayor frecuencia. Nuevamente, tendrá que investigarlo caso por caso.
Actuación
El rendimiento depende en gran medida de cómo configure los parámetros básicos de la matriz RAID, y menos de la solución específica. En general, los controladores RAID de hardware tienen el "techo" más alto para el máximo rendimiento; tampoco gravan su CPU casi tanto como las otras soluciones. Pero si elige el tipo de RAID incorrecto para su carga de trabajo, o el tamaño de banda incorrecto, o el enfoque de almacenamiento en caché incorrecto, un controlador RAID de hardware también puede ser extremadamente lento, más lento que una de las unidades que se ejecutan en modo no RAID. Lo mismo ocurre con las otras soluciones, que también pueden ser extremadamente lentas.
El RAID de software es el más adecuado para la configuración RAID-1, ya que la duplicación es una copia simple de los mismos datos en dos unidades, y no hay bits de paridad para calcular. RAID-5 en software RAID es horrible.
El rendimiento de BIOS RAID es generalmente comparable al RAID de software, pero se sabe que ciertos controladores de BIOS RAID y formatos de disco tienen errores o tienen un bajo rendimiento. En general, si tiene que elegir entre RAID de software y RAID de BIOS, el primero es un poco más prometedor para el rendimiento, especialmente si está ejecutando una distribución de Linux reciente.
El rendimiento de RAID de hardware puede ser increíblemente rápido debido a la potencia de procesamiento optimizada del procesador del controlador RAID, que como dije está diseñado para un alto rendimiento y en realidad puede venir como un chip de múltiples núcleos, por lo que esto es algo de hierro serio. El principal inconveniente es que pierde flexibilidad (no puede simplemente colocar las unidades en otra computadora sin un controlador RAID de hardware) y gastos. El RAID de hardware es el mejor nivel para utilizar RAID-5 o RAID-6, especialmente si tiene muchos discos (4 o más).
En general
Aunque BIOS RAID es compatible con Linux, no puedo recomendar que lo use.
Ahora, para responder directamente a sus preguntas, después de haberle dado la larga respuesta:
¿Qué me da RSTe en comparación con el software RAID de Linux normal?
Consulte las comparaciones anteriores entre RAID de software y RAID de BIOS. "RSTe" es una instancia de BIOS RAID; Linux md
RAID sin el -e imsm
es una instancia de software RAID.
Cuando está en modo RSTe, es la ruta de E / S RAID real (es decir, duplicación y creación de bandas) manejada por el md de Linux o por el BIOS.
Si te refieres a la ruta de datos, siempre es manejada por la CPU (y por lo tanto, el sistema operativo) a menos que tengas una tarjeta RAID de hardware dedicada. No creo que estos vengan en ninguna placa base, aunque algún chipset de servidor de gama alta podría sorprenderme ...
En particular, cuando uso "matriz RAID" (es decir, la RAID cubre particiones específicas en lugar de discos completos), ¿necesito instalar manualmente grub en ambos MBR?
No. De hecho, nunca necesita instalar GRUB en ambos MBR. Tomémoslo caso por caso:
RAID de software: simplemente elija un disco arbitrariamente para instalar GRUB y configúrelo en el orden del BIOS para que se inicie primero. Recuerde, puede duplicar particiones individuales si lo desea, por lo que los discos no tienen que ser bit por bit idénticos en RAID de software. Se puede tener un MBR con un gestor de arranque y no se puede tener nada en el MBR.
RAID del BIOS: El BIOS le dirá que es un "disco" (en realidad lo llamará lo que es, una matriz RAID), por lo que no podrá elegir dónde instalar GRUB. Cuando instala Linux en esto, el MBR (incluido el gestor de arranque) y cualquier otro sector de ambos discos se copiarán entre los dos discos. Entonces, a diferencia del RAID de software, el RAID del BIOS impone que ambos discos tengan que ser idénticos bloque por bloque, porque no puede separarlos como dos dispositivos lógicos; el controlador de disco dice que son UN dispositivo lógico, no dos. Por lo tanto, no puede decir "Quiero escribir algunos datos en la unidad 0 pero no en la unidad 1". Imposible. Pero es completamente posible con RAID de software.
RAID de hardware: el BIOS le dirá que es un "disco" y, en lo que respecta al BIOS, ni siquiera es particularmente consciente de que está tratando con múltiples discos. El controlador RAID extrae completamente todos los detalles del RAID del sistema operativo y el BIOS, excepto en la medida en que pueda configurar algunos controladores RAID de hardware utilizando algún tipo de protocolo personalizado dentro del sistema operativo. Pero los dispositivos son completamente inseparables de la capa de software, similar al BIOS RAID.
Editar: Actualización para obtener más respuestas a las preguntas
Todavía no entiendo un par de cosas. En primer lugar, sobre un BIOS RAID: puedo construirlo usando mdadm, por lo que Linux en realidad no me oculta los discos subyacentes.
Es raro y difícil de explicar. Básicamente, los discos aparecen como uno en ciertas capas y como dos en otras capas. Pero apuesto a que con BIOS RAID, cada disco no tendrá su propio nodo de dispositivo separado, por ejemplo, /dev/sda
y /dev/sdb
. Si lo hace, bueno, su BIOS RAID es diferente de lo que he visto.
sobre grub y MBR: si un RAID cubre particiones en lugar de discos, entonces todavía puedo ver los discos subyacentes. El MBR no está bajo RAID y, por lo tanto, debe instalar el gestor de arranque dos veces para poder arrancar en caso de falla del disco. ¿Es esto correcto?
No duele a instalar otra copia, pero en caso de un fallo de disco, arranque va a ser la última de su preocupación. En resumen, adelante y hágalo si lo desea, pero no es lo más importante. Instalar grub desde un CD en vivo en un HDD es fácil.
Es probable que los discos en RAID (especialmente si son de la misma marca y modelo, producidos en la misma fábrica y en funcionamiento uno al lado del otro a la misma temperatura) pueden fallar en una sucesión rápida, uno después del otro. Entonces, si un disco falló, probablemente no esté bien simplemente encogerse de hombros y colocar un disco nuevo y comenzar la reconstrucción: existe una buena posibilidad de que, durante la reconstrucción, el último disco que contiene una copia consistente de los datos falle. Es en este punto cuando llega al último disco restante que recomendaría que un experto (o hágalo usted mismo si es bueno en hardware) retire los platos del disco original, compre un disco nuevo de marca / modelo idéntico , coloque los platos allí y lea los datos utilizando el nuevo disco. Esto es costoso y requiere mucho tiempo,
Entonces esas son cinco preguntas que he respondido para ti; Si encontró algún valor en esta información, marque la respuesta de manera apropiada. Gracias.
mdadm
, por lo que Linux en realidad no me oculta los discos subyacentes. En segundo lugar, sobre grub y MBR: si un RAID cubre particiones en lugar de discos, entonces todavía puedo ver los discos subyacentes. El MBR no está bajo RAID y, por lo tanto, debe instalar el gestor de arranque dos veces para poder arrancar en caso de falla del disco. ¿Es esto correcto?mdadm --detail-platform
indica que Intel Matrix Storage Manager es la versión 11.0.0.1339. De hecho, puedo ver mis unidades individuales como/dev/sdc
y/dev/sdd
. Mi matriz RAID1 falsa es entonces/dev/md126
.La respuesta de Allquixotic es demasiado larga:
Soporte de arranque y un conjunto de características ligeramente diferente. En el fondo es un formato de datos. - Incluso podría usarlo sin la ROM de opción RST de Intel (entonces no tiene soporte de arranque especial). Lo que implica el formato está escrito en la
mdadm
página del manual.Por Linux md (es decir, el núcleo por completo).
Esto deja una pregunta abierta: ¿Por qué el RST de Intel se limita solo a algunos conjuntos de chips? No participan en el RAID en absoluto. En el mejor de los casos, almacenan un poco, lo que le indica a la ROM de opción que se niegue a ejecutarse en conjuntos de chips no compatibles.
fuente
Mmmm, una respuesta demasiado larga y la otra demasiado corta
La "incursión" RST se usa principalmente si está iniciando dualmente una estación de trabajo ya que Intel produce controladores de Windows y Linux y puede configurar la incursión en el BIOS. Usted configura RAID, particiona el disco virtual y puede realizar un arranque dual con ambos SO entendiendo las particiones múltiples.
mdam es para si el servidor está dedicado a Linux. Es "mejor" ya que si está reconstruyendo una matriz, lo está haciendo desde el sistema operativo, no desde el BIOS, por lo que la velocidad de reconstrucción es mucho más rápida. Con discos grandes, una reconstrucción de incursión de BIOS puede llevar varios DÍAS.
Pero la realidad es que usted está eligiendo entre una pieza verde de C o una pieza azul de C. La realidad es que RAID de software es básicamente una incursión de "último hoyo CYA".
Si pierde un disco en una matriz RAID de software, esencialmente esto le permite detener inmediatamente el servidor, realizar una copia de seguridad completa, reemplazar el disco fallido y tal vez el resto de los discos, luego volver a crear la matriz o intentar reconstruirla. Muy a menudo es más rápido reemplazar el disco, luego borrar todo lo que hay en ellos y recrear la matriz y luego arrancar desde un disco de restauración de copia de seguridad y luego restaurar desde la copia de seguridad.
Con un chip de matriz de hardware, todos los discos pueden entrar en bandejas de intercambio en caliente y cuando uno falla, se enciende una luz roja, en el disco defectuoso, lo expulsa, lo reemplaza con un nuevo disco, luego la tarjeta de ataque de hardware reconstruye automáticamente matriz mientras el servidor todavía se está ejecutando.
Si bien en teoría es posible hacer esto si tiene bandejas de intercambio en caliente y una matriz de software Linux mdam en la práctica, se arriesga al pánico y el servidor puede fallar fácilmente al iniciar en el disco restante.
El otro problema se refiere al TIPO de discos utilizados. Los discos de estaciones de trabajo regulares a medida que envejecen comienzan a desarrollar sectores defectuosos que el disco reasigna internamente en sectores libres. El problema es que esta reasignación solo ocurre en una escritura: el disco retrasará la reasignación si se produce una lectura en un sector defectuoso y en algunos modelos de disco volverá a leer repetidamente el sector defectuoso o defectuoso, comparando el resultado cada vez hasta que lo decida tiene los mejores datos que puede obtener de ese sector antes de reasignarlo. Este proceso puede tomar un minuto más o menos y durante ese tiempo ahora tiene 1 disco en la matriz, ignorando los códigos de comando, por lo que el software de incursión del software se bloqueará y marcará la matriz como degradada. Al reiniciar, ahora tiene 2 discos con el mismo sector que pueden tener datos diferentes entre discos, por lo que ahora el administrador de RAID de software no sabe cuál es "bueno", el disco que no tuvo un error o el disco que reasignó un sector con la mejor aproximación de los datos que tenía. Western Digital fabrica unidades "rojas" que se supone deben usarse en matrices RAID de software que no hacen esto, simplemente fallan en la lectura de un sector inmediatamente cuando detectan un sector defectuoso y lo reasignan para que el administrador de la matriz pueda tomar los datos del sector en el disco bueno y escríbalo en el disco con el sector fallido. No hace falta decir que cobran extra por estos discos. simplemente fallan una lectura de sector inmediatamente cuando detectan un sector defectuoso y lo reasignan para que el administrador de matriz pueda tomar los datos del sector en la unidad buena y escribirlos en la unidad con el sector fallido. No hace falta decir que cobran extra por estos discos. simplemente fallan una lectura de sector inmediatamente cuando detectan un sector defectuoso y lo reasignan para que el administrador de matriz pueda tomar los datos del sector en la unidad buena y escribirlos en la unidad con el sector fallido. No hace falta decir que cobran extra por estos discos.
En resumen, no use la incursión de software para un servidor que no puede tolerar algún tiempo de inactividad si falla un disco. Está destinado principalmente a estaciones de trabajo donde las personas no realizan copias de seguridad regularmente, y para pequeños servidores SOHO que se respaldan y pueden tolerar un día o más de tiempo de inactividad si un disco falla.
fuente