r/wal-g-pg: Schedule weekly delete jobs
WAL-G slows down significantly when too many backups are kept. We need to periodically clean up old backups to maintain a reasonable level of performance, and also keep from wasting space with useless old backups.dynamic-inventory
parent
eaf9cbef9a
commit
8b9cf1985a
|
@ -1,2 +1,7 @@
|
|||
wal_g_pg_backup_timer_schedule: >-
|
||||
*-*-* 03:56
|
||||
|
||||
wal_g_pg_delete_timer_schedule: >-
|
||||
weekly
|
||||
wal_g_pg_delete_args: >-
|
||||
retain FIND_FULL 7
|
||||
|
|
|
@ -6,3 +6,8 @@
|
|||
systemd:
|
||||
name: wal-g-backup.timer
|
||||
state: restarted
|
||||
|
||||
- name: restart wal-g delete timer
|
||||
systemd:
|
||||
name: wal-g-delete.timer
|
||||
state: restarted
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
dependencies:
|
||||
- dch-yum
|
||||
- systemd-base
|
||||
|
|
|
@ -55,6 +55,30 @@
|
|||
tags:
|
||||
- systemd
|
||||
|
||||
- name: ensure wal-g delete timer is installed
|
||||
template:
|
||||
src: wal-g-delete.timer.j2
|
||||
dest: /etc/systemd/system/wal-g-delete.timer
|
||||
owner: root
|
||||
group: root
|
||||
mode: u=rw,go=r
|
||||
notify:
|
||||
- reload systemd
|
||||
- restart wal-g delete timer
|
||||
tags:
|
||||
- systemd
|
||||
- name: ensure wal-g delete service is installed
|
||||
template:
|
||||
src: wal-g-delete.service.j2
|
||||
dest: /etc/systemd/system/wal-g-delete.service
|
||||
owner: root
|
||||
group: root
|
||||
mode: u=rw,go=r
|
||||
notify:
|
||||
- reload systemd
|
||||
tags:
|
||||
- systemd
|
||||
|
||||
- name: ensure wal-g backup timer is enabled
|
||||
systemd:
|
||||
name: wal-g-backup.timer
|
||||
|
@ -62,6 +86,13 @@
|
|||
tags:
|
||||
- service
|
||||
|
||||
- name: ensure wal-g delete timer is enabled
|
||||
systemd:
|
||||
name: wal-g-delete.timer
|
||||
enabled: true
|
||||
tags:
|
||||
- service
|
||||
|
||||
- name: flush handlers
|
||||
meta: flush_handlers
|
||||
|
||||
|
@ -71,3 +102,10 @@
|
|||
state: started
|
||||
tags:
|
||||
- service
|
||||
|
||||
- name: ensure wal-g delete timer is running
|
||||
systemd:
|
||||
name: wal-g-delete.timer
|
||||
state: started
|
||||
tags:
|
||||
- service
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
[Unit]
|
||||
Description=PostgreSQL Backup delete with WAL-G
|
||||
Wants=network-online.target
|
||||
After=network-online.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
Environment=PGDATA=/var/lib/pgsql/data
|
||||
ExecStart=/usr/bin/wal-g-pg delete --config /etc/postgresql/wal-g.yml {{ wal_g_pg_delete_args }} --confirm
|
||||
User=postgres
|
|
@ -0,0 +1,9 @@
|
|||
[Unit]
|
||||
Description=Periodic PostgreSQL backup delete with WAL-G
|
||||
|
||||
[Timer]
|
||||
OnCalendar={{ wal_g_pg_delete_timer_schedule }}
|
||||
Persistent=yes
|
||||
|
||||
[Install]
|
||||
WantedBy=timers.target
|
Loading…
Reference in New Issue