26 votos

BBWC: en teoría una buena idea, pero tiene una vez guardado los datos?

Estoy familiarizado con lo que es un BBWC (Batería de copia de seguridad de caché de escritura) es la intención de hacer - y utilizado previamente en mis servidores, incluso con una buena UPS. Hay obvously fracasos no proporciona protección para. Tengo curiosidad de entender si en realidad ofrece ningún beneficio real en la práctica.

(NB estoy buscando específicamente para las respuestas de las personas que han BBWC y había accidentes/fallas y si el BBWC ayudó a la recuperación o no)

Actualización

Después de los comentarios de aquí, estoy cada vez más escéptico como si un BBWC agrega ningún valor.

Para tener toda la confianza acerca de la integridad de los datos, el sistema de ficheros DEBE saber cuando los datos han sido comprometidos para almacenamiento no volátil (no necesariamente el disco, un punto al que volveré). Vale la pena señalar que una gran cantidad de discos de mentir acerca de cuando los datos se ha comprometido a la disco (http://brad.livejournal.com/2116715.html). Si bien parece razonable suponer que la desactivación de la caché en disco puede hacer que los discos más honesto, todavía no hay ninguna garantía de que este es el caso.

Debido a la typcally grandes buffers en una BBWC, una barrera puede requerir mucho más que datos sean comprometidos a disco por lo tanto, causando retrasos en el que escribe: el consejo general es desactivar las barreras al uso de un no-volátil de escritura de la caché (y deshabilitar en el caché de disco). Sin embargo, esto parece socavar la integridad de la operación de escritura - sólo porque más que los datos se mantienen en almacenamiento no volátil, no significa que será más consistente. De hecho, podría decirse que sin la demarcación entre la lógica de las transacciones parece tener menos oportunidad para garantizar la coherencia de lo contrario.

Si el BBWC fueron a reconocer las barreras en el punto de los datos de la entra del almacenamiento no volátil (en lugar de ser confirmado en el disco), entonces parece satisfacer a la integridad de los datos requisito sin una penalización de rendimiento, lo que implica que las barreras todavía debe estar habilitado. Sin embargo, ya que estos dispositivos generalmente exhiben un comportamiento consistente con el lavado de datos para el dispositivo físico (significativamente más lento con barreras) y el amplio asesoramiento para desactivar las barreras, por tanto no puede estar comportándose de esta manera. ¿POR QUÉ NO?

Si el I/O en el sistema operativo está diseñada como una serie de corrientes, a continuación, hay algunos alcance para minimizar el efecto de bloqueo de escritura de la barrera cuando la caché de escritura está gestionado por el sistema operativo -, ya que en este nivel sólo la lógica de la transacción (una sola secuencia) tiene que estar comprometida. Por otro lado, un BBWC con ningún conocimiento de que los bits de datos que componen la transacción se tendría que comprometer todo su caché de disco. Si el kernel/sistemas de archivo para poner en práctica esto en la práctica requieren mucho más esfuerzo de lo que estoy dispuesto a invertir en el momento.

Una combinación de discos diciendo mentiras acerca de lo que ha sido cometido y pérdida repentina de la energía, sin duda, conduce a la corrupción y con una parte de mantener un diario o registro estructurado el sistema de ficheros que no hacer un fsck después de una interrupción de su improbable que la corrupción será detectado por no hablar de un intento de reparación.

En términos de los modos de fallo, en mi experiencia la mayoría de los repentinos cortes de energía se producen debido a la pérdida de alimentación de red (fácilmente solucionadas con un UPS y logró el cierre). La gente tirando el cable equivocado de rack implica una mala centro de datos higiene (etiquetado y gestión de cables). Hay algunos tipos de pérdida repentina de alimentación de eventos que no se vean afectadas por un UPS - falla en la fuente de alimentación o un VRM un BBWC con barreras proporcionaría la integridad de los datos en el evento de una falla aquí, sin embargo ¿qué tan comunes son tales eventos? Muy raro, a juzgar por la falta de respuestas aquí.

Ciertamente, moviendo la tolerancia a fallos superior de la pila es significativamente más caro que el de un BBWC - sin embargo, la implementación de un servidor como un clúster tiene un montón de otros beneficios para el rendimiento y la disponibilidad.

Una forma alternativa para mitigar el impacto de la repentina pérdida de potencia sería implementar un SAN - AoE que hace de esta una propuesta práctica (realmente no veo el punto en iSCSI), pero de nuevo hay un mayor costo.

34voto

Tina Puntos 21

Seguro. He tenido de seguridad de la batería de memoria caché (BBWC) y más tarde flash caché de escritura con respaldo (FBWC) proteger en vuelo, los datos siguientes se bloquea y repentina pérdida de potencia.

En servidores ProLiant de HP, el típico mensaje es:

POST Error: 1792-Drive Array Reports Valid Data Found in Array Accelerator

Lo que significa, "Hey, hay datos en la caché de escritura que sobrevivieron al reiniciar/potencia de pérdida!! Voy a escribir de nuevo disco ya!!!!"

Un caso interesante fue el de mi post-mortem de un sistema que perdió el poder durante un tornado, la matriz de la secuencia era:

POST Error: 1793-Drive Array - Array Accelerator Battery Depleted - Data Loss
POST Error: 1779-Drive Array Controller Detects Replacement Drives
POST Error: 1792-Drive Array Reports Valid Data Found in Array Accelerator

La 1793 error de la POST es único. - Mientras el sistema estaba en uso, la energía fue interrumpida mientras que los datos fue en la Matriz Acelerador de memoria. Sin embargo, debido al hecho de que este fue un tornado, no fue restaurado en el plazo de cuatro días, por lo que la matriz de las baterías se agota y los datos de los que se había perdido. El servidor tiene dos controladores RAID. La otra controladora había un FBWC de la unidad, que dura mucho más tiempo que una batería. Que la unidad se recupera correctamente. Algunos datos de la corrupción que se tradujo en la matriz respaldada por la batería vacía.


A pesar de la abundancia de la autonomía de la batería en el centro, cuatro días sin poder y las peligrosas condiciones en que hizo lo imposible para que nadie se cierran los servidores de forma segura. enter image description here

10voto

TomTom Puntos 38586

Sí, tenía ese caso.

Servidor "sin UPS" en un centro de datos (con el centro de datos tener un UPS). La PDU de la insuficiencia del sistema de duro se estrelló. Sin pérdida de datos.

Y que básicamente es la misma. La cosa buena acerca de una BBWC es que está en la máquina. Un UPS - créeme, a veces alguien hace algo estúpido (como tirar el cable equivocado). Un UPS es externo. Oh, QUE el cable ;)

