Postgres operator creates and manages PostgreSQL clusters running in Kubernetes
Go to file
Pavan 7d620b0ccc
Update supported kubernetes versions in version matrix (#2402)
In v1.10.0 we we have started using policy API v1 for PDBs and policy API v1  is available from Kubernetes version 1.21. So, updating the kubernetes supported  version in matrix chart of v1.9, v1.10 to k8s 1.21+
2023-08-25 16:04:13 +02:00
.github Bump v1.10.0 (#2299) 2023-04-20 18:21:43 +02:00
charts [#2119] fix imagePullSecrets indentation (#2371) 2023-08-01 11:02:06 +02:00
cmd Configure annotations to be ignored in comparisons during sync (#1823) 2022-03-24 18:38:37 +01:00
docker Remove scm-source.json creation (#2301) 2023-04-21 16:45:15 +02:00
docs Update the link to a post (#2360) 2023-08-01 11:01:43 +02:00
e2e Remove scm-source.json creation (#2301) 2023-04-21 16:45:15 +02:00
hack Ineffectual assignment of the envVars for connection pooler (#2165) 2023-01-12 11:38:54 +01:00
kubectl-pg update kubectl-pg dependencies (#2263) 2023-03-20 17:38:54 +01:00
manifests Bump v1.10.0 (#2299) 2023-04-20 18:21:43 +02:00
mocks Support EBS gp2 to gp3 migration on sync for below 1tb volumes (#1242) 2020-12-11 15:52:32 +01:00
pkg log error why ebs volume modifying fails (#2395) 2023-08-18 13:18:35 +02:00
ui [UI] Bump python libraries flask, requests and werkzeug (#2404) 2023-08-25 15:36:38 +02:00
.flake8 Implement runner for e2e tests (#548) 2019-06-05 17:07:27 +02:00
.gitignore refactor pooler tls support and set pooler pod security context (#2255) 2023-04-17 11:38:56 +02:00
.golangci.yml add .golangci.yml (#422) 2018-11-27 12:00:15 +01:00
.zappr.yaml Min 2 zalando approvers. (#1338) 2021-01-29 11:12:08 +01:00
CODEOWNERS hello hughcapet (#2074) 2022-10-12 16:21:19 +02:00
CONTRIBUTING.md Update docs for v1.2 (#609) 2019-07-11 17:19:27 +02:00
LICENSE Bump v1.10.0 (#2299) 2023-04-20 18:21:43 +02:00
MAINTAINERS hello hughcapet (#2074) 2022-10-12 16:21:19 +02:00
Makefile bump go to 1.19.8 everywhere (#2300) 2023-04-21 16:53:06 +02:00
README.md Update supported kubernetes versions in version matrix (#2402) 2023-08-25 16:04:13 +02:00
SECURITY.md docs(general): Adding Security.md (#88) 2017-09-04 14:33:30 +02:00
build-ci.sh reflect change in github url (#496) 2019-02-25 11:26:55 +01:00
delivery.yaml Bump v1.10.0 (#2299) 2023-04-20 18:21:43 +02:00
go.mod Bump v1.10.0 (#2299) 2023-04-20 18:21:43 +02:00
go.sum Bump v1.10.0 (#2299) 2023-04-20 18:21:43 +02:00
mkdocs.yml Initial commit for new 1.6 release with Postgres 13 support. (#1257) 2020-12-17 15:00:29 +01:00
run_operator_locally.sh run_operator_locally.sh: more retrying, debuggability (#2218) 2023-04-19 12:05:36 +02:00

README.md

Postgres Operator

Tests E2E Tests Coverage Status

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, PVC)
  • Database connection pooling with PGBouncer
  • Support fast in place major version upgrade. Supports global upgrade of all clusters.
  • Restore and cloning Postgres clusters on AWS, GCS and Azure
  • Additionally logical backups to S3 or GCS bucket can be configured
  • Standby cluster from S3 or GCS WAL archive
  • Configurable for non-cloud environments
  • Basic credential and user management on K8s, eases application deployments
  • Support for custom TLS certificates
  • UI to create and edit Postgres cluster manifests
  • Support for AWS EBS gp2 to gp3 migration, supporting iops and throughput configuration
  • Compatible with OpenShift

PostgreSQL features

The Postgres Operator has been developed at Zalando and is being used in production for over five years.

Supported Postgres & K8s versions

Release Postgres versions K8s versions Golang
v1.10.* 10 → 15 1.21+ 1.19.8
v1.9.0 10 → 15 1.21+ 1.18.9
v1.8.* 9.5 → 14 1.20 → 1.24 1.17.4
v1.7.1 9.5 → 14 1.20 → 1.24 1.16.9

Getting started

For a quick first impression follow the instructions of this tutorial.

Supported setups of Postgres and Applications

Features

Documentation

There is a browser-friendly version of this documentation at postgres-operator.readthedocs.io

Community

There are two places to get in touch with the community:

  1. The GitHub issue tracker
  2. The #postgres-operator slack channel