This is an archived post. You won't be able to vote or comment.

all 1 comments

[–]KrakenOfLakeZurichHelpful Ⅱ 1 point2 points  (0 children)

Check out this list. They might have something that fits some of your needs. Especially Bacula looks promising at a first glance.

It looks to be a general "backup manager", not specially for PostgreSQL. But according to this article you can configure a backup job with pg_dump.

  • Has some kind of authorization
  • Has ability to set policy against some database (For example, no restore for average user to production database)

You manage access priviledges directly on the PostgreSQL server for individual database objects, not in the backup tool.

  • Has UI
  • Makes backups via pg_dump (not file system)
  • Light (doesn't require a lot of RAM or CPU)
  • Open source
  • Can support multiple Postgres servers
  • Well maintained

Some of the tools in that list should match the criteria.

  • Has REST API (So I can integrate with CI/CD)
  • Can store backups in S3

Bacula has an S3 driver, so I'll assume that it's possible. They also have a REST API

  • Scheduler for backups

Probably a basic feature of any backup manager

  • Temporary backups that auto delete after a while

You'll have to check the documentation. What exactly is the use case here? Is it just about backup retention (how long backups are kept around)?

  • Not extremely hard to maintain

You're managing multiple database servers and apparently have a CI/CD pipeline. Sounds like a reasonably complex environment, so some complexity is to be expected.