Deploy Cloud‑Native PostgreSQL Clusters with Crunchy Data’s PGO Operator
The Crunchy Data Postgres Operator (PGO) extends Kubernetes to provide a cloud‑native, highly available PostgreSQL platform with features such as automated provisioning, disaster recovery, TLS encryption, monitoring, user management, upgrade handling, advanced replication, cloning, connection pooling, affinity, scheduled backups to S3/GCS, multi‑namespace support, and extensive customizability across major Kubernetes distributions.
Overview
The Crunchy PostgreSQL Operator (PGO) builds on Kubernetes to offer a higher‑level abstraction for quickly creating and managing cloud‑native PostgreSQL clusters. It leverages Kubernetes Custom Resources (CRDs) to control the lifecycle of PostgreSQL clusters.
Core Features
Easy provisioning, scaling, and deletion of PostgreSQL clusters.
High‑availability with distributed consensus and automatic fail‑over, using Pod Anti‑Affinity and aggressive recovery settings.
Disaster recovery via pgBackRest, supporting full, incremental, and differential backups.
TLS encryption for all client‑server connections.
Monitoring through the open‑source pgMonitor library.
User management with commands for adding/removing users and password policies.
Safe upgrade process with minimal availability impact.
Advanced replication choices between asynchronous and synchronous modes.
Cluster cloning using pgo create cluster --restore-from.
Connection pooling via pgBouncer.
Kubernetes node affinity and tolerations for precise pod placement.
Scheduled backups (full, incremental, differential) with configurable frequency.
Backup storage to Amazon S3, any S3‑compatible object store, or Google Cloud Storage.
Multi‑namespace deployment models and dynamic namespace management via pgo create namespace and pgo delete namespace.
Extensive customizability of storage classes, container resources, image pull secrets, and PostgreSQL configuration.
Architecture
PGO defines multiple CRDs that represent PostgreSQL clusters, allowing the operator to manage the clusters declaratively. The operator runs as a native Kubernetes component and is backward compatible with Kubernetes 1.11 while being tested on platforms such as Kubernetes 1.17+, OpenShift 4.4+, GKE (including Anthos), Amazon EKS, Microsoft AKS, and VMware Tanzu.
Included Components
Each PostgreSQL container deployed by the operator includes PostgreSQL core, contrib modules, PL/Python, PL/Perl, pgAudit, pgAudit Analyze, pgnodemx, pg_cron, pg_partman, set_user, TimescaleDB (Apache 2 edition), wal2json, as well as auxiliary tools such as pgBackRest, pgBouncer, pgAdmin 4, pgMonitor, Patroni, and LLVM for JIT compilation. The GeoSpatial‑enhanced image also bundles PostGIS, pgRouting, and PL/R.
Monitoring Stack
Operator monitoring integrates pgMonitor, Prometheus, Grafana, and Alertmanager to provide visibility into cluster health.
Platform Support
PGO is tested on the following platforms: Kubernetes 1.17+, OpenShift 4.4+, OpenShift 3.11, GKE (Anthos), Amazon EKS, Microsoft AKS, and VMware Tanzu. It remains compatible with other Kubernetes distributions.
Storage Options
PGO works with a variety of Kubernetes storage classes, hostPath, and NFS. While it strives to be storage‑class agnostic, it cannot guarantee functionality for every possible class, though it has been proven to operate with many common storage solutions.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
