patroni
pg_auto_failover
Our great sponsors
patroni | pg_auto_failover | |
---|---|---|
19 | 14 | |
6,212 | 1,035 | |
2.1% | 2.0% | |
9.2 | 6.4 | |
16 days ago | 3 months ago | |
Python | C | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
patroni
-
Citus is not ACID but Eventually Consistent
Citus doesn't provide fault tolerance. Each shard is a monolithic PostgreSQL. To reduce downtime on failures, you can protect each shard with a standby database. As this is a complex configuration, Patroni can help. For this lab I'll use the Citus+Patroni docker-compose-citus.yml from https://github.com/zalando/patroni.git:
-
How to create postgres cluster in docker swarm?
We have been using stolon + consul for years without issue in our swarm environments. It may also be possible with patroni.
-
Why PostgreSQL High Availability Matters and How to Achieve It
one of the solutions which made it pretty simple for us to run postgresql in a ha environment (mostly in k8s, but works standalone as well) is zalandos patroni: https://github.com/zalando/patroni it's really solid and worked for us for a few years already.
or for k8s their operator: https://github.com/zalando/postgres-operator (docker image: https://github.com/zalando/spilo) we've also tried other operators which were easier to get started, but they failed miserably (crunchyrolls operator is basically based on the zalando one)
-
Docker: Patroni + HAProxy + Etcd + PgBouncer
Hello. I am currently using this docker-compose model from Zalando repository. It does not include PgBouncer in its architecture by default. I've been trying to find a containerized implementation involving Patroni, HAProxy, Etcd and PgBouncer. I didn't find anything solid so far.
-
Can someone share experience configuring Highly Available PgSQL?
General purpose: Patroni - Set up your own etcd + HAProxy + Patroni + Postgres components and it'll generally manage itself after that.
- Patroni Version 3.0.0 Released
- Any self hostable postgres clustering, replication and fail over system?
-
Postgresql HA using repmgr and Keepalived
I don't have a great answer for you except that it sounds like you are trying to create your own version of patroni. Is there a good reason to not just use patroni?
-
Testing Patroni strict synchronous mode 👉🏻 you must handle invisible commit and read split brain
git clone https://github.com/zalando/patroni.git cd patroni docker build -t patroni . docker-compose up -d
-
Any recommandation Postgres Operator ?
I actually used Patroni on Openshift in my company. To be update with the latest version we created our helm chart.
pg_auto_failover
- 11 Years of Hosting a SaaS
- Streamlining High Availability in PostgreSQL, a Simpler Alternative
-
Why PostgreSQL High Availability Matters and How to Achieve It
pg_auto_failover makes it an absolute breeze. I cannot understand how it's not mentioned in the article.
I've been runnning it for 3 years with great success - https://github.com/hapostgres/pg_auto_failover/discussions/6...
-
Can someone share experience configuring Highly Available PgSQL?
Simplified and probably OK: pg_auto_failover - One Monitor/Witness node and minimum services otherwise. Good documentation to get started and not nearly as complex as Patroni.
-
PG redundancy even in majority failure
There are tools that make managing such a system easier. Check out patroni, pg_auto_failover or PAF
- Just Use Postgres for Everything
-
The C++ Asynchronous Framework
This is /extremely/ uncharitable. It depends more on the project.
For example, both Go and .NET are very well written with comprehensible documentation. Many projects have also been absorbed by the Apache Foundation or other FOSS initiatives.
Every FANG has boat loads of teams working on umpteen different open source packages. The quality naturally varies.
Let me pick two more esoteric projects as a point of comparison.
Yandex Odyssey (https://github.com/yandex/odyssey) an advanced multi-threaded PostgreSQL connection pooler and request router. Figuring out how exactly and when to use this is not quite clear. There is no "getting started" guide for this package. There is barely any explanation for how it works or what it does.
pg_auto_failover (https://github.com/citusdata/pg_auto_failover) run by Citus (owned by Microsoft) monitors and manages automated failover for a Postgres cluster. This repo even has diagrams explaining the workflow and complete instructions.
-
Do you use Percona Distribution for PostgreSQL? How is it working for you?
Right, https://github.com/citusdata/pg_auto_failover has been on my reading list
-
Simpler Postgresql replication setup (NO managed services)
My go to for this is https://github.com/citusdata/pg_auto_failover set up with ansible https://github.com/neuroforgede/pg\_auto\_failover\_ansible
-
pg_auto_failover ile PostgreSQL Cluster Kurulumu
pg_auto_failover github | readthedocs | ytube
What are some alternatives?
stolon - PostgreSQL cloud native High Availability and more.
citus - Distributed PostgreSQL as an extension
Grafana - The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
orchestrator - MySQL replication topology management and HA
postgresql_cluster - PostgreSQL High-Availability Cluster (based on "Patroni" and DCS "etcd" or "consul"). Automating with Ansible.
stolon-chart - Kubernetes Helm chart to deploy HA Postgresql cluster based on Stolon
plv8 - V8 Engine Javascript Procedural Language add-on for PostgreSQL
crunchy-proxy - PostgreSQL Connection Proxy by Crunchy Data (beta)
discussion
pgvector - Open-source vector similarity search for Postgres
tds_fdw - A PostgreSQL foreign data wrapper to connect to TDS databases (Sybase and Microsoft SQL Server)