Skip to content

DVR del clúster

El archivo vive en los discos de los streamers, pero las decisiones sobre él son de todo el clúster: el espacio se acaba en una máquina y el stream se traslada a otra. La sección DVR del clúster responde a dos preguntas: cuánto espacio de archivo hay y qué lo ocupa exactamente. La configuración de los discos está en la página del streamer; la grabación y la reproducción del archivo, en Archivo DVR.

Los streamers sin almacenamiento DVR no aparecen en la sección: ni en la lista ni en los totales. Si nadie lo tiene configurado, en lugar de una tabla verá «Ningún streamer del clúster tiene almacenamiento DVR configurado».

Tres cubos de espacio ocupado

El espacio ocupado siempre se reparte en tres partes, y eso es lo principal que aporta la sección. Los mismos tres cubos se calculan para un disco, para un streamer y para todo el clúster:

  • Activo — archivo de los streams que el streamer debe grabar según su configuración. Es espacio bien empleado.
  • Huérfano — archivo que está en el disco sin ninguna configuración de stream detrás. Suelen ser restos de streams eliminados o trasladados.
  • Desconocido — el resto del espacio ocupado que el catálogo no explica: archivos que nadie ha escaneado y la reserva del sistema de archivos.

La barra de ocupación va de izquierda a derecha en ese mismo orden, así que «el espacio se lo comió lo que no debía» se ve como una cola a la derecha.

Un disco no es problemático solo por estar lleno. Un disco lleno de archivo activo es la retención funcionando como debe. El problema es un disco ocupado al 98 % cuyo archivo activo representa menos del 90 %: el espacio se fue a huérfano o a desconocido. Esos discos llevan borde rojo, y los streamers que los tienen encabezan la lista.

Vista general del clúster

La tarjeta superior contiene los totales de todos los streamers: Capacidad, activo, huérfano, desconocido y el número de streamers con archivo, más una barra de ocupación general.

Debajo, una fila por streamer: el nombre (enlace a sus discos), la barra de ocupación, el número de discos, cuántos tienen problemas y «ocupado / capacidad». Los datos se releen cada 5 segundos.

Vista general del clúster: totales por cubo y una fila de streamer con tres discos

Cuándo no se puede confiar en el desglose

Distinguir el activo del huérfano exige el mapa de streams, y el mapa no siempre está. La sección lo advierte con claridad y muestra el espacio ocupado entero en lugar de un desglose equivocado:

  • el desglose se está calculando — el streamer recalcula los agregados del catálogo en segundo plano y la primera pasada no ha terminado. Espere.
  • desglose no fiable: configuración sin aplicar — el streamer no ha aplicado su configuración de grabación. Sin el mapa de streams todo el archivo parece huérfano, así que no se muestra ningún desglose. Lo que hay que arreglar no es el archivo sino la entrega de la configuración — véase Diagnóstico del streamer.
  • tamaño aún calculándose: N blobs — algunos blobs todavía no tienen el tamaño calculado; sus bytes cuentan de momento como espacio desconocido.

No tome decisiones de limpieza mientras el desglose no esté listo: un huérfano medido con la configuración sin aplicar no es un huérfano.

Discos de un streamer

Al pulsar el nombre de un streamer se abren sus discos en tarjetas: ruta, barra de ocupación con el mismo desglose, porcentaje ocupado y capacidad.

Los discos de un streamer: cada uno con su barra dividida en los tres cubos

Un disco del que no hay nada que mostrar en la barra muestra su estado en su lugar:

  • disco no disponible — el streamer no ha podido alcanzarlo.
  • sin montar — la escritura en la partición del sistema está deshabilitada — la ruta del archivo cayó en la partición raíz y no en un volumen. La escritura se rechaza a propósito: la comprobación de montaje está activada por defecto.

Caché del archivo

