跳转至主要内容
  • 快速、轻松地下订单
  • 查看订单并跟踪您的发货状态
  • 创建并访问您的产品列表
  • 使用“Company Administration”(公司管理),管理Dell EMC站点、产品和产品级联系人。

Fallas dobles y perforaciones en arreglos RAID

摘要: Los arreglos RAID no son inmunes a los errores de datos; en este artículo, se proporcionan recomendaciones para prevenir y mitigar estos problemas.

本文可能已自动翻译。如果您对其质量有任何反馈,请使用此页面底部的表单告知我们。

文章内容


症状

En este artículo, se ofrece información acerca de los errores de datos, las fallas dobles y las perforaciones en un arreglo RAID. Además, se incluyen recomendaciones para prevenir o mitigar estos problemas y cómo resolverlos una vez que se presentan.

Tabla de contenido
  1. Errores de datos y fallas dobles
  2. Perforaciones: ¿Qué son y a qué se deben?
  3. Prevención de problemas antes de que se presenten y resolución de perforaciones después de que ocurren

     

Capítulo 1: Errores de datos y fallas dobles

Los arreglos RAID no son inmunes a los errores de datos.  La controladora RAID y el firmware del disco duro contienen funciones para detectar y corregir diversos tipos de errores de datos antes de que se escriban en un arreglo o una unidad.  El uso de firmware desactualizado puede provocar que se escriban datos incorrectos en un arreglo o una unidad debido a que faltan las funciones de corrección de errores/manejo de errores disponibles en las versiones de firmware más recientes.


Los errores de datos también pueden deberse a bloques físicos defectuosos.  Por ejemplo, esto puede ocurrir cuando el cabezal de lectura/escritura impacta al disco giratorio (conocido como "choque de cabezal").  Los bloques también se pueden dañar con el tiempo debido a la degradación de la capacidad del disco de almacenar bits de forma magnética en una ubicación específica.  Generalmente, los bloques dañados debido a la degradación del disco pueden leerse correctamente.  Solo se puede detectar un bloque dañado de este tipo de forma intermitente o mediante un diagnóstico extenso en las unidades.  


Un bloque dañado o una dirección de bloque lógico (LBA) incorrecta, también puede deberse a errores de datos lógicos.  Esto se produce cuando los datos se escriben incorrectamente en una unidad, a pesar de que se informa como una escritura correcta.  Además, los datos correctos almacenados en una unidad podrían modificarse sin aviso.  Un ejemplo es una "alteración de bits", lo cual puede ocurrir cuando el cabezal de lectura/escritura pasa por encima de una ubicación cercana o escribe en dicha ubicación y hace que los datos, en forma de unos y ceros, cambien a un valor diferente.  Esta condición hace que se dañe la "consistencia" de los datos.  El valor de los datos en un bloque específico es diferente de los datos originales y es posible que ya no coincida con la suma de comprobación de los datos.  La LBA física está en buen estado y se puede escribir en ella correctamente, pero actualmente contiene datos incorrectos y puede interpretarse como un bloque defectuoso.


Los LBA defectuosos se informan comúnmente como el código Sense Code 3/11/0. La clave de detección 3 es un error intermedio.  El código y calificador de detección adicionales de 11/00 se definen como un error de lectura no recuperado.  No se realizaron intentos para corregir el bloque y no se ha determinado si el bloque dañado se debe a un defecto físico en el disco de la unidad o a un error de datos provocado por otras causas.  La existencia de un código Sense Code 3/11/00 no significa automáticamente que la unidad física haya fallado o que se deba reemplazar.


Las controladoras RAID basadas en hardware de Dell ofrecen funciones como lectura de inspección y verificación de coherencia para corregir muchos casos de error de datos.  Patrol Read (Lectura de patrullaje) funciona de forma predeterminada como una tarea automatizada en segundo plano que se dedica a comprobar todos los bloques individuales de un disco duro para garantizar que los datos se pueden leer correctamente.  Patrol Read (Lectura de patrullaje) intentará corregir los bloques que estén dañados o reasignar a bloques reservados aquellos que no se puedan corregir.  Check Consistency (Verificación de consistencia) es una función de activación manual (también se puede programar) que compara entre sí todas las unidades en un arreglo para garantizar que los datos y la redundancia coincidan correctamente.  Por ejemplo, se comparan tres unidades en un arreglo RAID 5 para asegurarse de que se utilicen los valores correctos de datos y paridad.  Si se detecta un error único, se utilizarán los datos o la paridad restantes para volver a escribir y corregir el valor incorrecto.  De manera similar, en un arreglo RAID 1, los datos en una unidad se compararán con la otra unidad para garantizar que los datos se repliquen correctamente.


