Hi.
My goal is site to site replication. I'm replacing current storage with new FN-cert hardware. I'm also totally changing the pool layout.
Background - I have a bunch of FN servers, and still administer 8 of them daily, BUT, I've always run daily rsync scripts (not me, cron actually), which have never failed in 8 years. The great advantage of using rsync for me is I've always had remote duplicate filesystems that were ready to go if needed. The disadvantages are 1) rsync is not atomic and takes a long time to run. I have millions of files, and although I run numerous scripts simultaneously on different directories, it still takes a long time over a 10Mbit dedicated MAN connection. Therefore, I can really only realistically run it daily, which shoots the new goal of < 1 hour RPO and RTO out the window, and I can really lose 24 hours worth of data which is not acceptable. 2) Well, this is just an extension of #1, in that there is no possible way I could effectively run rsync every 5 minutes, which is what I want to do with snapshots.
****************************
For this discussion, assume I have 2x FN 11.2 servers in two different data centers. Also assume, and this is really the big one in my opinion, I do not need to go back in time to pull out old files^^^. I want a replica (or at least be able to get there somewhat easily) of what I have in data center A (DCA) in data center B (DCB).
I'm thinking of having snapshot/replication tasks being:
I've tested snapshots and replication (but not with this exact schedule) and find that at any time, I can go to the latest snapshot @ DCB, clone the snapshot, then promote it, and I seem to have a replica working filesystem of what's at DCA (which is what I want).
Questions (round 1) (please keep ^^^ from above in mind)
1) Do snapshots refer to data diff in the previous snapshot solely based on the time it was taken, or based on the snapshot with the same increment. For example, does the "hourly" snapshot taken at 10pm Friday night reference the previous 5-minute snapshot from 9pm, or the previous hourly one that was done at 7am? I'm asking because I don't understand things like "keeping daily's for a week, weekly's for a month, monthly's for a year". IF for example you're taking daily snapshots, is there really such a thing as a monthly snapshot?
2) What happens when you manually delete a snapshot, or when it's removed automatically? Through some testing @ DCB, I had snapshots replicated automatically from DCA to DCB, with about 3GB in the first, then I didn't change any files @ DCA. I waited a while for a bunch of other snapshots to be replicated from DCA to DCB, pretty much all 0's, stopped the replication task @ DCA, then deleted them all except the last one @ DCB, so all I had left was the last one. I cloned it, then promoted it. I'm trying to figure out how it seemed I had 3GB of data in the dataset. I figured if I deleted the first snapshot, the data would be gone.
This leads to figuring out "Snapshot Lifetime" in the Periodic Snapshot Task, and "Deleting Stale Snapshots" in Replication Tasks.
3) Ok then, so how long should I keep them? I'll have roughly 179 snapshots per day during the weekdays. I'm trying to understand the "maintenance" that I need to do. What do I need to do to keep things manageable, streamlined, and easy to "convert" if needed?
4) Does cloning, then promoting a snapshot "add" it to an existing filesystem if I have one? Meaning... let's say things are rolling along, and for some reason I have to clone then promote a snapshot. fine. Then I get another snapshot. When I clone it then promote it, does it add to what in the current dataset?
5) Once a clone is promoted, is there a reason to keep any of the old snapshots around?
6) Are there any maintenance "gotchas" that I have not thought about?
My goal is to test all of this out for the next couple of weeks on the two new systems before I start copying real data.
Many, many thanks.
My goal is site to site replication. I'm replacing current storage with new FN-cert hardware. I'm also totally changing the pool layout.
Background - I have a bunch of FN servers, and still administer 8 of them daily, BUT, I've always run daily rsync scripts (not me, cron actually), which have never failed in 8 years. The great advantage of using rsync for me is I've always had remote duplicate filesystems that were ready to go if needed. The disadvantages are 1) rsync is not atomic and takes a long time to run. I have millions of files, and although I run numerous scripts simultaneously on different directories, it still takes a long time over a 10Mbit dedicated MAN connection. Therefore, I can really only realistically run it daily, which shoots the new goal of < 1 hour RPO and RTO out the window, and I can really lose 24 hours worth of data which is not acceptable. 2) Well, this is just an extension of #1, in that there is no possible way I could effectively run rsync every 5 minutes, which is what I want to do with snapshots.
****************************
For this discussion, assume I have 2x FN 11.2 servers in two different data centers. Also assume, and this is really the big one in my opinion, I do not need to go back in time to pull out old files^^^. I want a replica (or at least be able to get there somewhat easily) of what I have in data center A (DCA) in data center B (DCB).
I'm thinking of having snapshot/replication tasks being:
- every 5 minutes 8am - 9pm M-F
- hourly 8am - 9pm Sat, Sun
- hourly 10pm-7am daily
I've tested snapshots and replication (but not with this exact schedule) and find that at any time, I can go to the latest snapshot @ DCB, clone the snapshot, then promote it, and I seem to have a replica working filesystem of what's at DCA (which is what I want).
Questions (round 1) (please keep ^^^ from above in mind)
1) Do snapshots refer to data diff in the previous snapshot solely based on the time it was taken, or based on the snapshot with the same increment. For example, does the "hourly" snapshot taken at 10pm Friday night reference the previous 5-minute snapshot from 9pm, or the previous hourly one that was done at 7am? I'm asking because I don't understand things like "keeping daily's for a week, weekly's for a month, monthly's for a year". IF for example you're taking daily snapshots, is there really such a thing as a monthly snapshot?
2) What happens when you manually delete a snapshot, or when it's removed automatically? Through some testing @ DCB, I had snapshots replicated automatically from DCA to DCB, with about 3GB in the first, then I didn't change any files @ DCA. I waited a while for a bunch of other snapshots to be replicated from DCA to DCB, pretty much all 0's, stopped the replication task @ DCA, then deleted them all except the last one @ DCB, so all I had left was the last one. I cloned it, then promoted it. I'm trying to figure out how it seemed I had 3GB of data in the dataset. I figured if I deleted the first snapshot, the data would be gone.
This leads to figuring out "Snapshot Lifetime" in the Periodic Snapshot Task, and "Deleting Stale Snapshots" in Replication Tasks.
3) Ok then, so how long should I keep them? I'll have roughly 179 snapshots per day during the weekdays. I'm trying to understand the "maintenance" that I need to do. What do I need to do to keep things manageable, streamlined, and easy to "convert" if needed?
4) Does cloning, then promoting a snapshot "add" it to an existing filesystem if I have one? Meaning... let's say things are rolling along, and for some reason I have to clone then promote a snapshot. fine. Then I get another snapshot. When I clone it then promote it, does it add to what in the current dataset?
5) Once a clone is promoted, is there a reason to keep any of the old snapshots around?
6) Are there any maintenance "gotchas" that I have not thought about?
My goal is to test all of this out for the next couple of weeks on the two new systems before I start copying real data.
Many, many thanks.