I'd like to setup a 3-node LXD cluster (with each node having an identical local ZFS zpool) and create container and VM instances on each of the nodes. I see that LXD has support for automatically creating and pruning snapshots using snapshots.schedule and snapshots.expiry which is great! Is this supported for both container and VM instances?
After LXD automatically makes snapshots, I would like to sync them from the node where the instance is running to the other nodes in the cluster, that way if the original node fails, I can bring up the instance elsewhere in the cluster (even if the failed node is permanently offline). Normally I would use syncoid (https://github.com/jimsalterjrs/sanoid
) to replicate ZFS datasets to another server, and while that may work in this case, I can't use sanoid on the target server to prune the old snapshots because it doesn't understand them (since LXD create the ZFS snapshots itself via snapshots.schedule). If I replicate the ZFS dataset to another server, can I tell LXD on the target server to automatically clean up the snapshots for that instance per its snapshots.expiry setting, or how can I achieve this effect of making a backup copy of the instance to another server for DR purposes and pruning its snapshots too?