Cualquier error único en un arreglo RAID, si no se corrige, puede causar errores más graves en el arreglo, especialmente cuando se produce un segundo error.  Uno o varios errores únicos no provocarán la pérdida de datos, siempre y cuando el arreglo permanezca en un estado óptimo.  Aún hay suficientes datos, además de la redundancia, para funcionar normalmente mientras el arreglo está en estado óptimo.


Debido a la capacidad de la controladora para corregir errores durante las operaciones normales, no siempre es fácil detectar cuando existen problemas subyacentes en los datos.  Cuando existen una o más condiciones de error único, pocas veces ocurren errores o alertas en el registro de la controladora, los registros de hardware o los registros de sucesos del sistema operativo.  Por este motivo, puede parecer que un arreglo está funcionando normalmente durante un tiempo muy largo, a pesar de la presencia de errores de coherencia o errores únicos.



SLN111497_en_US__11
Figura 1: Múltiples fallas únicas en un arreglo RAID 5: arreglo óptimo


Como se muestra en la Figura 1, el arreglo tiene varios errores.  Sin embargo, puesto que solo se presenta un único error en todas las bandas, la controladora puede seguir teniendo acceso a todos los datos debido a la redundancia de RAID 5.  Si el error se produce en el segmento de paridad, todos los datos estarán intactos y el error no afectará las operaciones de lectura.  Si el error se produce en un segmento de datos, se debe realizar una comparación XOR entre los datos en buen estado y las piezas de paridad en buen estado para volver a calcular el segmento faltante o incorrecto de datos.  En cualquier caso, dado que solo hay un único error en cualquier sección, hay suficiente redundancia disponible para acceder a todos los datos correctamente.

Cuando una o más unidades en un arreglo RAID contienen errores de datos y otra unidad del arreglo deja de ser un miembro activo del arreglo debido a una falla en la unidad, una configuración externa, la extracción de la unidad o cualquier otro motivo, esto crea una condición conocida como “falla doble”.  Una condición de falla doble provocará la pérdida inmediata de datos de cualquier información en las secciones afectadas.



SLN111497_en_US__22
Figura 2: Falla doble con una unidad fallida (se pierden los datos en las secciones 1 y 2): arreglo degradado    


Es posible que se pueda producir una condición de falla doble mientras el arreglo permanece en un estado óptimo.  Esto puede ocurrir con LBA idénticas defectuosas en múltiples discos duros.  Tal condición sería muy poco frecuente, dado el gran número de LBA en los discos duros más grandes de hoy.  Sería muy poco probable que la misma LBA en varios discos duros esté en “mal estado” al mismo tiempo.

Realizar operaciones periódicas de verificación de coherencia corregirá fallas únicas, ya sea un bloque físico defectuoso o un error lógico de los datos. La verificación de consistencia también mitigará el riesgo de una condición de falla doble en caso de que se produzcan errores adicionales.  Cuando solo hay un error único en cualquier sección determinada, una verificación de coherencia casi siempre puede eliminar el error.

Volver al principio
 
 

Capítulo 2: Perforaciones: ¿Qué son y a qué se deben?


Una perforación es una característica de las controladoras PERC de Dell, diseñada para permitir que la controladora restaure la redundancia del arreglo, a pesar de la pérdida de datos producida por una condición de falla doble.  Otro nombre para una perforación es "recompilación con errores".  La controladora RAID detectará un fallo doble y, puesto que no hay suficiente redundancia para recuperar los datos en la banda afectada, la controladora crea una perforación en dicha banda y permite que el proceso de recompilación pueda continuar.

 
  • Cualquier condición que impida el acceso a los datos en la misma banda en más de una unidad es una falla doble
  • Las fallas dobles causan la pérdida de todos los datos dentro de la banda afectada
  • Todas las perforaciones son fallas dobles, pero NO todas las fallas dobles son perforaciones


SLN111497_en_US__33
Figura 3: Secciones perforadas (los datos en las secciones 1 y 2 se pierden debido a una condición de falla doble): arreglo óptimo


Sin la función de perforación, la reconstrucción del arreglo fallaría y dejaría el arreglo en un estado degradado.  En algunos casos, las fallas pueden causar errores en unidades adicionales y dejar al arreglo en un estado de desconexión no funcional.  Perforar un arreglo no afecta la capacidad para arrancar en los datos del arreglo o para acceder a dichos datos.  Cualquier daño o pérdida de datos causados por una condición de falla doble ya se produjeron. 



