A standalone system that can perform backup and restore functions for a wide variety of pluggable data systems
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
agent Make Compression Optional (#437) Aug 1, 2018
bin Support Minutely backup jobs Sep 17, 2018
ci Cancel in-flight AJAX queries on dispatch Sep 18, 2018
client/v2/shield Make Compression Optional (#437) Aug 1, 2018
cmd Support fixed_key job imports Sep 14, 2018
core Support Minutely backup jobs Sep 17, 2018
crypter Remove unused crypter.Initialize() function Aug 8, 2018
db Don't Stack Scheduled Jobs Sep 17, 2018
demo Added python-software-properties in order to install php on aegis (#431) Jul 13, 2018
dev Deprecate `scality` plugin Nov 29, 2017
docs Make Compression Optional (#437) Aug 1, 2018
legacy Revamp README Feb 15, 2018
lib Handle Github profiles without display names Apr 25, 2018
plugin Enable `mysql` plugin to restore single database Sep 14, 2018
route New {start,stop}_{after,before} querystring parameters Jul 23, 2018
t Use HTTP (not HTTPS) in t/api for Vault Sep 14, 2018
timespec Support Minutely backup jobs Sep 17, 2018
tui Switch to go-ansi Oct 24, 2017
util Fix up Session Details (#426) Jul 11, 2018
vendor New `backblaze` Storage Plugin Aug 12, 2018
web2 Update Copyright! It's almost 2019! Sep 19, 2018
.gitignore New `backblaze` Storage Plugin Aug 12, 2018
.travis.yml Run Full Tests in Travis CI Oct 11, 2017
LICENSE It's 2018! Feb 15, 2018
Makefile Properly assemble artifacts during `make release' Sep 15, 2018
README.md Revamp README Feb 15, 2018
ROADMAP.md SHIELD v8 Initial Rebase Sep 18, 2017
plugins New `backblaze` Storage Plugin Aug 12, 2018

README.md

S.H.I.E.L.D. Data Protection

Questions? Pop in our slack channel!

Build Status

What is SHIELD?

SHIELD is a data protection solution designed to make it easier for operations to protect their critical infrastructural data. It provides primitives for scheduling automatic backups of key systems, including PostgreSQL, MySQL, Consul, Redis and MongoDB, as well as a means for restoring backups in the event of an outage. Backups can be stored in a variety of cloud providers, including S3, Scality, Microsoft Azure Blobstore, and more.

Getting Started

The easiest way to get up and running with SHIELD is to deploy it via [BOSH][bosh], using the [SHIELD Bosh Release][shield-bosh].

Backup (Target) Plugins

fs - Local Filesystem Plugin

The fs plugin lets you back up arbitrary filesystem directories, optionally filtering the set of protected files via an includes / excludes system.

More information can be found here.

postgres - PostgreSQL Backup Plugin

Back up your PostgreSQL relational databases! This plugin lets you back up all databases (assuming you authenticate with an appropriately credentialed pg account), or pick and choose what to backup. Under the hood, this leverages pgdump, a proven solution in the PostgreSQL world.

More information can be found here.

mysql - MySQL Backup Plugin

Back up your MySQL relational databases! This plugin lets you back up all databases (assuming you authenticate with an appropriately credentialed mysql account), or pick and choose what to backup. This plugin leverages mysqldump, which generates plain-text SQL backups, which can often be replayed across MySQL versions.

More information can be found here.

xtrabackup - MySQL XtraBackup Plugin

This plugin offers another way of protecting MySQL, using the xtrabackup utility.

More information can be found here.

cassandra - Cassandra Backup Plugin

Back up Cassandra!

More information can be found here.

consul - Consul Backup Plugin

Back up the data stored in your Consul key-value store.

More information can be found here.

mongo - MongoDB Backup Plugin

Back up your MongoDB NoSQL database(s)!

More information can be found here.

Storage Plugins

s3 - Amazon S3 Storage Plugin

Store your encrypted backup archives in Amazon's Simple Scalable Storage (S3) cloud. All you need is a bucket, a key, and a secret, and you get highly-available offsite archive storage.

More information can be found here.

webdav - WebDAV Plugin

If you can't make use of external, 3rd-party cloud storage for your backups, but do have access to an HTTP/WebDAV server, you can use this storage plugin to keep your archives there.

Note: often, use of the webdav plugin will compromise your disaster survivability. Make sure that your WebDAV store is sufficiently resilient (HA, geographically dispersed, replicated, etc.), and that you aren't using the same SHIELD core to back up your WebDAV store.

More information can be found here.

azure - Microsoft Azure Storage Plugin

Store your encrypted backup archives in Microsoft's Azure Blobstore!

More information can be found here.

google - Google Cloud Storage Plugin

Store your encrypted backup archives in Google's Cloud!

More information can be found here.

swift - OpenStack Swift Storage Plugin

Store your encrypted backup archives in your local OpenStack Swift blob store!

More information can be found here.