PostgreSQL cloud native High Availability
stolon is a cloud native PostgreSQL manager for PostgreSQL high availability. It's cloud native because it'll let you keep an high available PostgreSQL inside your containers (kubernetes integration) but also on every other kind of infrastructure (cloud IaaS, old style infrastructures etc...)
Leverages PostgreSQL streaming replication.
Resilient to any kind of partitioning. While trying to keep the maximum availability, it prefers consistency over availability.
Kubernetes integration letting you achieve postgreSQL high availability.
high available data store
Uses a cluster store like etcd or consul as an high available data store and for leader election.
Asynchronous and synchronous
Asynchronous (default) and synchronous replication.
FAST SETUP TIME
Full cluster setup in minutes.
Easy cluster admininistration.
POINT IN TIME RECOVERY
Can do point in time recovery integrating with your preferred backup/restore tool.
Standby cluster (for multi site replication and near zero downtime migration).
Automatic service discovery and dynamic reconfiguration (handles postgres and stolon processes changing their addresses).
Can use pg_rewind for fast instance resyncronization with current master.
STOLON IS COMPOSED OF THREE MAIN COMPONENTS
keeper: it manages a PostgreSQL instance converging to the clusterview provided by the sentinel(s).
sentinel: it discovers and monitors keepers and calculates the optimal clusterview.
proxy: the client's access point. It enforce connections to the right PostgreSQL master and forcibly closes connections to unelected masters.
Stolon is under active development and used in different environments. Probably its on disk format (store hierarchy and key contents) will change in future to support new features. If a breaking change is needed it'll be documented in the release notes and an upgrade path will be provided.
Anyway it's quite easy to reset a cluster from scratch keeping the current master instance working and without losing any data.
Contributing to Stolon
get in touch AT github.com/sorintlab/stolon
stolon is an open source project under the Apache 2.0 license, and contributions are gladly welcomed! To submit your changes please open a pull request.VISIT STOLON ON GITHUB