cybertec-pg-operator

module
v0.8.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 12, 2024 License: MIT

README

CYBERTEC PG Operator

CPO (CYBERTEC PG Operator) allows you to create and run PostgreSQL clusters on Kubernetes.

The operator reduces your efforts and simplifies the administration of your PostgreSQL clusters so that you can concentrate on other things.

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 if supported by the storage-system (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 PVC, AWS, GCS and Azure
  • Standby cluster
  • 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
  • Supports PostgreSQL 16, starting from 10+
  • Streaming replication cluster via Patroni
  • Integrated backup solution, automatic backups and very easy restore (Backup & PITR)
  • Rolling update procedure for adjustments to the pods and minor updates
  • Major upgrade with minimum interruption time
  • Reduction of downtime thanks to redundancy, pod anti-affinity, auto-failover and self-healing
  • Supports PostgreSQL 16, starting from 10+
  • Streaming replication cluster via Patroni
  • Point-In-Time-Recovery with pg_basebackup / pgBackRest via CYBERTEC-pg-container pg_stat_statements,
  • Incl. popular Postgres extensions such as pgaudit, pgauditlogtofile,

postgis, set_user pg_cron, timescaledb credcheck

The Operator project is being driven forward by CYBERTEC and is currently in production at various locations.

Supported Postgres & K8s versions

Release Postgres versions pgBackRest versions Patroni versions K8s versions Golang
0.8.0 13 → 17 2.53 4.0.2 1.21+ 1.21.7

Getting started

Getting started - Documentation

Tutorials.

Documentation

There is a browser-friendly version of this documentation at CPO-Documentation

Community

Coming soon

Directories

Path Synopsis
kubectl-pg module
pkg
generated/clientset/versioned
This package has the automatically generated clientset.
This package has the automatically generated clientset.
generated/clientset/versioned/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
generated/clientset/versioned/scheme
This package contains the scheme of the automatically generated clientset.
This package contains the scheme of the automatically generated clientset.
generated/clientset/versioned/typed/cpo.opensource.cybertec.at/v1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
generated/clientset/versioned/typed/cpo.opensource.cybertec.at/v1/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
generated/clientset/versioned/typed/zalando.org/v1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
generated/clientset/versioned/typed/zalando.org/v1/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
util/nicediff
Package diff implements a linewise diff algorithm.
Package diff implements a linewise diff algorithm.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL