Binary Replication Tools

From PostgreSQL wiki

(Difference between revisions)
Jump to: navigation, search
(repmgr)
m (Purpose)
Line 2: Line 2:
 
= Purpose =  
 
= Purpose =  
  
Compare binary replication tools for PostgreSQL for features and ease of use.  
+
Compare binary replication tools for PostgreSQL for features and ease of use.
 +
 
 +
The features these tools help automated include:
 +
 
 +
* Managing binary backups (create, track, restore)
 +
* Managing creation of replicas
 +
** Streaming replication
 +
** Cascaded replication
 +
** WAL-shipping replication
 +
* Monitoring of replication delay
 +
* Automated failover
 +
* Automated "following" of a new master by secondary replicas
 +
 
 +
My goal is to classify and differentiate the various tools for easier selection and fit to purpose.
  
 
= OmniPITR =  
 
= OmniPITR =  

Revision as of 01:05, 29 December 2012

Contents

Purpose

Compare binary replication tools for PostgreSQL for features and ease of use.

The features these tools help automated include:

  • Managing binary backups (create, track, restore)
  • Managing creation of replicas
    • Streaming replication
    • Cascaded replication
    • WAL-shipping replication
  • Monitoring of replication delay
  • Automated failover
  • Automated "following" of a new master by secondary replicas

My goal is to classify and differentiate the various tools for easier selection and fit to purpose.

OmniPITR

OmniPITR Demo of a simple replication setup with OmniPITR

Summary of Features:

  • Creating PITR backups
  • Restoring a PITR backup for DR
  • Creating replicas (by untarring backups)
  • Monitoring of replicas
  • Supports 'pause removal' of WAL during a backup (nice!)
  • BSD license

Install notes:

  • No packaging, perl
  • No documented support for streaming replication
  • Uses an odd format for omnipitr logfile naming
  • No configuration file option (instead of using long command-line options)

repmgr

repmgr Demo of a simple setup with repmgr

Supported features:

  • Setting up new replicas/hot_standby with streaming replication (makes recovery.conf itself)
  • Making base backups
  • Failover (automated, or not, including redirecting replicas to connect to a new master after failover)
  • Lag monitoring (repmgrd)
  • A "witness" DB server for monitoring (typically on a replica)
  • License: GPLv3

Install notes:

  • Written in C
  • Installs like a typical UNIX utility out of postgresql/contrib source tree (make USE_PGXS=1; make USE_PGXS=1 install)
  • Developed on Debian systems, so support for package is present. Did not find an Ubuntu package for repmgr, however.
  • Detailed docs are in the README for installing on many Linux platforms
  • Doesn't appear to be supported on Mac OS X

WAL-E

WAL-E

Barman

pgbarman

Skytools / walmgr

Skytools

pg-rman

pg-rman

Personal tools