Backup solution for distributed compute platforms.
- Ansible
- Rust
- Magic, just a little
Systash looks to solve an important task facing current and future deployed cloud infrastructure, which is data protection. Just as we rely on journal operations on our filesystem to provide data security, there should be that same effort taken for deployed systems through the use of system imaging and continuos backups.
Systash uses a number of open source projects to work properly:
- [Ansible] - software provisioning, configuration management, and application-deployment tool.
- [Rust] - fast memory safe programming language.
Install:
$ git clone https://github.com/Toure/Systash.git
$ cd Systash
$ cargo build --relase
$ cargo install
Edit the configuration file: (with your favortie editor)
[Server]
host = "undercloud"
ip = "192.168.0.1"
system_group = "FO_North_01"
[[client]]
#client list defined here.
[client.node1]
host = "controller_0"
ip = "192.168.2.20"
system_group = "FO_North_01"
[client.node2]
host = "controller_1"
ip = "192.168.2.21"
system_group = "FO_Noth_02"
[backup_path]
# default path is root, this can be adjusted to include
# specific paths.
# base_dir = "/"
#
[exclude_path]
# ignore a specific set of paths.
exclude_dir = "
[storage]
archives = "/foo/storage"
[nfs_server]
host = "central_store"
ip = "192.168.2.254"
**nfs_server ip should correspond with the network which is addressable by the controller nodes.
$ systash --install
$ systash --init storage --profile server
$ systash --init storage --profile client
$ systash --backup
$ systash --rescue
Want to contribute? Great! Please submit PRs with patches or open a bug as a feature request.
- Write Tests
- Add features which I couldn't think about.
Apache v2
Free Software!