Quickstart
Deploy your first PostgreSQL cluster in under five minutes using Kustomize.
Architecture
Understand how PGO components work together to deliver production Postgres.
Create a Cluster
Learn all the options for provisioning and customizing a PostgresCluster.
Custom Resource Reference
Full reference for the PostgresCluster, PGUpgrade, and PGAdmin CRDs.
Why PGO?
PGO automates the operational complexity of running PostgreSQL at scale on Kubernetes, so you focus on your application instead of your database infrastructure.High Availability
Automatic failover via Patroni with distributed consensus. Standby clusters across multiple Kubernetes environments.
Disaster Recovery
Full, incremental, and differential backups via pgBackRest. Store to S3, GCS, Azure, or local volumes.
Connection Pooling
Built-in pgBouncer integration to efficiently manage thousands of application connections.
Monitoring
Out-of-the-box Prometheus metrics, Grafana dashboards, and Alertmanager rules via pgMonitor.
TLS Everywhere
All connections are encrypted by default. Bring your own certificates or use PGO-managed PKI.
Major Version Upgrades
Perform in-place major Postgres version upgrades with the PGUpgrade custom resource.
Get started
1
Install PGO
Deploy the operator to your Kubernetes cluster using Kustomize or Helm.
2
Create your first cluster
Apply a
PostgresCluster manifest to provision a production-ready Postgres cluster.3
Connect your application
Retrieve the connection credentials from the automatically generated secret and connect your application.
Supported platforms
PGO runs on any CNCF-conformant Kubernetes distribution, including Amazon EKS, Google GKE, Microsoft AKS, Red Hat OpenShift, Rancher, and VMware Tanzu.PGO requires Kubernetes 1.19 or later. See the supported platforms reference for the full compatibility matrix.