Можно ли с помощью LVM создавать снимки, содержащие только метаданные?

Можно ли с помощью LVM создавать снимки, содержащие только метаданные?

Насколько я понимаю, с помощью dm thin теперь можно хранить метаданные отдельно от самого снимка.

Кто-нибудь знает, возможно ли создать снимки только метаданных, которые не влекут за собой те же накладные расходы ввода-вывода? Мне интересно, какие блоки изменились, а не содержимое старого блока.

Моя главная мотивация для этого вопроса заключается в том, что мне интересно, есть ли решение для резервного копирования, использующее что-то вроде lvmsync (https://github.com/mpalmer/lvmsync) - но не влекущее за собой существенных накладных расходов.

В документации немного информации о том, как этого добиться, я думал о создании тонкого пула на основе /dev/null или чего-то подобного, который молча отбрасывает данные при записи.

решение1

Эквивалентом устройства сопоставления /dev/nullявляется нулевая цель ( dmsetup create --table '0 <nsectors> zero' myzeroes). Я думаю, вы сможете использовать это как устройство данных для вашего тонкого пула; а затем сделать снимок вашего исходного тома (как внешнего источника), чтобы отслеживать, какие изменения в него вносятся. Все это делается вне LVM; вам нужна полная гибкость DM, в то время как LVM обслуживает общие случаи использования более удобно и безопасно.

С помощьютонкое-обеспечение.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"

Связанный контент