This tools use pg_dump to backup a postgres instance and send result to object
storage. It focus on backuping big database with a little memory usage. It use a
fixed memory buffer that correspond to the multipart upload size. This tools
expose many through a prometheus endpoint.
SCHEDULE: cron like scheduling definition. Default to20 2 * * *
Environment variables for PostgreSQL can be used to configure access to database: https://www.postgresql.org/docs/12/libpq-envars.html
At least following variables must be defined:
PGHOSTPGUSERPGPASSWORD
Optional variables:
BLACKLISTED_DATABASES: Regexp to exclude databases. Default to.*backup.*|postgres|rdsadmin
RETENTION_DAYS: Retention in days. Backups older than this value will be deleted. Default to15.BUFFER_SIZE: Size of the main buffer, this parameter affect backup speed and memory usage. Default to10 MB.
The following variables are mandatory:
AWS_ENDPOINT: Object storage endpoint, examplehttp://minio:9000AWS_S3_BUCKET: Bucket nameAWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY
Optional variables:
AWS_S3_PREFIX: Path in bucket. Default to a empty string.
PROMETHEUS_EXPORTER_PORT: prometheus endpoint port. Default to9352