¿Es posible crear instantáneas de solo metadatos con LVM?

¿Es posible crear instantáneas de solo metadatos con LVM?

Al usar dm thin, entiendo que ahora es posible almacenar los metadatos por separado de la instantánea.

¿Alguien sabe si sería posible crear instantáneas de solo metadatos que no incurran en la misma sobrecarga de E/S? Me interesa qué bloques han cambiado, pero no el contenido del bloque anterior.

Mi principal motivación para esta pregunta es que me pregunto si una solución de respaldo que use algo como lvmsync (https://github.com/mpalmer/lvmsync), pero sin incurrir en gastos generales significativos.

La documentación es un poco ligera en cuanto a información sobre cómo lograr esto, mis pensamientos giraban en torno a la creación de un grupo reducido basado en /dev/null o similar que se descarte silenciosamente cuando se escribe.

Respuesta1

El equivalente del asignador de dispositivos /dev/nulles el objetivo cero ( dmsetup create --table '0 <nsectors> zero' myzeroes). Creo que podrá utilizar esto como dispositivo de datos para su grupo reducido; y luego tome una instantánea de su volumen original (como origen externo) para realizar un seguimiento de los cambios que se le realizan. Todo esto se hace fuera de LVM; necesita toda la flexibilidad de DM, mientras que LVM se adapta a casos de uso comunes de manera más conveniente y segura.

Con ayuda deaprovisionamiento ligero.txt:

dmsetup create --table "0 $nsectors zero" myzeroes
dmsetup create pool \
    --table "0 $nsectors thin-pool $metadata_dev /dev/mapper/myzeroes \
    $data_block_size $low_water_mark"
thinnum=0
dmsetup message /dev/mapper/pool 0 "create_thin $thinnum"
origsectors=$(blockdev --getsz /dev/myorigin)
dmsetup create snap \
    --table "0 $origsectors thin /dev/mapper/pool $thinnum /dev/myorigin"

información relacionada