zfs: vaciar caché sin exportar

zfs: vaciar caché sin exportar

Para realizar pruebas necesito que el caché de zfs esté frío.

Puedo vaciar el almacenamiento en caché del grupo eliminando los discos de caché, exportando e importando el grupo. Esto da el efecto que quiero. Pero realmente me gustaría no exportar el grupo.

¿Existe una forma menos drástica de lograr el mismo efecto?

Lo que estoy buscando es el equivalente a:

echo 3 > /proc/sys/vm/drop_caches

que hace lo que quiero para ext4.

Fondo

Puedo ejecutar mi algoritmo de diferentes maneras. No me importa el rendimiento en el mejor de los casos. Ihacerpreocuparse por el peor desempeño. El peor de los casos sería con datos fríos (los datos se tocaron hace tanto tiempo que ya no están en ARC/L2ARC).

Para elegir la forma óptima de ejecutar el algoritmo, necesito poder ejecutarlo en el mismo conjunto de pruebas. Y este equipo de prueba debe estar frío. Esto va completamente en contra de la estrategia de almacenamiento en caché de ZFS: si ejecuto el mismo conjunto de pruebas una y otra vez, colocará los datos en ARC, lo cual tiene mucho sentido en circunstancias normales, pero no aquí.

Puedo exportar/importar en mi máquina de desarrollo, pero no puedo hacerlo en producción. Sin embargo, al vaciar el caché,voluntadser aceptable en producción.

Preferiría que ARC todavía funcione, de modo que los datos fríos se almacenen en caché después de ser leídos (nuevamente similar a ext4), pero puedo vivir con ARC completamente deshabilitado durante la prueba.

Respuesta1

echo 3 > /proc/sys/vm/drop_caches usadopara borrar el caché de ZFS, pero una confirmación reciente lo cambió para borrarlo solo parcialmente.

Para restaurar el comportamiento anterior, uno debe configurar los zfs_arc_shrinker_limitparámetros del módulo en 0(veraquí).

Entonces, para eliminar ARC sin exportar el grupo:

echo 0 > /sys/module/zfs/parameters/zfs_arc_shrinker_limit
echo 3 > /proc/sys/vm/drop_caches

Lo anterior caerácasitodo ZFS ARC, dejando solo un puñado de MB relacionados con los metadatos básicos del grupo.

información relacionada