how to one-way mirror an entire zfs pool to another zfs pool
30
votes
6
answers
79187
views
I have one zfs pool containing several zvols and datasets of which some are also nested.
All datasets and zvols are periodically snapshotted by zfs-auto-snapshot.
All datasets and zvols also have some manually created snapshots.
I have setup a remote pool on which due to lack of time, initial copying over local high speed network via zfs send -R did not complete (some datasets are missing, some datasets have outdated or missing snapshots).
Now the pool is physically remote over a slow speed connection and I need to periodically sync the remote pool with local pool, meaning data present in local pool must be copied to remote pool, data gone from local pool must be deleted from remote pool, and data present in remote pool but not in local pool must be deleted from remote pool, by data meaning 'zvols', 'datasets' or 'snapshots'.
If I was doing this between two regular filesystems using rsync, it would be "-axPHAX --delete" (that's what I actually do to backup some systems).
How do I setup a synchronizing task so the remote pool zvols & datasets (including their snapshots) can be in sync with local zvols,datasets&snapshots?
I would like to avoid transferring over ssh, because of low throughput performance of ssh; I'd prefer mbuffer or iscsi instead.
Asked by Costin Gușă
(629 rep)
Feb 16, 2016, 06:34 PM
Last activity: Sep 18, 2022, 06:48 AM
Last activity: Sep 18, 2022, 06:48 AM