I'm trying to setup a highly available postgres (13) cluster(3 servers) with streaming replication.

I first tried native replication and then decided to use repmgr to manage this so I could use the switchover option. So far so good, managed to get this up and running (happy). I then needed to set up the high availability part and considered haproxy pgbouncer and pgpool. I chose pgpool(4.3) but am beginning to regret this choice! After some pain I have have a working cluster of 3 dedicated pgpool machines.

I wanted to be able to manually switchover (using repmgr) the primary so that I can do server maintenance without impacting the clients using the DBs. I don't want to use the pgpool automatic failover as repmgr has this covered and works.

Problem is that I can't get pgpool to follow the primary when it moves. I have tried a restart of pgpool with -D but that is not working as expected and is not a very good solution.

How can I force pgpool to automatically reevaluate the pg cluster and use the new primary?

Checking the replicating cluster structure (primary standby standby)should be an option. Just following the primary should also be an option if the rest is to be managed outside of pgpool. The health check should be able to check for this too.

(another question as it's not clear: when i have a cluster of pgpool is the status info shared between members of the cluster? )


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.