Las perforaciones pueden presentarse en una de dos situaciones:
 
  • La falla doble ya existe (los datos ya se perdieron)
    • El error de datos en una unidad en línea se propaga (copia) a una unidad en recompilación
 
  • La falla doble no existe (los datos se pierden cuando sucede el segundo error)
    • Mientras se encuentra en un estado degradado, si un bloque dañado ocurre en una unidad en línea, se perfora su LBA


La ventaja de perforar un arreglo es mantener la disponibilidad del sistema durante períodos de producción y restaurar la redundancia del arreglo.  Los datos de la banda afectada se pierden aun si la perforación se produce o no.  La desventaja principal del método LSI es que, mientras el arreglo tenga una perforación, se seguirán encontrando errores no corregibles cada vez que se acceda a los datos afectados (si los hubiese). 


La perforación se puede presentar en tres lugares.  Primero, una perforación puede ocurrir en un espacio en blanco que no tenga datos.  No se podrá acceder a dicha banda, pero como no hay datos en esa ubicación, no tendrá un impacto importante.  Todo intento de escribir en una banda perforada por un sistema operativo fallará y los datos se escribirán en una ubicación diferente. 


Segundo, es posible que se produzca una perforación en una banda que tenga datos poco importantes, como un archivo LÉAME.TXT.  Si no se accede a los datos afectados, no se generan errores durante un E/S normal.  Si se intenta realizar un respaldo del sistema de archivos, no se copiarán los archivos afectados por una perforación.  La realización de operaciones de verificación de coherencia o lectura de inspección generará un código Sense Code:  3/11/00 para la LBA o las secciones correspondientes.


En tercer lugar, se puede producir una perforación en el espacio de datos al que se accede.  En tal caso, los datos perdidos pueden causar una variedad de errores.  Los errores pueden ser errores menores que no afectan negativamente a un entorno de producción.  Los errores también pueden ser más graves y pueden impedir que el sistema arranque en un sistema operativo o hacer que las aplicaciones fallen.


 Con el tiempo, un arreglo perforado se debe borrar y volver a crear para eliminar la perforación.  Este procedimiento borrará todos los datos. Por tanto, los datos deberán volver a crearse o restaurarse desde un respaldo después de eliminar la perforación.  La resolución de una perforación se puede programar para un momento que sea más ventajoso para las necesidades de la empresa.


Si se accede a los datos dentro de una sección perforada, los errores se seguirán informando en relación con los LBA defectuosos afectados sin una posible corrección disponible. Con el tiempo (puede tardar minutos, días, semanas, meses, etc.), la tabla Administración de bloques dañados (BBM) se llenará, causando que una o más unidades indiquen una falla predictiva. Tomando como referencia la Figura 3, la unidad 0 será la unidad que normalmente indicará una falla predictiva debido a que los errores en las unidades 1 y 2 se propagan a tal unidad. Es posible que la unidad 0 realmente funcione con normalidad, y reemplazar la unidad 0 solo hará que el reemplazo también marque una falla predictiva.


Realizar una verificación de coherencia después de que se induce una perforación no resolverá el problema.  Por ello, es muy importante realizar periódicamente una verificación de consistencia. Es especialmente importante hacerlo, cuando sea posible, antes de reemplazar unidades. El arreglo debe estar en un estado óptimo para realizar la comprobación de coherencia.


Un arreglo RAID que contiene un error único de datos junto con un evento de error adicional, como una falla de disco duro, provoca una perforación cuando la unidad fallida o de reemplazo se recompila en el arreglo. Como ejemplo, un arreglo RAID 5 en estado óptimo incluye tres miembros: unidad 0, unidad 1 y unidad 2. Si la unidad 0 falla (Figura 2) y se reemplaza, se usan los datos y la paridad que quedan en las unidades 1 y 2 para recompilar la información faltante en la unidad de reemplazo 0. Sin embargo, si existe un error de datos en la unidad 1, no habrá suficiente información dentro de la banda para recompilar los datos faltantes en dicha banda cuando la operación de recompilación llegue a ese error. La unidad 0 no tiene datos, la unidad 1 posee datos erróneos y la unidad 2 tiene datos en buen estado, puesto que se está recompilando. Hay varios errores dentro de esa banda. Las unidades 0 y 1 no contienen datos válidos, por lo que los datos que estén en esa banda no se pueden recuperar y, por lo tanto, se perderán.  El resultado, como se muestra en la Figura 3, es que se crean perforaciones (en las bandas 1 y 2) durante el proceso de recompilación. Los errores se propagan a la unidad 0. 


Perforar el arreglo restaura la redundancia y devuelve el arreglo a un estado óptimo.  Esto proporciona al arreglo protección contra la pérdida de datos adicionales en el caso de que se produzcan errores adicionales o fallas en la unidad.
 
