3.7 KiB
		
	
	
	
	
	
			
		
		
	
	
			3.7 KiB
		
	
	
	
	
	
Postgres Operator
The Postgres Operator delivers an easy to run highly-available PostgreSQL clusters on Kubernetes (K8s) powered by Patroni. It is configured only through Postgres manifests (CRDs) to ease integration into automated CI/CD pipelines with no access to Kubernetes API directly, promoting infrastructure as code vs manual operations.
Operator features
- Rolling updates on Postgres cluster changes, incl. quick minor version updates
 - Live volume resize without pod restarts (AWS EBS, others pending)
 - Database connection pooler with PGBouncer
 - Restore and cloning Postgres clusters (incl. major version upgrade)
 - Additionally logical backups to S3 bucket can be configured
 - Standby cluster from S3 WAL archive
 - Configurable for non-cloud environments
 - Basic credential and user management on K8s, eases application deployments
 - UI to create and edit Postgres cluster manifests
 - Works well on Amazon AWS, Google Cloud, OpenShift and locally on Kind
 
PostgreSQL features
- Supports PostgreSQL 12, starting from 9.6+
 - Streaming replication cluster via Patroni
 - Point-In-Time-Recovery with pg_basebackup / WAL-E via Spilo
 - Preload libraries: bg_mon, pg_stat_statements, pgextwlist, pg_auth_mon
 - Incl. popular Postgres extensions such as decoderbufs, hypopg, pg_cron, pg_partman, pg_stat_kcache, pgq, plpgsql_check, postgis, set_user and timescaledb
 
The Postgres Operator has been developed at Zalando and is being used in production for over two years.
Getting started
For a quick first impression follow the instructions of this tutorial.
Supported setups of Postgres and Applications
Documentation
There is a browser-friendly version of this documentation at postgres-operator.readthedocs.io
- How it works
 - Installation
 - The Postgres experience on K8s
 - The Postgres Operator UI
 - DBA options - from RBAC to backup
 - Build, debug and extend the operator
 - Configuration options
 - Postgres manifest reference
 - Command-line options and environment variables
 
Community
There are two places to get in touch with the community:
- The GitHub issue tracker
 - The #postgres-operator slack channel
 
