Hey Otheus, I respect your comments and observations. Here are my concerns about your questions.
The intention of this blog post is, people who want to deploy Patroni on GCP(or they can refer the same for other cloud platforms like AWS, Azure, Ali cloud). All the patterns I followed here is for Cloud only. It contains two parts. Part 1 — Some information about Patroni and its dependancy services. Part 2 — Implementation steps.
DCS: I have mentioned Part 1 about the DCS(etcd) and its purpose in Patroni.
ETCD: Again Part 1 explains this.
Compose Governer: Patroni is inspired by this, I just added this to let people know where Patroni born.
GCP: Yes, you are going to deploy this on GCP, my main focus is on Postgres, not much in GCP and I can’t explain about GCP in a single blog.
Diagrams: Added just for a visualization purpose. (A blogging technic) and they are relevant.
SplitBrain: In a normal PostgreSQL replication setup, there is nothing about this split-brain. But if you use some external cluster management software, then it matters.
3 Nodes: In GCP, each region has 3 availability zone(there physical data centers). To prevent zone failures, its a best practice from a cloud architect mindset. But for etcd, its mandatory to keep odd number of servers.
Repmgr: “my old days” — I was using this 3 years before, there is no option that time to add back to the failed node automatically (“scripts can do that”). And the blog is about patroni only.
Patroni solves split-brain: Patroni documentation explains this.(but im not able to find that link now). But you can refer this.
I hope, I cleared your queries and my intention about this blog. Please comment if you want any further clarifications.