PATRONI
24 pagesPatroni 4.1.5 Documentation
Source: https://patroni.readthedocs.io/en/latest/index.html Warning Running Patroni on memory-restricted systems with Python 3.11+ Unexpected behavior can occur with Python 3.11 or newer on systems with strict memory limits. For example, this …
Source: https://patroni.readthedocs.io/en/latest/index.html Warning Running Patroni on memory-restricted systems with Python 3.11+ Unexpected behavior can occur with Python 3.11 or newer on systems with strict memory limits. For example, this …
Contributing guidelines
Source: https://patroni.readthedocs.io/en/latest/contributing_guidelines.html Chatting For questions, interactive troubleshooting, or discussion with other users, join #patroni on PostgreSQL Slack. Reporting bugs Before you report a bug, reproduce …
Source: https://patroni.readthedocs.io/en/latest/contributing_guidelines.html Chatting For questions, interactive troubleshooting, or discussion with other users, join #patroni on PostgreSQL Slack. Reporting bugs Before you report a bug, reproduce …
Release notes
Source: https://patroni.readthedocs.io/en/latest/releases.html Version 4.1.5 Released 2026-08-12 Compatibility improvements Compatibility with PostgreSQL 14.24, 15.19, 16.15, 17.11, 18.6 (Alexander Kukushkin) Add the new output_plugin_libraries GUC, …
Source: https://patroni.readthedocs.io/en/latest/releases.html Version 4.1.5 Released 2026-08-12 Compatibility improvements Compatibility with PostgreSQL 14.24, 15.19, 16.15, 17.11, 18.6 (Alexander Kukushkin) Add the new output_plugin_libraries GUC, …
FAQ
Source: https://patroni.readthedocs.io/en/latest/faq.html This section answers common Patroni questions. Each subsection covers a different topic. For more help or unexpected problems, see chatting and reporting_bugs. Comparison with other HA …
Source: https://patroni.readthedocs.io/en/latest/faq.html This section answers common Patroni questions. Each subsection covers a different topic. For more help or unexpected problems, see chatting and reporting_bugs. Comparison with other HA …
HA multi datacenter
Source: https://patroni.readthedocs.io/en/latest/ha_multi_dc.html A PostgreSQL cluster across multiple data centers uses replication for high availability. Replication can be synchronous or asynchronous. See replication modes. Both modes require …
Source: https://patroni.readthedocs.io/en/latest/ha_multi_dc.html A PostgreSQL cluster across multiple data centers uses replication for high availability. Replication can be synchronous or asynchronous. See replication modes. Both modes require …
Security Considerations
Source: https://patroni.readthedocs.io/en/latest/security.html Protect two Patroni cluster interfaces from unauthorized access: the distributed configuration storage (DCS) and the Patroni REST API. Protecting DCS Patroni and patronictl store data in …
Source: https://patroni.readthedocs.io/en/latest/security.html Protect two Patroni cluster interfaces from unauthorized access: the distributed configuration storage (DCS) and the Patroni REST API. Protecting DCS Patroni and patronictl store data in …
Integration with other tools
Source: https://patroni.readthedocs.io/en/latest/tools_integration.html Patroni can integrate with other tools in your stack. These examples show possible integrations. The list is not complete. Barman Patroni provides patroni_barman. This …
Source: https://patroni.readthedocs.io/en/latest/tools_integration.html Patroni can integrate with other tools in your stack. These examples show possible integrations. The list is not complete. Barman Patroni provides patroni_barman. This …
Convert a Standalone to a Patroni Cluster
Source: https://patroni.readthedocs.io/en/latest/existing_data.html This section describes the process for converting a standalone PostgreSQL instance into a Patroni cluster. To deploy a Patroni cluster without using a pre-existing PostgreSQL …
Source: https://patroni.readthedocs.io/en/latest/existing_data.html This section describes the process for converting a standalone PostgreSQL instance into a Patroni cluster. To deploy a Patroni cluster without using a pre-existing PostgreSQL …
Citus support
Source: https://patroni.readthedocs.io/en/latest/citus.html Patroni automates deployment of Multi-Node Citus clusters. TL;DR Apply these rules: Install the Citus PostgreSQL extension on every node. The minimum supported version is 10.0. We recommend …
Source: https://patroni.readthedocs.io/en/latest/citus.html Patroni automates deployment of Multi-Node Citus clusters. TL;DR Apply these rules: Install the Citus PostgreSQL extension on every node. The minimum supported version is 10.0. We recommend …
Using Patroni with Kubernetes
Source: https://patroni.readthedocs.io/en/latest/kubernetes.html Patroni can store cluster state and the leader key in Kubernetes objects. This lets it run Postgres in Kubernetes without a separate consistency store, such as an extra Etcd …
Source: https://patroni.readthedocs.io/en/latest/kubernetes.html Patroni can store cluster state and the leader key in Kubernetes objects. This lets it run Postgres in Kubernetes without a separate consistency store, such as an extra Etcd …
DCS Failsafe Mode
Source: https://patroni.readthedocs.io/en/latest/dcs_failsafe_mode.html The problem Patroni uses the Distributed Configuration Store (DCS) for leader elections and network partition detection. A node can run Postgres as primary only if it can update …
Source: https://patroni.readthedocs.io/en/latest/dcs_failsafe_mode.html The problem Patroni uses the Distributed Configuration Store (DCS) for leader elections and network partition detection. A node can run Postgres as primary only if it can update …
Pause/Resume mode for the cluster
Source: https://patroni.readthedocs.io/en/latest/pause.html The goal Patroni sometimes needs to suspend cluster management while it retains cluster state in the DCS. Examples include major version upgrades and corruption recovery. During these …
Source: https://patroni.readthedocs.io/en/latest/pause.html The goal Patroni sometimes needs to suspend cluster management while it retains cluster state in the DCS. Examples include major version upgrades and corruption recovery. During these …
Watchdog support
Source: https://patroni.readthedocs.io/en/latest/watchdog.html Multiple PostgreSQL primaries can lose transactions because their timelines diverge. This is called split-brain. Patroni must prevent PostgreSQL from accepting transaction commits after …
Source: https://patroni.readthedocs.io/en/latest/watchdog.html Multiple PostgreSQL primaries can lose transactions because their timelines diverge. This is called split-brain. Patroni must prevent PostgreSQL from accepting transaction commits after …
Standby cluster
Source: https://patroni.readthedocs.io/en/latest/standby_cluster.html Patroni supports cascading replication to a remote datacenter or region through the standby cluster feature. A standby cluster has: A standby leader, which behaves like a regular …
Source: https://patroni.readthedocs.io/en/latest/standby_cluster.html Patroni supports cascading replication to a remote datacenter or region through the standby cluster feature. A standby cluster has: A standby leader, which behaves like a regular …
Replication modes
Source: https://patroni.readthedocs.io/en/latest/replication_modes.html Patroni uses PostgreSQL streaming replication. See the Postgres documentation. Patroni configures asynchronous replication by default. Select a replication design for your …
Source: https://patroni.readthedocs.io/en/latest/replication_modes.html Patroni uses PostgreSQL streaming replication. See the Postgres documentation. Patroni configures asynchronous replication by default. Select a replication design for your …
Replica imaging and bootstrap
Source: https://patroni.readthedocs.io/en/latest/replica_bootstrap.html Patroni supports custom replica creation and custom bootstrap for a new, empty cluster. These are separate operations. Patroni creates replicas only when the cluster has an …
Source: https://patroni.readthedocs.io/en/latest/replica_bootstrap.html Patroni supports custom replica creation and custom bootstrap for a new, empty cluster. These are separate operations. Patroni creates replicas only when the cluster has an …
patronictl
Source: https://patroni.readthedocs.io/en/latest/patronictl.html The patronictl command-line interface communicates with the Patroni REST API and the DCS. Use it for cluster operations, interactively or in scripts. Configuration patronictl uses 3 …
Source: https://patroni.readthedocs.io/en/latest/patronictl.html The patronictl command-line interface communicates with the Patroni REST API and the DCS. Use it for cluster operations, interactively or in scripts. Configuration patronictl uses 3 …
Patroni REST API
Source: https://patroni.readthedocs.io/en/latest/rest_api.html Patroni uses its REST API during leader races. patronictl uses it for failovers, switchovers, reinitialization, restarts, and reloads. HAProxy and other load balancers use it for HTTP …
Source: https://patroni.readthedocs.io/en/latest/rest_api.html Patroni uses its REST API during leader races. patronictl uses it for failovers, switchovers, reinitialization, restarts, and reloads. HAProxy and other load balancers use it for HTTP …
Patroni configuration
Source: https://patroni.readthedocs.io/en/latest/patroni_configuration.html There are 3 types of Patroni configuration: Global dynamic configuration. These options are stored in the DCS (Distributed Configuration Store) and apply to all nodes. …
Source: https://patroni.readthedocs.io/en/latest/patroni_configuration.html There are 3 types of Patroni configuration: Global dynamic configuration. These options are stored in the DCS (Distributed Configuration Store) and apply to all nodes. …
Environment Configuration Settings
Source: https://patroni.readthedocs.io/en/latest/ENVIRONMENT.html System environment variables can override some Patroni configuration file parameters. This page lists all supported variables. Environment values always take precedence over file …
Source: https://patroni.readthedocs.io/en/latest/ENVIRONMENT.html System environment variables can override some Patroni configuration file parameters. This page lists all supported variables. Environment values always take precedence over file …
Installation
Source: https://patroni.readthedocs.io/en/latest/installation.html Pre-requirements for Mac OS On a Mac, install the requirements: brew install postgresql etcd haproxy libyaml python Psycopg Since psycopg2-2.8, the binary package is not installed by …
Source: https://patroni.readthedocs.io/en/latest/installation.html Pre-requirements for Mac OS On a Mac, install the requirements: brew install postgresql etcd haproxy libyaml python Psycopg Since psycopg2-2.8, the binary package is not installed by …
YAML Configuration Settings
Source: https://patroni.readthedocs.io/en/latest/yaml_configuration.html Global/Universal thread_pool_size: thread pool size for asynchronous tasks and REST API communication with other members during leader races or failsafe checks. Minimum: 5. …
Source: https://patroni.readthedocs.io/en/latest/yaml_configuration.html Global/Universal thread_pool_size: thread pool size for asynchronous tasks and REST API communication with other members during leader races or failsafe checks. Minimum: 5. …
Introduction
Source: https://patroni.readthedocs.io/en/latest/README.html Patroni is a Python template for high availability (HA) PostgreSQL solutions. It started as a fork of Governor, a Compose project, and adds many features. For additional background info, …
Source: https://patroni.readthedocs.io/en/latest/README.html Patroni is a Python template for high availability (HA) PostgreSQL solutions. It started as a fork of Governor, a Compose project, and adds many features. For additional background info, …
Dynamic Configuration Settings
Source: https://patroni.readthedocs.io/en/latest/dynamic_configuration.html Dynamic configuration is stored in the DCS (Distributed Configuration Store) and applied on all cluster nodes. Change dynamic configuration with patronictl_edit_config or …
Source: https://patroni.readthedocs.io/en/latest/dynamic_configuration.html Dynamic configuration is stored in the DCS (Distributed Configuration Store) and applied on all cluster nodes. Change dynamic configuration with patronictl_edit_config or …