Chapter 1, Architectural Considerations, explains how the layout of the nodes in our PostgreSQL cluster can drastically influence its availability.
Chapter 2, Hardware Planning, explains the selection and provisioning of hardware required to build a highly available PostgreSQL database.
Chapter 3, Minimizing Downtime, explains how we should react when outages inevitably occur and how to prepare ourselves for them.
Chapter 4, Proxy and Pooling Resources, explains how to combine and abstract connectivity to isolate and protect the database.
Chapter 5, Troubleshooting, covers several techniques to track sources of poor performance or stop potential outages before they occur.
Chapter 6, Monitoring, focuses on what we should monitor, how often we should check system status, and how to present the data for easy consumption. We will learn how to effectively monitor PostgreSQL's server status and database performance.
Chapter 7, PostgreSQL Replication, shows how to utilize PostgreSQL replication as well as third-party table synchronization tools. We will learn several methods to copy entire databases or individual tables.
Chapter 8, Backup Management, shows where to turn when backing up large PostgreSQL clusters becomes a concern. This chapter will help ensure backups not only fulfill their stated role but are also reliable, fast, and efficient.
Chapter 9, High Availability with repmgr, discusses all the capabilities so that we can construct a fully automated high-availability stack. This chapter is dedicated to building a fully automated high-availability stack using the repmgr replica and cluster management tools by 2ndQuadrant.
Chapter 10, High Availability with Patroni, explains how to build a quick, yet adaptable, high-availability stack to keep our PostgreSQL servers online.
Chapter 11, Low-Level Server Mirroring, shows how to build and manipulate a fault-tolerant, high-performance foundation for our PostgreSQL clusters.
Chapter 12, High Availability via Pacemaker, shows how to automate cluster management and ensure high availability. This chapter covers Corosync and Pacemaker and the steps to manage dual-node servers with this software.
Chapter 13, High Availability with Multi-Master Replication, explains how multiple writable PostgreSQL nodes affect the concept of high availability. This chapter explores the inherent limitations of multi-master database technology as applied to PostgreSQL, as well as how to best utilize it to maximize application availability.
Chapter 14, Data Distribution, shows how clever data management can increase uptime even further.
Chapter 15, Zero Downtime Upgrades, explains how to upgrade a cluster while remaining fully online.