Volver al principio
 

Capítulo 3: Prevención de problemas antes de que se presenten y resolución de perforaciones después de que ocurren


Puede ser tentador trabajar bajo la premisa "Si no está roto, no lo arregles". Aunque esto puede ser cierto en muchas áreas, para proteger y administrar mejor los subsistemas de almacenamiento, se recomienda encarecidamente que realice un mantenimiento periódico y regular. Un mantenimiento proactivo puede corregir errores existentes y evitar que se produzcan algunos errores. No es posible evitar que se produzcan todos los errores, pero se pueden mitigar los errores más graves de forma considerable con un mantenimiento proactivo. En el caso de los subsistemas de almacenamiento y RAID, siga los pasos a continuación:

 
  • Actualice los controladores y el firmware en controladoras, discos duros, planos posteriores y otros dispositivos
  • Realizar operaciones de rutina de verificación de consistencia
  • Revise los registros para ver si hay indicios de problemas

Esto no tiene que ser una revisión técnica de alto nivel, sino que solo podría ser una vista rápida de los registros para buscar indicios extremadamente obvios de posibles problemas
Comuníquese con el equipo de soporte técnico de Dell en caso de cualquier pregunta o inquietud


Una de las cosas más importantes que se debe hacer es garantizar que el firmware se mantenga actualizado. En el firmware, se encuentra toda la lógica para el funcionamiento de un dispositivo. Proporciona las funciones y características del dispositivo, además de una amplia variedad de funciones para manejar y corregir errores. Mantener actualizado el firmware puede proporcionar un mejor rendimiento y menos errores. También se pueden agregar nuevas funciones y mejoras a través de una actualización de firmware.


El firmware puede alojarse en varios lugares. Las controladoras RAID contienen firmware, así como cada uno de los discos duros individuales instalados en un sistema o arreglo. Los backplanes y los gabinetes externos también contienen firmware que puede afectar el funcionamiento de las unidades y los arreglos en su interior.


Otra recomendación de mantenimiento proactivo es realizar una “verificación de coherencia”.  La verificación de consistencia es una operación manual, ya que consume una parte del ancho de banda general disponible de la controladora RAID. Sin embargo, la verificación de coherencia se puede programar para un momento que tenga el menor impacto en el desempeño.


La verificación de coherencia comprobará si hay bloques defectuosos en las unidades, pero lo más importante es que comparará los datos en el arreglo para garantizar que todas las partes coincidan correctamente. Cuando encuentra un problema, determinará cuál es el estado original de los datos y los corregirá verificando los datos de las otras unidades en el arreglo. La corrección de errores de datos, cuando tales errores son relativamente pequeños, es la mejor manera para mitigar el riesgo de perforaciones causadas por errores de datos existentes en combinación con un segundo error o falla. La existencia de fallas dobles y perforaciones puede causar la pérdida de productividad durante el tiempo necesario para restaurar los arreglos y los datos a un estado funcional o incluso la pérdida completa de todos los datos.


Cuando existe una condición de falla doble o perforación, a menudo hay cierta pérdida de datos. Si la ubicación de estos errores es un espacio en blanco o un espacio con datos no críticos, el impacto inmediato en los datos en un entorno de producción es relativamente pequeño. Sin embargo, la presencia de estos errores puede significar que puede haber problemas más graves. Los errores de hardware y el firmware desactualizado pueden requerir atención inmediata.


Si existe una condición de falla doble o perforación conocida o sospechada, siga estos pasos para minimizar el riesgo de problemas más graves:

 
  • Realice una verificación de consistencia (el arreglo debe estar en óptimas condiciones)
  • Determine si existen problemas de hardware
  • Compruebe el registro de la controladora
  • Realice diagnóstico de hardware
  • Comuníquese con el soporte técnico de Dell si fuese necesario

Si estos pasos se realizaron, existen problemas adicionales que considerar. Con el paso del tiempo, las perforaciones pueden hacer que los discos duros entren en un estado de falla predictiva. Los errores de datos que se propagan a una unidad se registran como errores de medios en la unidad, aunque no existan problemas reales de hardware. Cada vez que se accede a la LBA, se informa un error. Una vez que el registro de errores esté lleno, la unidad se informará a sí misma como una falla predictiva.


Una sola LBA perforada en una unidad se puede informar muchas veces. Según la cantidad de perforaciones, es posible que varias unidades en un arreglo informen una falla predictiva. Reemplazar la unidad con falla predictiva hará que las perforaciones existentes se propaguen nuevamente a la unidad de reemplazo, lo cual provocará que dicha unidad también indique una falla predictiva. En tal caso, la única acción correctiva es resolver la condición de perforación.


