This version is compatible with:
- Puppet Enterprise 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x, 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2016.4.x
- Puppet >= 4.10.0 < 8.0.0
- , , , , ,
Automates PostgreSQL backups using pgprobackup.
Module allows configuration of a PostgreSQL instance (role for backup, SSH keys, hba rules) and a (remote) backup catalog (user account, backup directory, host keys, SSH keys).
Module touches many resources, including PostgreSQL configuration that might require server restart (e.g. when
archive_mode is modified). Make sure to understand the implications before using it. Each feature could be turned off in case you're using some other mechanism.
- database configuration
- database roles
- role password
- SSH host keys
- SSH authorized keys (public SSH keys)
- CRON jobs
- user accounts
- Puppet >= 5
- PostgreSQL instance >= 9.5
puppetlabs/postgresqlis expected to manage the PostgreSQL instance
Backup server (where backup data will be stored) requires packages for all different PostgreSQL version that are running the same
NOTE: Package version
instance needs to be exactly the same! (e.g.
pgprobackup::package_ensure allows pinpointing to a specific version:
pgprobackup to run full backup every Sunday (via CRON job):
pgprobackup::manage_cron: true pgprobackup::instance::backups: FULL: hour: 3 minute: 15 weekday:  # same as `7` or `Sunday`
DELTA) backups every day except Sunday:
pgprobackup::instance::backups: FULL: weekday: 0 DELTA: weekday: [1-6]
DELTA) backups every day except Friday, full backup on Friday:
pgprobackup::instance::backups: FULL: weekday: 5 DELTA: weekday: [0-4,6]
There are many shared parameters between
catalog. Such parameters are defined in
pgprobackup:: namespace, such as
pgprobackup::package_name (base package name to be installed on both instance and catalog).
retention_windowDefines the earliest point in time for which pg_probackup can complete the recovery.
retention_redundancyThe number of full backup copies to keep in the backup catalog.
delete_expiredDelete expired backups when
merge_expiredMerge expired backups when
Error message on
Could not find resource 'Package[pg-probackup-11]' in parameter 'require'
means, that the server requires packages for all different Postgresql versions that are being backed up.
pgprobackup::catalog::versions: - '11' - '12'