SOLVED Recursive snapshot expiration and offsite replication query.

Status
Not open for further replies.

TremorAcePV

Explorer
Joined
Jun 20, 2013
Messages
88
I don't understand how snapshots work with recursive replication. I think that sums up what this post will be.

Basically, I'm setting up one local FreeNAS machine (name: freenas1) to replicate to another offsite FreeNAS machine (name: offsite). However, I am not sure if I want "Recursively replicate and remove stale snapshot on remote side:" under "GUI > Storage > ZFS Replication > Replication task settings" enabled.

I probably just don't understand what "remove stale snapshot on remote side" means. Define "stale".

The end result I want is that freenas1 is identical to offsite only "today" or whenever the last snapshot ran. Offsite doesn't need to have all the snapshots going into the past that freenas1 has. It just needs to be a current copy of what's on freenas1 (not counting snapshots).

The reason I may need it that way is because internet here sucks. Even for businesses. The snapshots usually don't take up more than a few MB, but what I don't want happening is the replication to have to replicate all of freenas1 to offsite every single time it replicates. 2.55TB would take forever on a 10Mb/1Mb connection.

That's why I need to know what "stale" means.

Any help is appreciated.
 

cyberjock

Inactive Account
Joined
Mar 25, 2012
Messages
19,526
Yeah, you can't do what you are doing. The first replication is always and will always require a baseline of your pool and/or dataset. So that 2.55TB that you don't want to transmit over 10Mb/1MB *must* already be on the server. Without a baseline already existing the replication will fail as there is no baseline or it will require you to send all 2.55TB of data.
 

TremorAcePV

Explorer
Joined
Jun 20, 2013
Messages
88
Yeah, you can't do what you are doing. The first replication is always and will always require a baseline of your pool and/or dataset. So that 2.55TB that you don't want to transmit over 10Mb/1MB *must* already be on the server. Without a baseline already existing the replication will fail as there is no baseline or it will require you to send all 2.55TB of data.
What I wanted to know is if it will have to re-replicate the entire base image basically if I use recursive replication where it discards stale snap shots.

What I figured I would do is replicate the entire thing at the location, then move it to the off-site location and set it up to continue replicating over the internet. That way the 2.55TB is already set.
 

titan_rw

Guru
Joined
Sep 1, 2012
Messages
586
Theoretically, yes, you can do the initial replication across the lan, then move the servers, and reconfigure replication for remote. I've never tried it, but I understand other people have.

It will have to replicate any changed or new data between snapshosts. This isn't the same as what the snapshot says for "used" as listed in the snapshot list. (If you copy 1gb of new data, but only change 1 mb the snapshot will be listed as 'using' 1mb. But 1gb + 1mb will have to be replicated. If you didn't add any data, but deleted 1gb, the snapshot would be listed as using 1gb, but require very little bandwidth to replicate that to the remote)

"remove stale snapshots" simply drops snapshots from the remote side that no longer exist on the 'master'. I think that's what it does anyway. Without that checked I think you'd end up keeping all snapshots indefinitely on the remote side.
 
Status
Not open for further replies.
Top