Al observar la Figura 3, podemos ver que hay una perforación en las secciones 1 y 2. El reemplazo de los discos duros no solucionará este problema, debido a que no hay suficiente redundancia de datos para recompilar los datos originales. Todos los datos contenidos en las bandas perforadas se perderán (a menos que se haya conservado una copia de seguridad anterior). Recuerde que una perforación no provoca la pérdida de datos; tal pérdida es el resultado de una condición de falla doble. Una perforación es el medio para restaurar la redundancia en un arreglo que posee una falla doble.
 

 

Nota: A continuación, se muestra el proceso utilizado para resolver la mayoría de las perforaciones. Es posible que no sea necesario llevar a cabo todos estos pasos para resolver el problema. Si después de seguir estos pasos no se resuelve un problema, comuníquese con soporte técnico de Dell para obtener más asistencia.

 

 

Advertencia: Si sigue estos pasos, se perderán todos los datos en el arreglo. Asegúrese de estar preparado para restaurar desde la copia de seguridad u otros medios antes de seguir estos pasos. Proceda con precaución para que afecte los demás arreglos con ninguno de estos pasos.
  1. Descarte la memoria caché conservada (si existe)
  2. Borre las configuraciones ajenas (si hay)
  3. Elimine el arreglo
  4. Cambie la posición de las unidades en un número (si tomamos la Figura 1 como referencia, mueva el disco 0 a la ranura 1, el disco 1 a la ranura 2 y el disco 2 a la ranura 0)
  5. Vuelva a crear el arreglo, según lo desee
  6. Realice una inicialización completa del arreglo (que no sea una inicialización rápida)
  7. Realice una verificación de consistencia en el arreglo

Si la verificación de consistencia se completa sin errores, puede suponer con seguridad que el arreglo se encuentra en buenas condiciones y que la perforación se ha eliminado. Los datos ahora se pueden restaurar al arreglo en buen estado.


En los casos más graves, es posible que el problema no se resuelva y que los errores persistan a pesar de seguir estos pasos. Si seguir estos pasos no resuelve un problema, comuníquese con el equipo de soporte técnico de Dell para obtener más ayuda.


Es posible que sea necesario analizar las perforaciones con más detalle para determinar qué unidades tienen en común. Por ejemplo, en la Figura 3, el registro de la controladora mostrará una perforación entre los discos 0 y 1, y otra entre los discos 0 y 2. El disco 0 es la unidad en común. Siga los mismos pasos anteriores, pero primero extraiga completamente las unidades en común. Por lo tanto, si utilizamos el ejemplo en la Figura 1, extraiga el disco 0 y siga los pasos que se indican. Cree el arreglo usando los discos restantes (1 y 2). Una vez que haya finalizado y después de que una verificación de coherencia determine que el arreglo está en buen estado, vuelva a agregar el disco 0 y realice los pasos nuevamente con todas las unidades, o bien utilice las funciones de RLM (migración a nivel de RAID) u OCE (expansión de capacidad en línea) para volver a agregar las unidades restantes al arreglo.


Todas las unidades que tengan una falla predictiva marcada deben eliminarse y no se deben incluir en el proceso de recuperación. Usando nuevamente la Figura 3 como ejemplo, si el disco 0 presenta falla predictiva, extraiga esta unidad. Luego, realice los pasos descritos anteriormente. Puesto que solo hay 2 unidades restantes, el arreglo RAID creado es un RAID 1 en lugar de un RAID 5. Después de obtener un disco de reemplazo 0 (debido a la falla predictiva), realice nuevamente los pasos integrando las 3 unidades, o bien agregue el Disco 0 en el arreglo existente utilizando RLM y cámbielo de un RAID 1 con 2 unidades a un RAID 5 con 3 unidades.


El proceso puede ser abrumador, especialmente si se considera la posibilidad de que haya una pérdida de datos. Aquí tiene mucho valor la frase "Más vale prevenir que lamentar". La experiencia ha demostrado que casi todas las condiciones de falla doble y perforación podrían haberse evitado realizando un mantenimiento proactivo en el hardware y los arreglos RAID.
 

 

Nota: Un monitoreo eficaz del sistema permite detectar y corregir problemas en forma oportuna, lo que también reduce el riesgo de problemas más serios.


 

Artículo relacionado
PERC: Cómo arreglar una perforación en RAID

 

Volver al principio

 

原因

-

解决方案

-

文章属性


受影响的产品

Servers

上次发布日期

25 3月 2022

版本

6

文章类型

Solution