4voto

LetMeSOThat4U Puntos 239

He tenido 2 casos donde la batería de respaldo de memoria caché en RAID de HARDWARE de los controladores fallado por completo (en 2 empresas diferentes).

La BBC se basa en la sorprendente idea de que la batería funciona. El problema es que en algún punto de la batería en el controlador falla y lo que es devastador es que en muchos raid de HARDWARE de los controladores de falla en silencio. Nos pareció que tenía un caché protegido contra la pérdida de poder, pero no lo hicimos.

En la pérdida de potencia de la matriz RAID pérdida de datos fue tan amplia que todo el contenido del disco fueron prestados irrecuperable. Todo estaba perdido. Uno de los casos se trataba de una máquina dedicada exclusivamente para las pruebas, pero todavía.

Después de que me dijo "nunca más", conectado a software basado en la duplicación de discos (mdadm) en Linux + diario basado en fs que ha decente resistencia contra la pérdida de poder (ext4) y nunca miró hacia atrás. Por supuesto, yo he usado en servidores que no tienen muy alta IO uso.

4voto

Tina Puntos 21

Esto parece requerir una segunda respuesta a la pregunta...

Yo sólo tenía una independiente de VMware ESXi perder una unidad en un array RAID 5. La degradación de la matriz afectado el rendimiento en la VM y nivel de aplicación.

Smart Array P410i in Slot 0 (Embedded)    (sn: 5001438011138950)

   array A (SAS, Unused Space: 0  MB)

      logicaldrive 1 (1.6 TB, RAID 5, Recovering, 42% complete)

      physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 300 GB, OK)
      physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 300 GB, Rebuilding)
      physicaldrive 1I:1:3 (port 1I:box 1:bay 3, SAS, 300 GB, OK)
      physicaldrive 1I:1:4 (port 1I:box 1:bay 4, SAS, 300 GB, OK)
      physicaldrive 2I:1:5 (port 2I:box 1:bay 5, SAS, 300 GB, OK)
      physicaldrive 2I:1:6 (port 2I:box 1:bay 6, SAS, 300 GB, OK)
      physicaldrive 2I:1:7 (port 2I:box 1:bay 7, SAS, 300 GB, OK)
      physicaldrive 2I:1:8 (port 2I:box 1:bay 8, SAS, 300 GB, OK, spare)

La persona en esta firma no era consciente de que un error de la unidad. y restablecimiento del servidor (para hacerlo todo mejor?).

El efecto más interesante de hacer esto con un peligro de la matriz de ocupados con máquinas virtuales que se ejecutan en la cima fue este:

Estado de la memoria caché de Detalles: El actual controlador de matriz había datos válidos almacenada en su batería de condensadores caché de escritura con respaldo de la última vez que se restablece o se enciende. Esto indica que el sistema no puede se han cerrado correctamente. El controlador de matriz automáticamente escrito, o ha intentado escribir, este tipo de datos a las unidades. Este mensaje seguirá apareciendo hasta la próxima vez que reinicie o el poder de ciclo del controlador de matriz.

Así que a pesar de que el sistema se detuvo abruptamente, los datos de vuelo estaba protegido por la BBWC. Las máquinas virtuales se recuperó todo correctamente y que el sistema está en buena forma.

3voto

mfinni Puntos 29745

Además de "salvar los datos", que son buenos para otras cosas. También son buenos en el búfer escribe (en la memoria caché), así como para mejorar el rendimiento de la IO subsistema de mantenimiento de la escritura en disco-cola baja. Esto es particularmente importante para los servidores donde el rendimiento interactivo es de suma importancia - por ejemplo, Citrix XenApp o Windows Terminal Services.

Esto es menos importante para un servidor web o un servidor de archivos. Usted puede no darse cuenta, o incluso ser utilizado para, un poco de lag. Sin embargo, cuando haces clic en un icono en una aplicación de Office, se espera que la capacidad de respuesta. Y lo hace a su CEO.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: