Hi all,
I am using ZFS and "zfs snapshot/send/receive", to send ZFS snapshots
to a "mirroring" server, just the incremental changes instead of the full
snapshot everytime.
I am aware of LVM snapshots but I never used it for incremental mirroring
(and did not use them a lot, anyway, so I never looked too much under the
hood - maybe I should have..)
The kernel documentation makes me wonder whether it is possible to achieve
the same with LVM:
http://www.mjmwired.net/kernel/Documentation/device-mapper/snapshot.txt
According to that, you have access to the COW storage as well:
# lvcreate -L 1G -n base volumeGroup
# lvcreate -L 100M --snapshot -n snap volumeGroup/base
# ls -lL /dev/mapper/volumeGroup-*
93 brw------- 1 root root 254, 11 29 ago 18:15
/dev/mapper/volumeGroup-base-real
94 brw------- 1 root root 254, 12 29 ago 18:15
/dev/mapper/volumeGroup-snap-cow
95 brw------- 1 root root 254, 13 29 ago 18:15
/dev/mapper/volumeGroup-snap
96 brw------- 1 root root 254, 10 29 ago 18:14
/dev/mapper/volumeGroup-base
97
Is it possible to send copies of it to a remote server and apply the
changes as described in the doc, using the merge options?
The idea is to establish a "rotation regime" and just to send the -cow
block device for continuous mirroring.
Volker Grabsch, on a German mailing list, wrote about his improved
"block-level rsync",
https://github.com/vog/bscp
He plans to use it for LVM mirroring.
I just wondered whether he really has to search the whole block device for
changes, if LVM knows about them already.
Regards
Peter