Skip to content

About

MPBT enables managing backup tasks of specialized WebDev environments across multiple machines

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

23 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Multi Platform Backup Tool (MPBT)

MPBT is a versatile command line tool, which enables you to backup and restore environments across multiple machines

Features

  • Support for operations
    • backup
    • restore
  • Support for resources
    • directory
    • database
    • elasticsearch
  • Support for resources to be containerized with LXC
  • Support for all resource locations to be remote. You can even mix and match.
    • local → local
    • local → remote
    • remote → local
    • remote → remote
  • Resilient rsync file transfer between machines (auto-resume after connection loss)

Usage/Examples

java -jar mpbt.jar [OPTIONS...] TARBALL

Backup and restore on local machine

java -jar mpbt.jar --operation backup --directory --dirPath /var/www/html /home/user/backup-target.tar
java -jar mpbt.jar --operation restore --directory --dirPath /var/www/html /home/user/backup-source.tar

Backup remote directory on server01 to another remote location on server02

java -jar mpbt.jar --operation backup --directory --dirPath user@server01.com:/my/remote/server01/directory user@server02.com:/my/remote/server02/backup-target.tar

Backup directory within local LXC container and database within remote LXC container on server01 to remote LXC container on server02

java -jar mpbt.jar --operation backup --directory --database --dirPath lxc%local-container-name:/my/directory/within/lxc --dbHost user@server01.com:lxc%remote-mysql-container:localhost --dbName myDatabase --dbUser myUser --dbPassword myPassword user@server02.com:lxc%remote-container-name:/my/remote/server02/backup-target.tar

Arguments

General
--help Display help documentation
--debug Enable debug output
--operation <arg> The operation to use MPBT with
[backup, restore]
Job resources
--directory Enable backing up/restoring a directory
--database Enable backing up/restoring a MySQL database
--elasticsearch Enable backing up/restoring a Elasticsearch instance
Directory specific parameters
--dirPath <arg> The directory to backup/restore
Database specific parameters
--dbHost <arg> The database server host
--dbName <arg> The name of the database
--dbUser <arg> The name of the database user
--dbPassword <arg> The password of the database user
Elasticsearch specific parameters
--esHost <arg> The Elasticsearch master node hostname
--esIndexPrefix <arg> The Elasticsearch index prefix to backup/restore

Requirements

  • Java runtime
  • MySQL client (e.g. mariadb-client)
  • Prepared SSH key authentication

License

Permitted use under the MIT licence

About

MPBT enables managing backup tasks of specialized WebDev environments across multiple machines

Resources

Stars

0 stars

Watchers

1 watching

Forks

Contributors

Languages