| > Stolon is quite comparable to Patroni and has more features than Patron. Let me as a question, what feature Stolon has and Patroni doesn't? Can you give an example? From my side I can provide list of features available in Patroni, but not in Stolon.
For example: * there is no way to do a controlled failover (switchover) in Stolon. * in Patroni it's possible to exclude some nodes from a leader race. * Patroni supports cascading replication * Patroni can take basebackup from replicas if they are marked with a special tag * it's even possible to configure Patroni to use a custom backup/recovery solution instead of pg_basebackup * Patroni can give you a hint that postgres must be restarted to apply some configuration changes * with Patroni it's even possible to schedule switchover or restart restart of postges on some specific time (for example 04:00 am, when traffic is minimal) * with Patroni you can control High-Availability / Durability ratio. I.e.: what to do if master postgres has crashed? Either you will try to start it back or failover to a replica. But start of a crashed postgres may take a long time. With Patroni you can configure that if postgres didn't started in some amount of seconds - please do failover. Stolon provides cloud-native deployment and Patroni doesn't?
This is not really true. The main idea of Patroni is to be not dependent on some specific technologies. It can work as on bare-metal with the same success as on Kubernetes.
It's very easy to build a custom solution with Patroni for your use-case.
For example there is a Spilo project: https://github.com/zalando/spilo, a docker image build with Patroni and wal-e for a cloud deployments. |