Re: Pgbackrest setup for two sites with limited bandwidth

From: Greg Sabino Mullane <htamfids(at)gmail(dot)com>
To: Radu Radutiu <rradutiu(at)gmail(dot)com>
Cc: pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: Pgbackrest setup for two sites with limited bandwidth
Date: 2025-11-10 15:33:20
Message-ID: CAKAnmmKsgLmBOJQQouOFUHeEMjSCouK_dqx+xhdUNZ58UsUq3w@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-general

What you are asking for is tricky, but possible. You can setup two repos,
one for each server. On the first server (in datacenter A), you have a
"normal" pgbackrest configuration, with an explicit backup-standby=n. pg1-*
points to the local server, pg2-* points to the replica. The repo is in
datacenter A.Backups run from PG server in datacenter A, to the backrest
repo in datacenter A. WAL is archived from A -> A

On datacenter B, you have a separate local repo, a different stanza name,
and within that stanza, you have backup-standby=y, pg1 pointing to the
local pg, pg2 pointing back to A. In the postgresql.conf, your
archive-command pushes to this second repo, and archive_mode is "always".
Backups run from the PG server in datacenter A, but 99% of the files are
actually copied from the replica in datacenter B, and goes to the backrest
server in datacenter B. WAL is archived from B -> B.

That's the basic idea. It falls apart rapidly if this second data center
ever fails over.
Cheers,
Greg

--
Crunchy Data - https://www.crunchydata.com
Enterprise Postgres Software Products & Tech Support

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Radu Radutiu 2025-11-10 15:49:00 Re: Pgbackrest setup for two sites with limited bandwidth
Previous Message Greg Sabino Mullane 2025-11-10 14:34:13 Re: Enquiry about long-running queries