Version information
Start using this module
Add this module to your Puppetfile:
mod 'abstractit-mysql_zrm', '0.1.4'
Learn more about managing modules with a PuppetfileDocumentation
abstractit-mysql_zrm
####Table of Contents
- Overview - What is the mysql_zrm module?
- Module Description - What does the module do?
- How it works - The basics of getting started with mysql_zrm
- Usage - How to set it up
- Implementation - An under-the-hood peek at what the module is doing
- Limitations - OS compatibility, etc.
- Development - Guide for contributing to the module
- Support - Where to get support
Overview
Puppet module for setting up Zamanda MySQL-ZRM to backup databases from a MariaDB, Percona or MySQL server.
Module Description
Manages full and incremental backups of selected databases using MySQL-ZRM. It can use a server <-> client setup or the server can be installed directly onto your database server to do backups there. Backupsets can be setup on any node and get exported to the server of your choosing. At this stage it doesn't manage database users to do the backups due to the variety of ways to implement this. This may be implemented in a future release if I can find good modules for each server type.
How it works
what mysql_zrm affects:
- configuration files for mysql_zrm
- cron jobs to do the backups
- expunging old backups
Usage
Setting up mysql_zrm
Automatic Client <-> Server mode.
# override these variables if needed.
`$mysql_zrm::params::db_servers` Array of database servers. (defaults to "db.${::domain}")
`$mysql_zrm::params::backup_server` (defaults to "backup.${::domain}")
Setting these variables will automaticlly include the server or client class.
# include this on your database and backup servers.
include mysql_zrm
Manual Client <-> Server mode
# include this on your database servers.
include mysql_zrm::client
# include this on your backup servers.
include mysql_zrm::server
Exporting backupsets for mysql_zrm servers
These will get exported to the
mysql_zrm::backupset { 'testing':
databases => 'test',
fullhours => ['0','12'],
backup_db_user => 'backup',
backup_db_pass => 'PASSWORD',
backup_db_server => $::fqdn,
}
title
Name for the backup
ensure
Whether to setup the backup set, defaults to present.
databases
Databases to backup.
fullhours
Hours to run the backup.
backup_db_user
Database user to use for the backup.
backup_db_pass
Password for the backup user.
backup_db_server
Database server.
Limitations
Backupset config files and crons need stored configs on your puppet master. I recommend using PuppetDB for this.
Development
All development, testing and releasing is done by Abstract IT at this stage. If you wish to join in let me know.
Support
Please log tickets on the github issues page https://github.com/abstractitptyltd/puppet-mysql_zrm/issues
##2014-03-27 - Pete Brown pete@abstractit.com.au 0.1.4 ###Summary Bugfix Release
####Bugfixes
- remove backup_db_server default for mysql_zrm::backupset to make it more portable
####Known bugs
- No known bugs
2014-03-26 - Pete Brown pete@abstractit.com.au - 0.1.3
- remove mysql_zrm::install from main class so inclusion is less invasive
2014-03-26 - Pete Brown pete@abstractit.com.au - 0.1.2
- Fixed location of gzip binary
2014-03-25 - Pete Brown pete@abstractit.com.au - 0.1.1
- Fixed a few variable getting written to config files with empty contents
2014-03-25 - Pete Brown pete@abstractit.com.au - 0.1.0
*Initial Release
Dependencies
- puppetlabs/stdlib (>= 0.0.1)