This document discusses clustering in PostgreSQL to provide high availability and redundancy. It begins by defining high availability and different "nines of availability". It notes that cloud databases like Amazon RDS only provide three and a half nines of availability, leaving room for hours of downtime per year. The document then discusses different clustering architectures like primary-standby replication, active-active multi-node clusters, and globally distributed clusters. It also covers challenges like split-brain situations, network latency, false alarms, and data inconsistency. Finally, it recommends open-source tools like repmgr, pgpool-II and Patroni that can help implement PostgreSQL clustering.