Thank you. I was thinking along the same lines, but I am not sure I
understand why the setup will fall apart on failover. If I also have
archive_mode always on the primary site, I think that I just need to
pg_rewind (or PITR restore) old primary and configure it as a secondary to
the new master followed by a local backup. Am I missing something obvious?

Regards,
Radu

On Mon, Nov 10, 2025 at 5:33 PM Greg Sabino Mullane <[email protected]>
wrote:

> 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
>
>

Reply via email to