Postgres operator creates and manages PostgreSQL clusters running in Kubernetes
Go to file
Sergey Dudoladov 3b6dc4f92d
Improve e2e tests (#1111)
* icnrease vm size

* cache deps

* switch to the absolute cache path as cdp does not support shell expansion

* do not pull non-existing image

* manually install kind

* add alias to kind

* use full kind name

* one more name change

* install kind with other tools

* add bind mounts instead of copying files

* test fetching the runner image

* build image for pierone

* bump up the client-go version to match the master

* bump up go version

* install pinned version of kind before any test run

* do not overwrite local ./manifests during test run

* update the docs

* fix kind name

* update go.* files

* fix deps

* avoid unnecessary image upload

* properly install kind

* Change network to host to make it reachable within e2e runner. May not be the right solution though.

* Small changes. Also use entrypoint vs cmd.

* Bumping spilo. Load before test.

* undo incorrect merge from the master

Co-authored-by: Sergey Dudoladov <sergey.dudoladov@zalando.de>
Co-authored-by: Jan Mußler <janm81@gmail.com>
2020-09-25 14:14:19 +02:00
.github/ISSUE_TEMPLATE Update issue templates (#1051) 2020-09-03 08:02:46 +02:00
charts Set user and group in security context (#1083) 2020-09-15 13:27:59 +02:00
cmd define ownership between operator and clusters via annotation (#802) 2020-03-17 16:34:31 +01:00
docker Connection pooler (#799) 2020-03-25 12:57:26 +01:00
docs Improve e2e tests (#1111) 2020-09-25 14:14:19 +02:00
e2e Improve e2e tests (#1111) 2020-09-25 14:14:19 +02:00
hack hack: update shebang (#755) 2019-12-10 14:54:12 +01:00
kubectl-pg omit PgVersion diff on sync (#860) 2020-03-13 11:48:19 +01:00
manifests Improve e2e tests (#1111) 2020-09-25 14:14:19 +02:00
pkg Compare Postgres pod priority on Sync (#1144) 2020-09-23 17:26:56 +02:00
ui Add kustomize support to Postgres UI. (#1086) 2020-08-26 12:06:25 +02:00
.flake8 Implement runner for e2e tests (#548) 2019-06-05 17:07:27 +02:00
.gitignore Added build and node directory to gitignore file. (#1102) 2020-08-12 15:45:00 +02:00
.golangci.yml add .golangci.yml (#422) 2018-11-27 12:00:15 +01:00
.travis.yml Compare Postgres pod priority on Sync (#1144) 2020-09-23 17:26:56 +02:00
.zappr.yaml Restore .zappr.yaml (#405) 2018-11-07 13:06:53 +01:00
CODEOWNERS Add Rafia to code owners (#588) 2019-06-14 14:56:40 +02:00
CONTRIBUTING.md Update docs for v1.2 (#609) 2019-07-11 17:19:27 +02:00
LICENSE update copyright in generated code (#779) 2020-01-02 17:34:49 +01:00
MAINTAINERS [WIP] Draft codeowners, update maintainers (#358) 2018-08-06 08:59:00 +02:00
Makefile Improve e2e tests (#1111) 2020-09-25 14:14:19 +02:00
README.md remove outdated GSOC info (#1148) 2020-09-25 09:46:50 +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 Compare Postgres pod priority on Sync (#1144) 2020-09-23 17:26:56 +02:00
go.mod Improve e2e tests (#1111) 2020-09-25 14:14:19 +02:00
go.sum Improve e2e tests (#1111) 2020-09-25 14:14:19 +02:00
mkdocs.yml use h1 tags to not render titles in sidebar (#626) 2019-07-19 12:50:39 +02:00
run_operator_locally.sh Add CRD validation (#599) 2019-11-28 12:02:05 +01:00

README.md

Postgres Operator

Build Status Coverage Status Go Report Card GoDoc golangci

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

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

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