Un streamer que sirve el archivo de otro puede guardar lo leído en sus propios discos de caché — entonces una solicitud repetida de la misma parte se sirve localmente, sin ir a la fuente. Así se arma un edge: los discos de caché se configuran en los ajustes del streamer, y el cacheo se activa en el stream.

Un disco de caché en la lista de discos del streamer es otra tarjeta, no la de archivo llena de ceros. No tiene los tres cubos de espacio ocupado en absoluto: no guarda ni archivo actual ni orphan, y una proporción de ocupado calculada sobre él sería deshonesta — reflejaría el reparto de la escritura y no la salud del disco. En su lugar la tarjeta muestra:

  • Caché del archivo — la etiqueta del papel bajo la ruta del disco.
  • Caché N / límite N — cuánto ha tomado la caché y cuánto se le permite. Sin límite fijado — sin límite: la caché solo está limitada por el espacio libre del volumen.
  • Aciertos/s — la velocidad de lecturas servidas por este disco. Es lo que delata un disco muerto al que no llega nada, y un reparto desequilibrado.

Los discos de un streamer edge: la tarjeta del disco de caché junto a las de archivo

Un borde rojo y la línea El espacio libre está por debajo del umbral: el desalojo no sigue el ritmo de las escrituras significan que la caché se escribe más rápido de lo que libera espacio. Se cura con un límite de caché, no con una limpieza manual.

En la vista general del clúster la caché tiene dos lecturas propias:

  • Caché del archivo — el volumen total de caché en todos los streamers.
  • Tasa de aciertos — la proporción de lecturas del archivo servidas por la caché. La fila del streamer dice lo mismo más corto: Caché N y caché N %.

La tasa de aciertos es la proporción de aciertos entre todas las lecturas del archivo: las servidas por la caché, las servidas por un disco de archivo y las que fueron a una fuente remota. La emisión en vivo y la descarga en segundo plano del fragmento siguiente no entran ahí — de lo contrario esa descarga inflaría la tasa cuanto mejor funcionara.

Si no hay caché alguna en el clúster, estas lecturas tampoco aparecen: los ceros se leerían como «hay caché y no funciona».

La mecánica de la caché misma — admisión, desalojo por última lectura, un edge que funciona sin discos de archivo — se describe en la documentación de Sapsan.

Reconstrucción del índice

El catálogo del archivo y el contenido de los discos pueden separarse — por ejemplo, tras mover ficheros a mano o restaurar desde un backup. El botón Reconstruir índice hace que el streamer recorra sus discos y añada al catálogo los blobs que faltan.

La solicitud se guarda en la configuración del streamer en lugar de enviarse directamente. Por eso sobrevive a que el streamer no esté disponible: si la máquina está offline, la solicitud espera a que vuelva. De ahí también su fase propia: la solicitud está guardada, pero el streamer todavía no la ha recogido.

La tarjeta de reconstrucción del índice en su estado inicial

Los estados que muestra la tarjeta:

  • La reconstrucción del índice nunca se ha ejecutado. — el estado inicial.
  • Solicitud guardada, el streamer aún no la ha recogido. — la solicitud está en la configuración y el streamer no ha llegado a ella.
  • En curso: blobs N, añadidos N, reescaneados N. — el recorrido está en marcha. Los blobs reescaneados son los caros: se relee su MP4 entero, y eso explica el ritmo.
  • La última reconstrucción terminó hace N, blobs añadidos: N. — el recorrido ha terminado.
  • La última reconstrucción se interrumpió hace N. — el recorrido no llegó al final.
  • La configuración del streamer no está disponible: no hay dónde guardar la solicitud. — el botón queda deshabilitado mientras la configuración no se pueda leer.

El recorrido va en paralelo por los discos. Detener interrumpe una reconstrucción en curso — la solicitud de parada se guarda igual, a través de la configuración.

Lo único que impide arrancar es un recorrido ya en marcha. Una reconstrucción no interfiere con la grabación ni con la reproducción del archivo.