1
0
mirror of https://github.com/krislamo/puppet-rsnapshot synced 2024-11-10 00:00:35 +00:00

Merge branch 'master' into develop

This commit is contained in:
Norbert Varzariu 2017-04-09 10:16:14 +02:00
commit 1a68a16c79

115
README.md
View File

@ -42,6 +42,7 @@ This module is best used with an ENC like hiera. It will make your config much e
* This module will install the rsnapshot package on your system * This module will install the rsnapshot package on your system
* This module will manage the rsnapshot config on your system * This module will manage the rsnapshot config on your system
* This module will manage cron entries for your configured nodes * This module will manage cron entries for your configured nodes
* This module will manage the cron service on your system
### Setup Requirements ### Setup Requirements
@ -150,11 +151,13 @@ rsnapshot::hosts:
The defaults are pretty reasonable, I hope. However, you may override pretty much anything. Available parameters are discussed below. The defaults are pretty reasonable, I hope. However, you may override pretty much anything. Available parameters are discussed below.
#### Specials #### Specials
As mentioned, this module will generate random time entries for your hosts. The random number generator is hashed with hostname and backup_level, so the randomness will be repeatable per host.level. This is important so puppet won't override the crons with each run. This module will generate random time entries for your hosts. The random number generator is hashed with hostname and backup_level, so the randomness will be repeatable per host.level. This is important so puppet won't override the crons with each run.
You may specify time ranges as follows: You may specify time ranges as follows:
* default cron syntax * default cron syntax
* an array with allowed values, for example, if you want the backup for a host to run between 1am and 5am, you would override the hours setting for the host in question. * an array with allowed values
in hiera this would look like: (Explanation see below) - for example, if you want the backup for a host to run between 1am and 5am, you would override the hours setting for the host in question.
In hiera this would look like: (Explanation see below)
```yaml ```yaml
rsnapshot::hosts: rsnapshot::hosts:
@ -336,6 +339,15 @@ Default is:
#### `$cron_dir` #### `$cron_dir`
Directory to drop the cron files to. Crons will be created per host. Directory to drop the cron files to. Crons will be created per host.
(Default: /etc/cron.d) (Default: /etc/cron.d)
#### `$cronfile_prefix_use`
Bool. Set this to true if you want your cronfiles to have a prefix.
(Default: false)
#### `$cronfile_prefix`
Optional prefix to add to the cronfiles name. Your files will be named: prefix_hostname
(Default: 'rsnapshot_' only if you set $cronfile_prefix_use = true)
#### `$default_backup` #### `$default_backup`
The default backup directories. This will apply to all hosts unless you set [backup_defaults](#backup_defaults) = false The default backup directories. This will apply to all hosts unless you set [backup_defaults](#backup_defaults) = false
Default is: Default is:
@ -346,15 +358,11 @@ Default is:
'/home' => './', '/home' => './',
} }
``` ```
#### `$cronfile_prefix_use`
Bool. Set this to true if you want your cronfiles to have a prefix.
(Default: false)
#### `$cronfile_prefix`
Optional prefix to add to the cronfiles name. Your files will be named: prefix_hostname
(Default: 'rsnapshot_' only if you set $cronfile_prefix_use = true)
#### `$hosts` #### `$hosts`
Hash containing the hosts to be backed up and optional overrides per host Hash containing the hosts to be backed up and optional overrides per host
(Default: undef (do nothing when no host given)) (Default: undef (do nothing when no host given))
#### `$interval` #### `$interval`
How many backups of each level to keep. How many backups of each level to keep.
Default is: Default is:
@ -369,8 +377,10 @@ Default is:
#### `$package_ensure` #### `$package_ensure`
(Default: present) (Default: present)
#### `$package_name` #### `$package_name`
(Default: rsnapshot) (Default: rsnapshot)
#### `$snapshot_root` #### `$snapshot_root`
global. the directory holding your backups. global. the directory holding your backups.
(Default: /backup) (Default: /backup)
@ -637,9 +647,25 @@ Default is: undef
#### `$cmd_postexec` #### `$cmd_postexec`
Default is: undef Default is: undef
#### `$use_lvm` #### `$du_args`
Default is: undef Default is: undef
#### `$exclude`
Default is: []
#### `$exclude_file`
Other than this might suggest, the default behavior is to create an exclude file per host.
Default is: undef
#### `$include`
Default is: []
#### `$include_file`
Default is: undef
#### `$link_dest`
Default is: false
#### `$linux_lvm_cmd_lvcreate` #### `$linux_lvm_cmd_lvcreate`
Default is: undef # '/sbin/lvcreate' Default is: undef # '/sbin/lvcreate'
@ -665,6 +691,9 @@ Default is: undef
#### `$linux_lvm_mountpath` #### `$linux_lvm_mountpath`
Default is: undef Default is: undef
#### `$lockpath`
Default is: '/var/run/rsnapshot'
#### `$logpath` #### `$logpath`
Default is: '/var/log/rsnapshot' Default is: '/var/log/rsnapshot'
@ -672,73 +701,55 @@ Default is: '/var/log/rsnapshot'
unused, we are logging to $logpath/$host.log unused, we are logging to $logpath/$host.log
Default is: '/var/log/rsnapshot.log' Default is: '/var/log/rsnapshot.log'
#### `$lockpath`
Default is: '/var/run/rsnapshot'
#### `$snapshot_root`
Default is: '/backup/'
#### `$no_create_root`
Boolean: true or false
Default is: undef
#### `$verbose`
Default is: '2'
#### `$loglevel` #### `$loglevel`
Default is: '4' Default is: '4'
#### `$stop_on_stale_lockfile` #### `$manage_cron`
Should this module manage the cron service?
Default is: true
#### `$no_create_root`
Boolean: true or false Boolean: true or false
Default is: undef Default is: undef
#### `$rsync_short_args`
Default is: '-az'
#### `$rsync_long_args`
rsync defaults are: --delete --numeric-ids --relative --delete-excluded
Default is: undef
#### `$ssh_args`
Default is: undef
#### `$du_args`
Default is: undef
#### `$one_fs` #### `$one_fs`
Default is: undef Default is: undef
#### `$retain` #### `$retain`
Default is: { } Default is: { }
#### `$include` #### `$rsync_short_args`
Default is: [] Default is: '-az'
#### `$exclude`
Default is: []
#### `$include_file`
#### `$rsync_long_args`
rsync defaults are: --delete --numeric-ids --relative --delete-excluded
Default is: undef Default is: undef
#### `$exclude_file` #### `$rsync_numtries`
Other than this might suggest, the default behavior is to create an exclude file per host. Default is: 1
#### `$snapshot_root`
Default is: '/backup/'
#### `$ssh_args`
Default is: undef Default is: undef
#### `$link_dest` #### `$stop_on_stale_lockfile`
Default is: false Boolean: true or false
Default is: undef
#### `$sync_first` #### `$sync_first`
Default is: false Default is: false
#### `$rsync_numtries` #### `$use_lvm`
Default is: undef
Default is: 1
#### `$use_lazy_deletes` #### `$use_lazy_deletes`
Default is: false Default is: false
#### `$verbose`
Default is: '2'
## Limitations ## Limitations
Currently, this module support CentOS, Fedora, Ubuntu and Debian. Currently, this module support CentOS, Fedora, Ubuntu and Debian.
@ -750,5 +761,5 @@ want it off the face of the planet, feel free to get in touch with me.
Norbert Varzariu (loomsen) Norbert Varzariu (loomsen)
## Contributors ## Contributors
Please see the [list of contributors.](https://github.com/loomsen/puppet-bloonix_agent/graphs/contributors) Please see the [list of contributors.](https://github.com/loomsen/puppet-rsnapshot/graphs/contributors)
A big thank you to Hendrik Horeis <hendrik.horeis@gmail.com> for all his input and testing of this module. A big thank you to Hendrik Horeis <hendrik.horeis@gmail.com> for all his input and testing of this module.