Para un Dell R920 con discos de 24 x 1.2TB (y 1TB RAM), estoy buscando configurar una configuración RAID 5 para una E / S rápida. El servidor se utilizará para alojar máquinas virtuales KVM que leerán / escribirán archivos de todos los tamaños, incluidos archivos muy grandes. No estoy terriblemente interesado en la seguridad de los datos porque si el servidor falla por algún motivo, simplemente reaprovisionaremos el servidor de metal desnudo después de reemplazar las partes fallidas. Entonces, el rendimiento es la principal preocupación. Estamos considerando RAID 5 porque nos permite distribuir datos a través de múltiples ejes y, por lo tanto, nos brinda un mejor rendimiento y, aunque no es nuestra principal preocupación, también nos brinda cierta protección de datos. Nuestra NIC es dual de 10 Gbps.
Estoy limitando esta pregunta a RAID 5 solo porque creemos que dará el mejor rendimiento. Solo si hay una razón de rendimiento convincente consideraremos algo más. Pero creo que preferiría respuestas relacionadas con las configuraciones RAID 5.
Bien, con lo anterior, aquí están nuestros pensamientos de configuración actuales para:
- 24 discos duros: RMCP3 : 1.2TB, 10K, 2.5 "6Gbps
- Controlador RAID: H730P, soporte SAS de 12 Gbps, caché NV de 2 GB
- 1 repuesto dinámico (solo para darnos una vida más larga si falla una unidad)
- 23 unidades de datos (de las cuales 1 se contabiliza como paridad y 22 quedan para datos)
- Tamaño de banda: 1 MB (unidades de datos de 1 MB / 22 = ~ 46,5 KB por disco, ¿o no entiendo el tamaño de banda?)
- Política de lectura: lectura adaptativa anticipada
- Política de escritura: escribir de nuevo
- Política de caché de disco: habilitada
Si el tamaño de la banda es el TOTAL en las unidades de datos, entonces pensé que ~ 46.5KB por unidad nos dará un rendimiento muy bueno. Si el tamaño de la franja es por huso, entonces tengo todo esto mal.
¿El tamaño de la banda también es el tamaño que toma un solo archivo? Por ejemplo, si hay un archivo de 2 KB, ¿elegir un tamaño de banda de 1 MB significa que estamos desperdiciando casi un megabyte completo? ¿O pueden vivir varios archivos dentro de una franja?
Por último, cuando instalemos CentOS 6.5 (o la última), ¿necesitaremos hacer algo especial para asegurarnos de que el sistema de archivos utilice RAID de manera óptima? Por ejemplo, mkfs.ext4 tiene una opción -E stride que me dijeron que debería corresponder a la configuración RAID. Pero, durante una instalación de CentOS, ¿hay alguna forma de hacerlo?
Muchas gracias por sus pensamientos sobre la configuración de RAID 5 para una E / S rápida.
Respuestas:
Utilice RAID 1 + 0 con su controlador y configuración de unidad. Si necesita más capacidad, un nivel RAID anidado como RAID 50/60 podría funcionar . Puede escapar con RAID 5 en un pequeño número de discos SAS empresariales (8 unidades o menos) porque los tiempos de reconstrucción no son malos. Sin embargo, 24 unidades es un terrible error. (Ah, y deshabilite la función de almacenamiento en caché de disco individual ... peligroso)
Hay muchas facetas en la E / S y el rendimiento del almacenamiento local. Hay operaciones de E / S / segundo, hay rendimiento, hay latencia de almacenamiento. RAID 1 + 0 es un buen equilibrio entre estos. Los aspectos positivos aquí son que está utilizando discos empresariales, un controlador de hardware capaz y una buena cantidad de discos. ¿Cuánta capacidad necesitas?
Puede encontrar límites en la cantidad de unidades que puede usar dentro de un grupo de discos virtuales. Los controladores PERC / LSI tradicionalmente limitaban esto a 16 unidades para niveles RAID individuales y RAID 1 + 0. La guía del usuario confirma esto . No podría usar los 24 discos en un solo RAID 5 o un solo grupo RAID 1 + 0.
Otro aspecto a tener en cuenta, dependiendo de su carga de trabajo, es que puede aprovechar el almacenamiento en caché SSD utilizando la funcionalidad LSI Cachecade en ciertos controladores PERC. Puede que no esté disponible para esto, pero comprender sus patrones de E / S ayudará a adaptar la solución de almacenamiento.
En cuanto a las opciones de creación del sistema de archivos ext4, gran parte de esto será abstraído por su controlador RAID de hardware. Debería poder crear un sistema de archivos sin ninguna opción especial aquí. Los parámetros a los que se refiere tendrán un mayor impacto en una solución RAID de software.
fuente
RAID 5 would give us some data safety at the expense of effectively 1 hard drive per group, right?
No, no esta bien. Con unidades de este tamaño, y con tantos discos en un grupo, RAID 5 efectivamente le brinda seguridad de datos 0. También puede lanzar los discos en dos arreglos RAID 0 de 12 discos.¡NO use una sola matriz RAID 5 en 24 discos de 1TB! No me importa mucho a qué prefieres limitar las respuestas, es una mala idea y deberías buscar otras opciones.
Las probabilidades de que falle un disco aumentan con cada disco. También lo hace el tiempo que lleva reconstruir. Cuando una unidad falla y la reemplaza, utilizará la mayor cantidad de E / S en todos los discos como sea posible para generar los datos para la nueva. Es muy probable que uno de sus 23 discos buenos restantes falle durante este proceso, lo que le obligará a restaurar el servidor desde las copias de seguridad. Lo que dices que no te importa ... pero ¿estás dispuesto a aceptar hacerlo una vez al mes? ¿Una vez por semana? A medida que los discos envejecen, muy bien podría ponerse tan mal.
Además, si desea rendimiento, RAID5 lo está guiando en la dirección equivocada. En muchos casos, RAID5 tiene un rendimiento peor que otras opciones, ya que tiene que calcular la paridad para cada escritura y luego escribir eso también en una unidad. RAID5 no fue diseñado para el rendimiento.
Si REALMENTE no le importan sus datos, vaya con RAID 0. Pero aun así, cree algunas matrices separadas, no una RAID 0 de 24 discos gigantes.
Si desea rendimiento y algo de integridad, use RAID10. Perderá algo de espacio en disco, pero obtendrá un gran aumento de rendimiento.
O puede mirar cosas como ZFS que están diseñadas desde cero para trabajar con grandes cantidades de datos en discos.
fuente
Sus opciones:
RAID 0 : convierte todos sus discos en una sola unidad sin redundancia. Tiene el mayor rendimiento de lectura y escritura y el espacio más útil de cualquiera de las opciones, pero la pérdida de un solo disco significa la pérdida de todos los datos.
RAID 1 + 0 : convierte todos sus discos en una sola unidad con todos los datos presentes en dos discos. La velocidad de lectura es casi la misma que RAID 0, la velocidad de escritura se reduce a la mitad (ya que necesita escribir cada pieza de datos dos veces) y solo tiene la mitad de espacio disponible. La pérdida de un solo disco no tiene impacto en la disponibilidad de datos y un impacto mínimo en las velocidades de lectura / escritura.
RAID 5 : Esto convierte todos sus discos en una sola unidad, con un valor de paridad en un disco. La velocidad de lectura es ligeramente inferior a RAID 0, la velocidad de escritura es mucho más lenta, posiblemente más lenta que la velocidad de escritura de un solo disco no RAID (cada escritura requiere un ciclo de lectura-modificación-escritura en al menos dos discos), y usted perder el espacio de un disco para la información de paridad. La pérdida de un solo disco puede causar una reducción importante de la velocidad de lectura (la reconstrucción de los datos almacenados en él requiere la lectura de datos de todos los otros discos), pero no tiene ningún impacto en la disponibilidad de datos.
RAID 6 : Esto tiene esencialmente todas las ventajas y desventajas de RAID 5, excepto que almacena una suma de verificación más elegante además de un cálculo de paridad, y puede manejar la pérdida de dos discos sin pérdida de datos.
Si la seguridad de los datos es realmente irrelevante (esto incluye el tiempo dedicado a restaurar los datos de la fuente original, lo que puede llevar días y el tiempo perdido al volver a hacer los cálculos interrumpidos), recomiendo RAID 0. De lo contrario, si tiene una carga de trabajo que es casi lee exclusivamente y desea cierta confiabilidad, recomiendo RAID 6 (pero tenga en cuenta que el rendimiento se verá afectado al recuperarse de un disco fallido). Si tiene una carga de trabajo de lectura y escritura, le recomiendo RAID 1 + 0.
Dependiendo de la naturaleza precisa de su carga de trabajo (es decir, si una tarea determinada accede a un subconjunto bien definido de su espacio en disco), es posible que pueda configurar múltiples matrices RAID independientes, de modo que la falla de una no afecte a las demás. .
RAID 5 no proporciona beneficios en su situación. Tiene una penalización de rendimiento (especialmente para la escritura) en comparación con RAID 0, y con la cantidad de discos que tiene, es prácticamente seguro que un segundo disco fallará durante la recuperación, lo que no brinda ningún beneficio de seguridad de datos.
fuente
De acuerdo, solo una pregunta clara: el tamaño de la raya. El tamaño de banda más grande es mejor a menos que su RAID sea tonto para leer / escribir siempre toda la banda de datos como la porción mínima de E / S.
¿Por qué? - un tamaño de banda pequeño implica la participación de varios discos en cualquier E / S larga, cuanto menos posibilidades hay de cargar varios discos con una E / S lógica. Una franja grande significa más posibilidades de que solo un disco (o algunos) se involucre en E / S. Esto puede parecer una deficiencia porque no hay impulso en comparación con múltiples discos, pero luego su carga casi aleatoria salta y te das cuenta de que la carga se distribuiría en todos los discos de manera más o menos uniforme.
Puede encontrar más teoría detrás de esto aquí: http://www.vinumvm.org/vinum/Performance-issues.html
fuente