Skip to content

PostgreSQL high-availability/load-balancing strategy #1

Open
@ustuehler

Description

@ustuehler

Looking at the matrix in PostgreSQL: Documentation: 9.3: Comparison of Different Solutions, I think that Transaction Log Shipping comes out on top for our PuppetDB scenario. Second best might be Trigger-Based Master-Standby Replication.

My criteria was:

  • There shoudn't be a need for conflict resolution strategies, ever. This ruled out pgpool-II and Bucardo.
  • Standby should be able to serve read-only queries. This ruled out shared storage: Gluster, NAS, DRBD.
  • Write delay is acceptable (writes are asynchronous from Puppet's point of view, anyway), while data loss on master failure is not. This ruled out Slony, or Trigger-Based Master-Standby Replication.

Those criteria only leave us with Streaming Replication (synchronous) for Transaction Log Shipping and proprietary synchronous multi-master replication.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions