GithubHelp home page GithubHelp logo

sapisuper / backup Goto Github PK

View Code? Open in Web Editor NEW

This project forked from twindb/backup

0.0 1.0 0.0 1.17 MB

TwinDB Backup

Home Page: https://twindb-backup.readthedocs.io/en/stable/

License: Other

Makefile 1.28% Shell 1.60% Ruby 2.73% Python 93.37% Puppet 1.01%

backup's Introduction

TwinDB Backup

Documentation Status Join the chat at https://gitter.im/twindb/backup Updates

TwinDB Backup is a multipurpose tool for backing up MySQL and file system. It can store backup copies on a remote SSH server, Amazon S3 or Google Cloud Storage.

TwinDB Backup accepts a backup copy stream from any of supported sources (MySQL Server, Percona Server, Percona XtraDB Cluster, or file system) and redirects the stream to a series of configurable modifiers.

The modifiers can compress the stream, encrypt it, and save a copy of the stream on the local disk.

Compression options:

  • gzip
  • bzip2
  • lbzip2
  • pigz

Encryption options:

  • Public/private key encryption

Because TwinDB Backup encrypts the stream itself it ensures transfer encryption as well as encryption at rest.

After the stream passed all modifiers it is sent to one of configured backup destination. It can be:

  • Amazon S3 bucket
  • Google Cloud Storage bucket
  • Any server with SSH demon
TwinDB Backup Architecture

TwinDB Backup Architecture

The tool can easily restore the backup copies. Read full documentation on https://twindb-backup.readthedocs.io.

Features

TwinDB Backup key features:

  • MySQL full and incremental backups
  • Zero seconds Recovery Point Objective (RPO) with MySQL binary log backups
  • Percona Xtradb Cluster backups
  • Files/directories backups
  • Backups verification
  • Backups monitoring and alerting:
    • Recovery Time Objective (RTO)
    • Backups heartbeat
    • Backups verification heartbeat
  • PCI-DSS compliant:
    • Transfers encryption
    • Encryption at rest
  • GDPR compliant:
    • Strictly enforced retention policy

TwinDB Backup storage options:

  • Amazon S3
  • Google Cloud Storage
  • Remote SSH server
  • Optional local copy

Other features:

  • Retention policy defines how many hourly/daily/weekly/monthly/yearly copies to keep
  • Separate retention policy for remote and local backup copies
  • Email notifications
  • Datadog integration
  • cron configuration comes with a package

How do I get set up?

TwinDB Backup can be installed from a DEB/RPM package. The TwinDB Backup package can build on a machine with Docker service.

make package will build the package for the operating system defined in the OS_VERSION environment variable. Possible OS_VERSION values:

  • 6
  • 7
  • jessie
  • stretch
  • trusty
  • xenial
  • bionic
  • cosmic.
# export OS_VERSION=bionic
# make package

The package file will be generated in omnibus/pkg/:

$ ls omnibus/pkg/*.deb
omnibus/pkg/twindb-backup_2.20.0-1_amd64.deb

Once the package is built you can install it with rpm/dpkg or upload it to your repository and install it with apt or yum.

Configuration

Configuration is stored in /etc/twindb/twindb-backup.cfg. See https://twindb-backup.readthedocs.io/ for more details.

Credits

TwinDB Backup uses Percona Xtrabackup for MySQL backups.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.