uback
There are many backup tools out there. Or should I say, there are may
backup scripts out there. Most of them will focus on a specific usage
(say, backup btrfs
snapshots to a sftp
server). All of them will
have different feature matrices (encryption/incremental backups/pruning)
and different means of configuration/deployment.
uback
try to solve this by defining a simple model of backup producers
(called "sources") and backup stores (called "destinations"), and writing
the intermediate between them once for all. One can now focus on writing
each specific source (tar
, mysqldump
, btrfs
,...) or destination
(s3
, sftp
, local files,...) in a relatively straightforward
way. After that, from the point of view of the system administrator,
the configuration can be made in a uniform way accros different backup
workflows.
Key features are encryption, compression, incremental backups (if the
source allow it) and retention policy.
Quickstart and Documentation
All the documentation is in the doc/ directory. You should start
by the tutorial and then jump to advanced topics (file
format, custom sources,
custom destinations,
proxying) or the documentation specific to each source
or destination.
Supported Sources
Supported Destinations
Current Status and Planned Features
uback
is in a preliminary stage, quite lacking feature-wide, but fairly
stable with a good test suite. Here is a rough sketch of the roadmap :
0.1
- Core features:
- Backups & Incremental Backups
- Restoration
- Encryption
- Compression
- Pruning/Retention Policy
- Sources:
tar
, mariabackup
- Destinations: local filesystem, S3 compatible object storage
- Documentation
- CI/Release Management
0.2 (released)
- Custom sources
- Custom destinations
0.3 (released)
- switch to age for encryption. This
will be the first (and hopefully the last) breaking change for the file
format and keys format.
0.4 (released)
-
btrfs
source
-
btrfs
destination
- remove mariabackup footguns
- add the option to use a dockerized mariabackup in the restoration
process to have an exect version match
- returns an error when attempting to create an incremental backup
based on a full backup created by a different version
0.4.1 (released)
- Fix a compatibility issue with MariaDB 11
0.5 (released)
0.6 (released)
- Allow multiple public keys per backup
0.7
0.8
- Should be suitable for production
1.0