We currently back up once a day using rsync. But we are preparing a move to ZFS snapshots, which will open up many possibilities.
After rsync finishes, a snapshot preserves the resulting state. Backups run automatically once a day and cannot currently be configured for individual VPSes. You can then access backups through the control panel or directly from your VPS in /vpsadmin_backuper and its .zfs/snapshot/ subdirectory. Read more in our knowledge base.
Our developer Jakub "Aither" Skokan is already working on a complete rewrite of vpsAdmin (our web interface), which will use ZFS snapshots and send/receive instead of rsync. Snapshots will be taken locally (and quickly) on the physical server, then all sent to the backup server at night. This will give us many more options for working with backups.
It will be possible to configure the snapshot interval and retention for each VPS, as well as take a snapshot on demand at any time through an API call (which, thanks to HaveAPI, means a single vpsfreectl command). We will write more about that when we deploy it.
ZFS snapshots are "free" in terms of performance and are instantaneous. Essentially, the only drawback, and the reason we cannot take them every 500 ms, for example, is that a snapshot forces the dataset's state to sync to disk. We would be syncing constantly, which would kill disk performance. I expect the minimum interval configurable for backup snapshots to be 15 minutes. But as I said, you will be able to take a backup manually at any time.
The upcoming vpsAdmin 2.0 has three "knobs" for setting snapshot lifetimes:
- the minimum number of snapshots to keep (to be set to 14)
- the maximum number of snapshots (initially 20)
- the maximum snapshot age (14 days)
That allows up to six additional snapshots taken manually without starting to delete the oldest automatic backup snapshots. Excess snapshots will then be deleted during the nightly transfer to the backup server.
One important change, though, is that backups will no longer be as easily accessible inside a VPS. This is because vpsAdmin 2.0 will support subdatasets, and rolling back to a particular snapshot deletes all newer snapshots. We therefore need branching, which is described in detail in the documentation.
At the moment, we estimate that vpsAdmin 2.0 will be ready towards the end of the year. We hope to deploy it around Christmas.
From the thread How long does ZPS snapshotting take at vpsFree?
ZFS je fajn, ale pri urcitom zaplneni zacina byt strasne pomale. Drzim palce. U nas ho uz nepouzivame.
ZFS je v prvni rade copy on write filesystem, tohle chovani je u vsech CoW FS normalni. BTRFS, az nebude trpet detskymi nemocemi, bude s timhle mit problem na stalo taky. NetApp WAFL ma ten "problem" taky. Proste je potreba rezervovat odpovidajici cast mista a nikdy ho nezaplnit. Bezne se doporucuje nechat aspon 20% a pak neni problem. Pravda je, ze u ZFS je to v soucasny implementaci vic, nekde okolo 35%, potom zacne rapidne narustat fragmentace, coz pool na rotacnich diskach zpomali. A pri min jak cca 10% volnyho mista u poolu s kapacitama v TB zacne byt pomale vyhledani volneho mista pro nove zapisovana data. Nicmene OpenZFS se vyviji dopredu pomerne rychle a tohle je jeden z problemu, ktery je pravidelne na programu vyvojaru ke konstantnimu vylepsovani.